ubk.erp.webpack 1.3.4 → 1.3.6

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.
Files changed (58) hide show
  1. package/README.md +54 -0
  2. package/dist/Layout/Communicate/Chat.d.ts +5 -0
  3. package/dist/Layout/Communicate/ChatBar.d.ts +5 -0
  4. package/dist/Layout/Communicate/Services/chatService.d.ts +11 -0
  5. package/dist/Layout/Communicate/index.d.ts +2 -0
  6. package/dist/Layout/Exam/AdmitCardSetting.d.ts +5 -0
  7. package/dist/Layout/Exam/Assessment.d.ts +5 -0
  8. package/dist/Layout/Exam/AssignMarks.d.ts +5 -0
  9. package/dist/Layout/Exam/CoScholasticAreaMarks.d.ts +5 -0
  10. package/dist/Layout/Exam/Exam.d.ts +5 -0
  11. package/dist/Layout/Exam/ExamDashboard.d.ts +5 -0
  12. package/dist/Layout/Exam/ExamDetails.d.ts +5 -0
  13. package/dist/Layout/Exam/ExamEdit.d.ts +5 -0
  14. package/dist/Layout/Exam/ExamInstruction.d.ts +5 -0
  15. package/dist/Layout/Exam/ExamLink.d.ts +5 -0
  16. package/dist/Layout/Exam/ExamList.d.ts +5 -0
  17. package/dist/Layout/Exam/ExamSetting.d.ts +5 -0
  18. package/dist/Layout/Exam/ExamType.d.ts +5 -0
  19. package/dist/Layout/Exam/MarksReport.d.ts +5 -0
  20. package/dist/Layout/Exam/Pages/AdmitCardSettingPage.d.ts +5 -0
  21. package/dist/Layout/Exam/Pages/AssessmentPage.d.ts +5 -0
  22. package/dist/Layout/Exam/Pages/AssignMarksPage.d.ts +5 -0
  23. package/dist/Layout/Exam/Pages/CoScholasticAreaMarksPage.d.ts +5 -0
  24. package/dist/Layout/Exam/Pages/ExamDashboardPage.d.ts +5 -0
  25. package/dist/Layout/Exam/Pages/ExamDetailsPage.d.ts +5 -0
  26. package/dist/Layout/Exam/Pages/ExamEditPage.d.ts +5 -0
  27. package/dist/Layout/Exam/Pages/ExamInstructionPage.d.ts +5 -0
  28. package/dist/Layout/Exam/Pages/ExamLinkPage.d.ts +5 -0
  29. package/dist/Layout/Exam/Pages/ExamListPage.d.ts +5 -0
  30. package/dist/Layout/Exam/Pages/ExamPage.d.ts +5 -0
  31. package/dist/Layout/Exam/Pages/ExamSettingPage.d.ts +5 -0
  32. package/dist/Layout/Exam/Pages/ExamTypePage.d.ts +5 -0
  33. package/dist/Layout/Exam/Pages/MarksReportPage.d.ts +5 -0
  34. package/dist/Layout/Exam/Pages/RoomManagementPage.d.ts +5 -0
  35. package/dist/Layout/Exam/Pages/StudentResultPage.d.ts +5 -0
  36. package/dist/Layout/Exam/RoomManagment.d.ts +5 -0
  37. package/dist/Layout/Exam/Services/examsService.d.ts +131 -0
  38. package/dist/Layout/Exam/StudentResult.d.ts +5 -0
  39. package/dist/Layout/Exam/hooks.d.ts +35 -0
  40. package/dist/Layout/Exam/index.d.ts +16 -0
  41. package/dist/Layout/GeneralSetting/Services/generalSettingService.d.ts +49 -0
  42. package/dist/Layout/GeneralSetting/Sms/Sms.d.ts +5 -0
  43. package/dist/Layout/GeneralSetting/Sms/index.d.ts +1 -0
  44. package/dist/Layout/GeneralSetting/SmsAlertSetting/Services/smsAlertSettingService.d.ts +12 -0
  45. package/dist/Layout/GeneralSetting/SmsAlertSetting/SmsAlertSetting.d.ts +5 -0
  46. package/dist/Layout/GeneralSetting/SmsAlertSetting/hooks.d.ts +15 -0
  47. package/dist/Layout/GeneralSetting/SmsAlertSetting/index.d.ts +1 -0
  48. package/dist/Layout/GeneralSetting/SmsSetting/Services/smsSettingService.d.ts +4 -0
  49. package/dist/Layout/GeneralSetting/SmsSetting/SmsSetting.d.ts +5 -0
  50. package/dist/Layout/GeneralSetting/SmsSetting/hooks.d.ts +3 -0
  51. package/dist/Layout/GeneralSetting/SmsSetting/index.d.ts +1 -0
  52. package/dist/Layout/GeneralSetting/index.d.ts +3 -0
  53. package/dist/Secondary/CommonFuntion.d.ts +2 -0
  54. package/dist/Secondary/TextChangeGlobal.d.ts +1 -0
  55. package/dist/index.cjs +79 -15
  56. package/dist/index.d.ts +2 -0
  57. package/dist/index.js +20420 -11454
  58. package/package.json +4 -2
package/dist/index.cjs CHANGED
@@ -1,19 +1,19 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("antd"),H=require("swr"),w=require("react-hot-toast"),i=require("react"),rt=require("swr/mutation"),ee=require("@ant-design/icons"),te=require("dayjs"),Mo=require("react-dom/server"),ea=require("react-to-print"),yl=require("react-select"),gl=require("react-barcode"),Eo=()=>e.jsxs(n.Card,{style:{borderRadius:16},children:[e.jsx(n.Typography.Title,{level:3,style:{marginTop:0},children:"UBK ERP"}),e.jsx(n.Typography.Paragraph,{style:{marginBottom:0},children:"Welcome to your webpack-powered ERP system."})]}),v=({width:t,height:a,display:s,justifyContent:r,alignItems:l,flexDirection:o,gap:d,style:c,children:g,...y})=>{const p={width:t,height:a,display:s,justifyContent:r,alignItems:l,flexDirection:o,gap:d,...c};return e.jsx("div",{style:p,...y,children:g})},pe=({variant:t,fontWeight:a,style:s,children:r,...l})=>{const o=a==="bold"?700:a==="light"?300:a;return t==="h1"?e.jsx(n.Typography.Title,{level:1,style:{fontWeight:o,...s},...l,children:r}):t==="h2"?e.jsx(n.Typography.Title,{level:2,style:{fontWeight:o,...s},...l,children:r}):t==="h3"?e.jsx(n.Typography.Title,{level:3,style:{fontWeight:o,...s},...l,children:r}):t==="h4"?e.jsx(n.Typography.Title,{level:4,style:{fontWeight:o,...s},...l,children:r}):t==="h5"?e.jsx(n.Typography.Title,{level:5,style:{fontWeight:o,...s},...l,children:r}):e.jsx(n.Typography.Text,{style:{fontWeight:o,...s},...l,children:r})};function xl({title:t="",icon:a="",path:s="",onClick:r}){const l=()=>{if(r){r(s);return}typeof window<"u"&&typeof s=="string"&&s.length>0&&window.location.assign(s)};return e.jsxs(n.Card,{hoverable:!0,onClick:l,style:{borderRadius:12,overflow:"hidden",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.05), 0 1px 3px rgba(16, 24, 40, 0.10)"},bodyStyle:{padding:0,cursor:"pointer",display:"flex",flexDirection:"column",alignItems:"stretch"},children:[e.jsx(v,{width:"100%",display:"flex",justifyContent:"center",alignItems:"center",style:{padding:"10px 12px",minHeight:80},children:e.jsx("img",{src:a,alt:"",style:{width:45,height:50,objectFit:"contain"}})}),e.jsx(v,{style:{padding:"0 12px"},children:e.jsx(n.Divider,{style:{margin:0,minWidth:0}})}),e.jsx(v,{style:{padding:"10px 10px",display:"flex",justifyContent:"center",alignItems:"center",minHeight:35},children:e.jsx(pe,{variant:"button",fontWeight:"bold",style:{fontSize:12},children:t})})]})}function bl(t,a){return function(){return t.apply(a,arguments)}}const{toString:$o}=Object.prototype,{getPrototypeOf:Xn}=Object,{iterator:Zn,toStringTag:jl}=Symbol,es=(t=>a=>{const s=$o.call(a);return t[s]||(t[s]=s.slice(8,-1).toLowerCase())})(Object.create(null)),Dt=t=>(t=t.toLowerCase(),a=>es(a)===t),ts=t=>a=>typeof a===t,{isArray:ja}=Array,ga=ts("undefined");function Ja(t){return t!==null&&!ga(t)&&t.constructor!==null&&!ga(t.constructor)&&ht(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const Sl=Dt("ArrayBuffer");function Fo(t){let a;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?a=ArrayBuffer.isView(t):a=t&&t.buffer&&Sl(t.buffer),a}const Uo=ts("string"),ht=ts("function"),vl=ts("number"),Qa=t=>t!==null&&typeof t=="object",No=t=>t===!0||t===!1,On=t=>{if(es(t)!=="object")return!1;const a=Xn(t);return(a===null||a===Object.prototype||Object.getPrototypeOf(a)===null)&&!(jl in t)&&!(Zn in t)},Bo=t=>{if(!Qa(t)||Ja(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},Lo=Dt("Date"),qo=Dt("File"),zo=t=>!!(t&&typeof t.uri<"u"),Yo=t=>t&&typeof t.getParts<"u",Vo=Dt("Blob"),Wo=Dt("FileList"),Ho=t=>Qa(t)&&ht(t.pipe);function Ko(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const fr=Ko(),yr=typeof fr.FormData<"u"?fr.FormData:void 0,Go=t=>{if(!t)return!1;if(yr&&t instanceof yr)return!0;const a=Xn(t);if(!a||a===Object.prototype||!ht(t.append))return!1;const s=es(t);return s==="formdata"||s==="object"&&ht(t.toString)&&t.toString()==="[object FormData]"},Jo=Dt("URLSearchParams"),[Qo,Xo,Zo,ed]=["ReadableStream","Request","Response","Headers"].map(Dt),td=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Xa(t,a,{allOwnKeys:s=!1}={}){if(t===null||typeof t>"u")return;let r,l;if(typeof t!="object"&&(t=[t]),ja(t))for(r=0,l=t.length;r<l;r++)a.call(null,t[r],r,t);else{if(Ja(t))return;const o=s?Object.getOwnPropertyNames(t):Object.keys(t),d=o.length;let c;for(r=0;r<d;r++)c=o[r],a.call(null,t[c],c,t)}}function wl(t,a){if(Ja(t))return null;a=a.toLowerCase();const s=Object.keys(t);let r=s.length,l;for(;r-- >0;)if(l=s[r],a===l.toLowerCase())return l;return null}const Gt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,_l=t=>!ga(t)&&t!==Gt;function Ys(){const{caseless:t,skipUndefined:a}=_l(this)&&this||{},s={},r=(l,o)=>{if(o==="__proto__"||o==="constructor"||o==="prototype")return;const d=t&&wl(s,o)||o;On(s[d])&&On(l)?s[d]=Ys(s[d],l):On(l)?s[d]=Ys({},l):ja(l)?s[d]=l.slice():(!a||!ga(l))&&(s[d]=l)};for(let l=0,o=arguments.length;l<o;l++)arguments[l]&&Xa(arguments[l],r);return s}const ad=(t,a,s,{allOwnKeys:r}={})=>(Xa(a,(l,o)=>{s&&ht(l)?Object.defineProperty(t,o,{value:bl(l,s),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),t),nd=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),sd=(t,a,s,r)=>{t.prototype=Object.create(a.prototype,r),Object.defineProperty(t.prototype,"constructor",{value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{value:a.prototype}),s&&Object.assign(t.prototype,s)},rd=(t,a,s,r)=>{let l,o,d;const c={};if(a=a||{},t==null)return a;do{for(l=Object.getOwnPropertyNames(t),o=l.length;o-- >0;)d=l[o],(!r||r(d,t,a))&&!c[d]&&(a[d]=t[d],c[d]=!0);t=s!==!1&&Xn(t)}while(t&&(!s||s(t,a))&&t!==Object.prototype);return a},id=(t,a,s)=>{t=String(t),(s===void 0||s>t.length)&&(s=t.length),s-=a.length;const r=t.indexOf(a,s);return r!==-1&&r===s},ld=t=>{if(!t)return null;if(ja(t))return t;let a=t.length;if(!vl(a))return null;const s=new Array(a);for(;a-- >0;)s[a]=t[a];return s},od=(t=>a=>t&&a instanceof t)(typeof Uint8Array<"u"&&Xn(Uint8Array)),dd=(t,a)=>{const r=(t&&t[Zn]).call(t);let l;for(;(l=r.next())&&!l.done;){const o=l.value;a.call(t,o[0],o[1])}},cd=(t,a)=>{let s;const r=[];for(;(s=t.exec(a))!==null;)r.push(s);return r},ud=Dt("HTMLFormElement"),pd=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(s,r,l){return r.toUpperCase()+l}),gr=(({hasOwnProperty:t})=>(a,s)=>t.call(a,s))(Object.prototype),md=Dt("RegExp"),Cl=(t,a)=>{const s=Object.getOwnPropertyDescriptors(t),r={};Xa(s,(l,o)=>{let d;(d=a(l,o,t))!==!1&&(r[o]=d||l)}),Object.defineProperties(t,r)},hd=t=>{Cl(t,(a,s)=>{if(ht(t)&&["arguments","caller","callee"].indexOf(s)!==-1)return!1;const r=t[s];if(ht(r)){if(a.enumerable=!1,"writable"in a){a.writable=!1;return}a.set||(a.set=()=>{throw Error("Can not rewrite read-only method '"+s+"'")})}})},fd=(t,a)=>{const s={},r=l=>{l.forEach(o=>{s[o]=!0})};return ja(t)?r(t):r(String(t).split(a)),s},yd=()=>{},gd=(t,a)=>t!=null&&Number.isFinite(t=+t)?t:a;function xd(t){return!!(t&&ht(t.append)&&t[jl]==="FormData"&&t[Zn])}const bd=t=>{const a=new Array(10),s=(r,l)=>{if(Qa(r)){if(a.indexOf(r)>=0)return;if(Ja(r))return r;if(!("toJSON"in r)){a[l]=r;const o=ja(r)?[]:{};return Xa(r,(d,c)=>{const g=s(d,l+1);!ga(g)&&(o[c]=g)}),a[l]=void 0,o}}return r};return s(t,0)},jd=Dt("AsyncFunction"),Sd=t=>t&&(Qa(t)||ht(t))&&ht(t.then)&&ht(t.catch),Al=((t,a)=>t?setImmediate:a?((s,r)=>(Gt.addEventListener("message",({source:l,data:o})=>{l===Gt&&o===s&&r.length&&r.shift()()},!1),l=>{r.push(l),Gt.postMessage(s,"*")}))(`axios@${Math.random()}`,[]):s=>setTimeout(s))(typeof setImmediate=="function",ht(Gt.postMessage)),vd=typeof queueMicrotask<"u"?queueMicrotask.bind(Gt):typeof process<"u"&&process.nextTick||Al,wd=t=>t!=null&&ht(t[Zn]),Z={isArray:ja,isArrayBuffer:Sl,isBuffer:Ja,isFormData:Go,isArrayBufferView:Fo,isString:Uo,isNumber:vl,isBoolean:No,isObject:Qa,isPlainObject:On,isEmptyObject:Bo,isReadableStream:Qo,isRequest:Xo,isResponse:Zo,isHeaders:ed,isUndefined:ga,isDate:Lo,isFile:qo,isReactNativeBlob:zo,isReactNative:Yo,isBlob:Vo,isRegExp:md,isFunction:ht,isStream:Ho,isURLSearchParams:Jo,isTypedArray:od,isFileList:Wo,forEach:Xa,merge:Ys,extend:ad,trim:td,stripBOM:nd,inherits:sd,toFlatObject:rd,kindOf:es,kindOfTest:Dt,endsWith:id,toArray:ld,forEachEntry:dd,matchAll:cd,isHTMLForm:ud,hasOwnProperty:gr,hasOwnProp:gr,reduceDescriptors:Cl,freezeMethods:hd,toObjectSet:fd,toCamelCase:pd,noop:yd,toFiniteNumber:gd,findKey:wl,global:Gt,isContextDefined:_l,isSpecCompliantForm:xd,toJSONObject:bd,isAsyncFn:jd,isThenable:Sd,setImmediate:Al,asap:vd,isIterable:wd};let Te=class Dl extends Error{static from(a,s,r,l,o,d){const c=new Dl(a.message,s||a.code,r,l,o);return c.cause=a,c.name=a.name,a.status!=null&&c.status==null&&(c.status=a.status),d&&Object.assign(c,d),c}constructor(a,s,r,l,o){super(a),Object.defineProperty(this,"message",{value:a,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,s&&(this.code=s),r&&(this.config=r),l&&(this.request=l),o&&(this.response=o,this.status=o.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Z.toJSONObject(this.config),code:this.code,status:this.status}}};Te.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";Te.ERR_BAD_OPTION="ERR_BAD_OPTION";Te.ECONNABORTED="ECONNABORTED";Te.ETIMEDOUT="ETIMEDOUT";Te.ERR_NETWORK="ERR_NETWORK";Te.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";Te.ERR_DEPRECATED="ERR_DEPRECATED";Te.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";Te.ERR_BAD_REQUEST="ERR_BAD_REQUEST";Te.ERR_CANCELED="ERR_CANCELED";Te.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";Te.ERR_INVALID_URL="ERR_INVALID_URL";Te.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const _d=null;function Vs(t){return Z.isPlainObject(t)||Z.isArray(t)}function Tl(t){return Z.endsWith(t,"[]")?t.slice(0,-2):t}function fs(t,a,s){return t?t.concat(a).map(function(l,o){return l=Tl(l),!s&&o?"["+l+"]":l}).join(s?".":""):a}function Cd(t){return Z.isArray(t)&&!t.some(Vs)}const Ad=Z.toFlatObject(Z,{},null,function(a){return/^is[A-Z]/.test(a)});function as(t,a,s){if(!Z.isObject(t))throw new TypeError("target must be an object");a=a||new FormData,s=Z.toFlatObject(s,{metaTokens:!0,dots:!1,indexes:!1},!1,function(x,R){return!Z.isUndefined(R[x])});const r=s.metaTokens,l=s.visitor||m,o=s.dots,d=s.indexes,c=s.Blob||typeof Blob<"u"&&Blob,g=s.maxDepth===void 0?100:s.maxDepth,y=c&&Z.isSpecCompliantForm(a);if(!Z.isFunction(l))throw new TypeError("visitor must be a function");function p(f){if(f===null)return"";if(Z.isDate(f))return f.toISOString();if(Z.isBoolean(f))return f.toString();if(!y&&Z.isBlob(f))throw new Te("Blob is not supported. Use a Buffer instead.");return Z.isArrayBuffer(f)||Z.isTypedArray(f)?y&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function m(f,x,R){let k=f;if(Z.isReactNative(a)&&Z.isReactNativeBlob(f))return a.append(fs(R,x,o),p(f)),!1;if(f&&!R&&typeof f=="object"){if(Z.endsWith(x,"{}"))x=r?x:x.slice(0,-2),f=JSON.stringify(f);else if(Z.isArray(f)&&Cd(f)||(Z.isFileList(f)||Z.endsWith(x,"[]"))&&(k=Z.toArray(f)))return x=Tl(x),k.forEach(function(D,_){!(Z.isUndefined(D)||D===null)&&a.append(d===!0?fs([x],_,o):d===null?x:x+"[]",p(D))}),!1}return Vs(f)?!0:(a.append(fs(R,x,o),p(f)),!1)}const A=[],C=Object.assign(Ad,{defaultVisitor:m,convertValue:p,isVisitable:Vs});function b(f,x,R=0){if(!Z.isUndefined(f)){if(R>g)throw new Te("Object is too deeply nested ("+R+" levels). Max depth: "+g,Te.ERR_FORM_DATA_DEPTH_EXCEEDED);if(A.indexOf(f)!==-1)throw Error("Circular reference detected in "+x.join("."));A.push(f),Z.forEach(f,function(O,D){(!(Z.isUndefined(O)||O===null)&&l.call(a,O,Z.isString(D)?D.trim():D,x,C))===!0&&b(O,x?x.concat(D):[D],R+1)}),A.pop()}}if(!Z.isObject(t))throw new TypeError("data must be an object");return b(t),a}function xr(t){const a={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(t).replace(/[!'()~]|%20/g,function(r){return a[r]})}function Xs(t,a){this._pairs=[],t&&as(t,this,a)}const Rl=Xs.prototype;Rl.append=function(a,s){this._pairs.push([a,s])};Rl.toString=function(a){const s=a?function(r){return a.call(this,r,xr)}:xr;return this._pairs.map(function(l){return s(l[0])+"="+s(l[1])},"").join("&")};function Dd(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Il(t,a,s){if(!a)return t;const r=s&&s.encode||Dd,l=Z.isFunction(s)?{serialize:s}:s,o=l&&l.serialize;let d;if(o?d=o(a,l):d=Z.isURLSearchParams(a)?a.toString():new Xs(a,l).toString(r),d){const c=t.indexOf("#");c!==-1&&(t=t.slice(0,c)),t+=(t.indexOf("?")===-1?"?":"&")+d}return t}class br{constructor(){this.handlers=[]}use(a,s,r){return this.handlers.push({fulfilled:a,rejected:s,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(a){this.handlers[a]&&(this.handlers[a]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(a){Z.forEach(this.handlers,function(r){r!==null&&a(r)})}}const Zs={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},Td=typeof URLSearchParams<"u"?URLSearchParams:Xs,Rd=typeof FormData<"u"?FormData:null,Id=typeof Blob<"u"?Blob:null,kd={isBrowser:!0,classes:{URLSearchParams:Td,FormData:Rd,Blob:Id},protocols:["http","https","file","blob","url","data"]},er=typeof window<"u"&&typeof document<"u",Ws=typeof navigator=="object"&&navigator||void 0,Pd=er&&(!Ws||["ReactNative","NativeScript","NS"].indexOf(Ws.product)<0),Od=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Md=er&&window.location.href||"http://localhost",Ed=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:er,hasStandardBrowserEnv:Pd,hasStandardBrowserWebWorkerEnv:Od,navigator:Ws,origin:Md},Symbol.toStringTag,{value:"Module"})),it={...Ed,...kd};function $d(t,a){return as(t,new it.classes.URLSearchParams,{visitor:function(s,r,l,o){return it.isNode&&Z.isBuffer(s)?(this.append(r,s.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...a})}function Fd(t){return Z.matchAll(/\w+|\[(\w*)]/g,t).map(a=>a[0]==="[]"?"":a[1]||a[0])}function Ud(t){const a={},s=Object.keys(t);let r;const l=s.length;let o;for(r=0;r<l;r++)o=s[r],a[o]=t[o];return a}function kl(t){function a(s,r,l,o){let d=s[o++];if(d==="__proto__")return!0;const c=Number.isFinite(+d),g=o>=s.length;return d=!d&&Z.isArray(l)?l.length:d,g?(Z.hasOwnProp(l,d)?l[d]=Z.isArray(l[d])?l[d].concat(r):[l[d],r]:l[d]=r,!c):((!l[d]||!Z.isObject(l[d]))&&(l[d]=[]),a(s,r,l[d],o)&&Z.isArray(l[d])&&(l[d]=Ud(l[d])),!c)}if(Z.isFormData(t)&&Z.isFunction(t.entries)){const s={};return Z.forEachEntry(t,(r,l)=>{a(Fd(r),l,s,0)}),s}return null}const na=(t,a)=>t!=null&&Z.hasOwnProp(t,a)?t[a]:void 0;function Nd(t,a,s){if(Z.isString(t))try{return(a||JSON.parse)(t),Z.trim(t)}catch(r){if(r.name!=="SyntaxError")throw r}return(s||JSON.stringify)(t)}const Za={transitional:Zs,adapter:["xhr","http","fetch"],transformRequest:[function(a,s){const r=s.getContentType()||"",l=r.indexOf("application/json")>-1,o=Z.isObject(a);if(o&&Z.isHTMLForm(a)&&(a=new FormData(a)),Z.isFormData(a))return l?JSON.stringify(kl(a)):a;if(Z.isArrayBuffer(a)||Z.isBuffer(a)||Z.isStream(a)||Z.isFile(a)||Z.isBlob(a)||Z.isReadableStream(a))return a;if(Z.isArrayBufferView(a))return a.buffer;if(Z.isURLSearchParams(a))return s.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),a.toString();let c;if(o){const g=na(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return $d(a,g).toString();if((c=Z.isFileList(a))||r.indexOf("multipart/form-data")>-1){const y=na(this,"env"),p=y&&y.FormData;return as(c?{"files[]":a}:a,p&&new p,g)}}return o||l?(s.setContentType("application/json",!1),Nd(a)):a}],transformResponse:[function(a){const s=na(this,"transitional")||Za.transitional,r=s&&s.forcedJSONParsing,l=na(this,"responseType"),o=l==="json";if(Z.isResponse(a)||Z.isReadableStream(a))return a;if(a&&Z.isString(a)&&(r&&!l||o)){const c=!(s&&s.silentJSONParsing)&&o;try{return JSON.parse(a,na(this,"parseReviver"))}catch(g){if(c)throw g.name==="SyntaxError"?Te.from(g,Te.ERR_BAD_RESPONSE,this,null,na(this,"response")):g}}return a}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:it.classes.FormData,Blob:it.classes.Blob},validateStatus:function(a){return a>=200&&a<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Z.forEach(["delete","get","head","post","put","patch"],t=>{Za.headers[t]={}});const Bd=Z.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Ld=t=>{const a={};let s,r,l;return t&&t.split(`
2
- `).forEach(function(d){l=d.indexOf(":"),s=d.substring(0,l).trim().toLowerCase(),r=d.substring(l+1).trim(),!(!s||a[s]&&Bd[s])&&(s==="set-cookie"?a[s]?a[s].push(r):a[s]=[r]:a[s]=a[s]?a[s]+", "+r:r)}),a},jr=Symbol("internals"),qd=/[^\x09\x20-\x7E\x80-\xFF]/g;function zd(t){let a=0,s=t.length;for(;a<s;){const r=t.charCodeAt(a);if(r!==9&&r!==32)break;a+=1}for(;s>a;){const r=t.charCodeAt(s-1);if(r!==9&&r!==32)break;s-=1}return a===0&&s===t.length?t:t.slice(a,s)}function Ca(t){return t&&String(t).trim().toLowerCase()}function Yd(t){return zd(t.replace(qd,""))}function Mn(t){return t===!1||t==null?t:Z.isArray(t)?t.map(Mn):Yd(String(t))}function Vd(t){const a=Object.create(null),s=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=s.exec(t);)a[r[1]]=r[2];return a}const Wd=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function ys(t,a,s,r,l){if(Z.isFunction(r))return r.call(this,a,s);if(l&&(a=s),!!Z.isString(a)){if(Z.isString(r))return a.indexOf(r)!==-1;if(Z.isRegExp(r))return r.test(a)}}function Hd(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(a,s,r)=>s.toUpperCase()+r)}function Kd(t,a){const s=Z.toCamelCase(" "+a);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+s,{value:function(l,o,d){return this[r].call(this,a,l,o,d)},configurable:!0})})}let ft=class{constructor(a){a&&this.set(a)}set(a,s,r){const l=this;function o(c,g,y){const p=Ca(g);if(!p)throw new Error("header name must be a non-empty string");const m=Z.findKey(l,p);(!m||l[m]===void 0||y===!0||y===void 0&&l[m]!==!1)&&(l[m||g]=Mn(c))}const d=(c,g)=>Z.forEach(c,(y,p)=>o(y,p,g));if(Z.isPlainObject(a)||a instanceof this.constructor)d(a,s);else if(Z.isString(a)&&(a=a.trim())&&!Wd(a))d(Ld(a),s);else if(Z.isObject(a)&&Z.isIterable(a)){let c={},g,y;for(const p of a){if(!Z.isArray(p))throw TypeError("Object iterator must return a key-value pair");c[y=p[0]]=(g=c[y])?Z.isArray(g)?[...g,p[1]]:[g,p[1]]:p[1]}d(c,s)}else a!=null&&o(s,a,r);return this}get(a,s){if(a=Ca(a),a){const r=Z.findKey(this,a);if(r){const l=this[r];if(!s)return l;if(s===!0)return Vd(l);if(Z.isFunction(s))return s.call(this,l,r);if(Z.isRegExp(s))return s.exec(l);throw new TypeError("parser must be boolean|regexp|function")}}}has(a,s){if(a=Ca(a),a){const r=Z.findKey(this,a);return!!(r&&this[r]!==void 0&&(!s||ys(this,this[r],r,s)))}return!1}delete(a,s){const r=this;let l=!1;function o(d){if(d=Ca(d),d){const c=Z.findKey(r,d);c&&(!s||ys(r,r[c],c,s))&&(delete r[c],l=!0)}}return Z.isArray(a)?a.forEach(o):o(a),l}clear(a){const s=Object.keys(this);let r=s.length,l=!1;for(;r--;){const o=s[r];(!a||ys(this,this[o],o,a,!0))&&(delete this[o],l=!0)}return l}normalize(a){const s=this,r={};return Z.forEach(this,(l,o)=>{const d=Z.findKey(r,o);if(d){s[d]=Mn(l),delete s[o];return}const c=a?Hd(o):String(o).trim();c!==o&&delete s[o],s[c]=Mn(l),r[c]=!0}),this}concat(...a){return this.constructor.concat(this,...a)}toJSON(a){const s=Object.create(null);return Z.forEach(this,(r,l)=>{r!=null&&r!==!1&&(s[l]=a&&Z.isArray(r)?r.join(", "):r)}),s}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([a,s])=>a+": "+s).join(`
3
- `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(a){return a instanceof this?a:new this(a)}static concat(a,...s){const r=new this(a);return s.forEach(l=>r.set(l)),r}static accessor(a){const r=(this[jr]=this[jr]={accessors:{}}).accessors,l=this.prototype;function o(d){const c=Ca(d);r[c]||(Kd(l,d),r[c]=!0)}return Z.isArray(a)?a.forEach(o):o(a),this}};ft.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Z.reduceDescriptors(ft.prototype,({value:t},a)=>{let s=a[0].toUpperCase()+a.slice(1);return{get:()=>t,set(r){this[s]=r}}});Z.freezeMethods(ft);function gs(t,a){const s=this||Za,r=a||s,l=ft.from(r.headers);let o=r.data;return Z.forEach(t,function(c){o=c.call(s,o,l.normalize(),a?a.status:void 0)}),l.normalize(),o}function Pl(t){return!!(t&&t.__CANCEL__)}let en=class extends Te{constructor(a,s,r){super(a??"canceled",Te.ERR_CANCELED,s,r),this.name="CanceledError",this.__CANCEL__=!0}};function Ol(t,a,s){const r=s.config.validateStatus;!s.status||!r||r(s.status)?t(s):a(new Te("Request failed with status code "+s.status,[Te.ERR_BAD_REQUEST,Te.ERR_BAD_RESPONSE][Math.floor(s.status/100)-4],s.config,s.request,s))}function Gd(t){const a=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return a&&a[1]||""}function Jd(t,a){t=t||10;const s=new Array(t),r=new Array(t);let l=0,o=0,d;return a=a!==void 0?a:1e3,function(g){const y=Date.now(),p=r[o];d||(d=y),s[l]=g,r[l]=y;let m=o,A=0;for(;m!==l;)A+=s[m++],m=m%t;if(l=(l+1)%t,l===o&&(o=(o+1)%t),y-d<a)return;const C=p&&y-p;return C?Math.round(A*1e3/C):void 0}}function Qd(t,a){let s=0,r=1e3/a,l,o;const d=(y,p=Date.now())=>{s=p,l=null,o&&(clearTimeout(o),o=null),t(...y)};return[(...y)=>{const p=Date.now(),m=p-s;m>=r?d(y,p):(l=y,o||(o=setTimeout(()=>{o=null,d(l)},r-m)))},()=>l&&d(l)]}const Qn=(t,a,s=3)=>{let r=0;const l=Jd(50,250);return Qd(o=>{const d=o.loaded,c=o.lengthComputable?o.total:void 0,g=c!=null?Math.min(d,c):d,y=Math.max(0,g-r),p=l(y);r=Math.max(r,g);const m={loaded:g,total:c,progress:c?g/c:void 0,bytes:y,rate:p||void 0,estimated:p&&c?(c-g)/p:void 0,event:o,lengthComputable:c!=null,[a?"download":"upload"]:!0};t(m)},s)},Sr=(t,a)=>{const s=t!=null;return[r=>a[0]({lengthComputable:s,total:t,loaded:r}),a[1]]},vr=t=>(...a)=>Z.asap(()=>t(...a)),Xd=it.hasStandardBrowserEnv?((t,a)=>s=>(s=new URL(s,it.origin),t.protocol===s.protocol&&t.host===s.host&&(a||t.port===s.port)))(new URL(it.origin),it.navigator&&/(msie|trident)/i.test(it.navigator.userAgent)):()=>!0,Zd=it.hasStandardBrowserEnv?{write(t,a,s,r,l,o,d){if(typeof document>"u")return;const c=[`${t}=${encodeURIComponent(a)}`];Z.isNumber(s)&&c.push(`expires=${new Date(s).toUTCString()}`),Z.isString(r)&&c.push(`path=${r}`),Z.isString(l)&&c.push(`domain=${l}`),o===!0&&c.push("secure"),Z.isString(d)&&c.push(`SameSite=${d}`),document.cookie=c.join("; ")},read(t){if(typeof document>"u")return null;const a=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return a?decodeURIComponent(a[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function ec(t){return typeof t!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function tc(t,a){return a?t.replace(/\/?\/$/,"")+"/"+a.replace(/^\/+/,""):t}function Ml(t,a,s){let r=!ec(a);return t&&(r||s===!1)?tc(t,a):a}const wr=t=>t instanceof ft?{...t}:t;function Zt(t,a){a=a||{};const s=Object.create(null);Object.defineProperty(s,"hasOwnProperty",{value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(y,p,m,A){return Z.isPlainObject(y)&&Z.isPlainObject(p)?Z.merge.call({caseless:A},y,p):Z.isPlainObject(p)?Z.merge({},p):Z.isArray(p)?p.slice():p}function l(y,p,m,A){if(Z.isUndefined(p)){if(!Z.isUndefined(y))return r(void 0,y,m,A)}else return r(y,p,m,A)}function o(y,p){if(!Z.isUndefined(p))return r(void 0,p)}function d(y,p){if(Z.isUndefined(p)){if(!Z.isUndefined(y))return r(void 0,y)}else return r(void 0,p)}function c(y,p,m){if(Z.hasOwnProp(a,m))return r(y,p);if(Z.hasOwnProp(t,m))return r(void 0,y)}const g={url:o,method:o,data:o,baseURL:d,transformRequest:d,transformResponse:d,paramsSerializer:d,timeout:d,timeoutMessage:d,withCredentials:d,withXSRFToken:d,adapter:d,responseType:d,xsrfCookieName:d,xsrfHeaderName:d,onUploadProgress:d,onDownloadProgress:d,decompress:d,maxContentLength:d,maxBodyLength:d,beforeRedirect:d,transport:d,httpAgent:d,httpsAgent:d,cancelToken:d,socketPath:d,allowedSocketPaths:d,responseEncoding:d,validateStatus:c,headers:(y,p,m)=>l(wr(y),wr(p),m,!0)};return Z.forEach(Object.keys({...t,...a}),function(p){if(p==="__proto__"||p==="constructor"||p==="prototype")return;const m=Z.hasOwnProp(g,p)?g[p]:l,A=Z.hasOwnProp(t,p)?t[p]:void 0,C=Z.hasOwnProp(a,p)?a[p]:void 0,b=m(A,C,p);Z.isUndefined(b)&&m!==c||(s[p]=b)}),s}const El=t=>{const a=Zt({},t),s=A=>Z.hasOwnProp(a,A)?a[A]:void 0,r=s("data");let l=s("withXSRFToken");const o=s("xsrfHeaderName"),d=s("xsrfCookieName");let c=s("headers");const g=s("auth"),y=s("baseURL"),p=s("allowAbsoluteUrls"),m=s("url");if(a.headers=c=ft.from(c),a.url=Il(Ml(y,m,p),t.params,t.paramsSerializer),g&&c.set("Authorization","Basic "+btoa((g.username||"")+":"+(g.password?unescape(encodeURIComponent(g.password)):""))),Z.isFormData(r)){if(it.hasStandardBrowserEnv||it.hasStandardBrowserWebWorkerEnv)c.setContentType(void 0);else if(Z.isFunction(r.getHeaders)){const A=r.getHeaders(),C=["content-type","content-length"];Object.entries(A).forEach(([b,f])=>{C.includes(b.toLowerCase())&&c.set(b,f)})}}if(it.hasStandardBrowserEnv&&(Z.isFunction(l)&&(l=l(a)),l===!0||l==null&&Xd(a.url))){const C=o&&d&&Zd.read(d);C&&c.set(o,C)}return a},ac=typeof XMLHttpRequest<"u",nc=ac&&function(t){return new Promise(function(s,r){const l=El(t);let o=l.data;const d=ft.from(l.headers).normalize();let{responseType:c,onUploadProgress:g,onDownloadProgress:y}=l,p,m,A,C,b;function f(){C&&C(),b&&b(),l.cancelToken&&l.cancelToken.unsubscribe(p),l.signal&&l.signal.removeEventListener("abort",p)}let x=new XMLHttpRequest;x.open(l.method.toUpperCase(),l.url,!0),x.timeout=l.timeout;function R(){if(!x)return;const O=ft.from("getAllResponseHeaders"in x&&x.getAllResponseHeaders()),_={data:!c||c==="text"||c==="json"?x.responseText:x.response,status:x.status,statusText:x.statusText,headers:O,config:t,request:x};Ol(function(h){s(h),f()},function(h){r(h),f()},_),x=null}"onloadend"in x?x.onloadend=R:x.onreadystatechange=function(){!x||x.readyState!==4||x.status===0&&!(x.responseURL&&x.responseURL.indexOf("file:")===0)||setTimeout(R)},x.onabort=function(){x&&(r(new Te("Request aborted",Te.ECONNABORTED,t,x)),x=null)},x.onerror=function(D){const _=D&&D.message?D.message:"Network Error",u=new Te(_,Te.ERR_NETWORK,t,x);u.event=D||null,r(u),x=null},x.ontimeout=function(){let D=l.timeout?"timeout of "+l.timeout+"ms exceeded":"timeout exceeded";const _=l.transitional||Zs;l.timeoutErrorMessage&&(D=l.timeoutErrorMessage),r(new Te(D,_.clarifyTimeoutError?Te.ETIMEDOUT:Te.ECONNABORTED,t,x)),x=null},o===void 0&&d.setContentType(null),"setRequestHeader"in x&&Z.forEach(d.toJSON(),function(D,_){x.setRequestHeader(_,D)}),Z.isUndefined(l.withCredentials)||(x.withCredentials=!!l.withCredentials),c&&c!=="json"&&(x.responseType=l.responseType),y&&([A,b]=Qn(y,!0),x.addEventListener("progress",A)),g&&x.upload&&([m,C]=Qn(g),x.upload.addEventListener("progress",m),x.upload.addEventListener("loadend",C)),(l.cancelToken||l.signal)&&(p=O=>{x&&(r(!O||O.type?new en(null,t,x):O),x.abort(),x=null)},l.cancelToken&&l.cancelToken.subscribe(p),l.signal&&(l.signal.aborted?p():l.signal.addEventListener("abort",p)));const k=Gd(l.url);if(k&&it.protocols.indexOf(k)===-1){r(new Te("Unsupported protocol "+k+":",Te.ERR_BAD_REQUEST,t));return}x.send(o||null)})},sc=(t,a)=>{const{length:s}=t=t?t.filter(Boolean):[];if(a||s){let r=new AbortController,l;const o=function(y){if(!l){l=!0,c();const p=y instanceof Error?y:this.reason;r.abort(p instanceof Te?p:new en(p instanceof Error?p.message:p))}};let d=a&&setTimeout(()=>{d=null,o(new Te(`timeout of ${a}ms exceeded`,Te.ETIMEDOUT))},a);const c=()=>{t&&(d&&clearTimeout(d),d=null,t.forEach(y=>{y.unsubscribe?y.unsubscribe(o):y.removeEventListener("abort",o)}),t=null)};t.forEach(y=>y.addEventListener("abort",o));const{signal:g}=r;return g.unsubscribe=()=>Z.asap(c),g}},rc=function*(t,a){let s=t.byteLength;if(s<a){yield t;return}let r=0,l;for(;r<s;)l=r+a,yield t.slice(r,l),r=l},ic=async function*(t,a){for await(const s of lc(t))yield*rc(s,a)},lc=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}const a=t.getReader();try{for(;;){const{done:s,value:r}=await a.read();if(s)break;yield r}}finally{await a.cancel()}},_r=(t,a,s,r)=>{const l=ic(t,a);let o=0,d,c=g=>{d||(d=!0,r&&r(g))};return new ReadableStream({async pull(g){try{const{done:y,value:p}=await l.next();if(y){c(),g.close();return}let m=p.byteLength;if(s){let A=o+=m;s(A)}g.enqueue(new Uint8Array(p))}catch(y){throw c(y),y}},cancel(g){return c(g),l.return()}},{highWaterMark:2})},Cr=64*1024,{isFunction:fn}=Z,oc=(({Request:t,Response:a})=>({Request:t,Response:a}))(Z.global),{ReadableStream:Ar,TextEncoder:Dr}=Z.global,Tr=(t,...a)=>{try{return!!t(...a)}catch{return!1}},dc=t=>{t=Z.merge.call({skipUndefined:!0},oc,t);const{fetch:a,Request:s,Response:r}=t,l=a?fn(a):typeof fetch=="function",o=fn(s),d=fn(r);if(!l)return!1;const c=l&&fn(Ar),g=l&&(typeof Dr=="function"?(b=>f=>b.encode(f))(new Dr):async b=>new Uint8Array(await new s(b).arrayBuffer())),y=o&&c&&Tr(()=>{let b=!1;const f=new s(it.origin,{body:new Ar,method:"POST",get duplex(){return b=!0,"half"}}),x=f.headers.has("Content-Type");return f.body!=null&&f.body.cancel(),b&&!x}),p=d&&c&&Tr(()=>Z.isReadableStream(new r("").body)),m={stream:p&&(b=>b.body)};l&&["text","arrayBuffer","blob","formData","stream"].forEach(b=>{!m[b]&&(m[b]=(f,x)=>{let R=f&&f[b];if(R)return R.call(f);throw new Te(`Response type '${b}' is not supported`,Te.ERR_NOT_SUPPORT,x)})});const A=async b=>{if(b==null)return 0;if(Z.isBlob(b))return b.size;if(Z.isSpecCompliantForm(b))return(await new s(it.origin,{method:"POST",body:b}).arrayBuffer()).byteLength;if(Z.isArrayBufferView(b)||Z.isArrayBuffer(b))return b.byteLength;if(Z.isURLSearchParams(b)&&(b=b+""),Z.isString(b))return(await g(b)).byteLength},C=async(b,f)=>{const x=Z.toFiniteNumber(b.getContentLength());return x??A(f)};return async b=>{let{url:f,method:x,data:R,signal:k,cancelToken:O,timeout:D,onDownloadProgress:_,onUploadProgress:u,responseType:h,headers:S,withCredentials:E="same-origin",fetchOptions:F}=El(b),q=a||fetch;h=h?(h+"").toLowerCase():"text";let T=sc([k,O&&O.toAbortSignal()],D),U=null;const j=T&&T.unsubscribe&&(()=>{T.unsubscribe()});let P;try{if(u&&y&&x!=="get"&&x!=="head"&&(P=await C(S,R))!==0){let $=new s(f,{method:"POST",body:R,duplex:"half"}),M;if(Z.isFormData(R)&&(M=$.headers.get("content-type"))&&S.setContentType(M),$.body){const[L,Y]=Sr(P,Qn(vr(u)));R=_r($.body,Cr,L,Y)}}Z.isString(E)||(E=E?"include":"omit");const I=o&&"credentials"in s.prototype;if(Z.isFormData(R)){const $=S.getContentType();$&&/^multipart\/form-data/i.test($)&&!/boundary=/i.test($)&&S.delete("content-type")}const N={...F,signal:T,method:x.toUpperCase(),headers:S.normalize().toJSON(),body:R,duplex:"half",credentials:I?E:void 0};U=o&&new s(f,N);let V=await(o?q(U,F):q(f,N));const W=p&&(h==="stream"||h==="response");if(p&&(_||W&&j)){const $={};["status","statusText","headers"].forEach(se=>{$[se]=V[se]});const M=Z.toFiniteNumber(V.headers.get("content-length")),[L,Y]=_&&Sr(M,Qn(vr(_),!0))||[];V=new r(_r(V.body,Cr,L,()=>{Y&&Y(),j&&j()}),$)}h=h||"text";let B=await m[Z.findKey(m,h)||"text"](V,b);return!W&&j&&j(),await new Promise(($,M)=>{Ol($,M,{data:B,headers:ft.from(V.headers),status:V.status,statusText:V.statusText,config:b,request:U})})}catch(I){throw j&&j(),I&&I.name==="TypeError"&&/Load failed|fetch/i.test(I.message)?Object.assign(new Te("Network Error",Te.ERR_NETWORK,b,U,I&&I.response),{cause:I.cause||I}):Te.from(I,I&&I.code,b,U,I&&I.response)}}},cc=new Map,$l=t=>{let a=t&&t.env||{};const{fetch:s,Request:r,Response:l}=a,o=[r,l,s];let d=o.length,c=d,g,y,p=cc;for(;c--;)g=o[c],y=p.get(g),y===void 0&&p.set(g,y=c?new Map:dc(a)),p=y;return y};$l();const tr={http:_d,xhr:nc,fetch:{get:$l}};Z.forEach(tr,(t,a)=>{if(t){try{Object.defineProperty(t,"name",{value:a})}catch{}Object.defineProperty(t,"adapterName",{value:a})}});const Rr=t=>`- ${t}`,uc=t=>Z.isFunction(t)||t===null||t===!1;function pc(t,a){t=Z.isArray(t)?t:[t];const{length:s}=t;let r,l;const o={};for(let d=0;d<s;d++){r=t[d];let c;if(l=r,!uc(r)&&(l=tr[(c=String(r)).toLowerCase()],l===void 0))throw new Te(`Unknown adapter '${c}'`);if(l&&(Z.isFunction(l)||(l=l.get(a))))break;o[c||"#"+d]=l}if(!l){const d=Object.entries(o).map(([g,y])=>`adapter ${g} `+(y===!1?"is not supported by the environment":"is not available in the build"));let c=s?d.length>1?`since :
4
- `+d.map(Rr).join(`
5
- `):" "+Rr(d[0]):"as no adapter specified";throw new Te("There is no suitable adapter to dispatch the request "+c,"ERR_NOT_SUPPORT")}return l}const Fl={getAdapter:pc,adapters:tr};function xs(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new en(null,t)}function Ir(t){return xs(t),t.headers=ft.from(t.headers),t.data=gs.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Fl.getAdapter(t.adapter||Za.adapter,t)(t).then(function(r){return xs(t),r.data=gs.call(t,t.transformResponse,r),r.headers=ft.from(r.headers),r},function(r){return Pl(r)||(xs(t),r&&r.response&&(r.response.data=gs.call(t,t.transformResponse,r.response),r.response.headers=ft.from(r.response.headers))),Promise.reject(r)})}const Ul="1.15.2",ns={};["object","boolean","number","function","string","symbol"].forEach((t,a)=>{ns[t]=function(r){return typeof r===t||"a"+(a<1?"n ":" ")+t}});const kr={};ns.transitional=function(a,s,r){function l(o,d){return"[Axios v"+Ul+"] Transitional option '"+o+"'"+d+(r?". "+r:"")}return(o,d,c)=>{if(a===!1)throw new Te(l(d," has been removed"+(s?" in "+s:"")),Te.ERR_DEPRECATED);return s&&!kr[d]&&(kr[d]=!0,console.warn(l(d," has been deprecated since v"+s+" and will be removed in the near future"))),a?a(o,d,c):!0}};ns.spelling=function(a){return(s,r)=>(console.warn(`${r} is likely a misspelling of ${a}`),!0)};function mc(t,a,s){if(typeof t!="object")throw new Te("options must be an object",Te.ERR_BAD_OPTION_VALUE);const r=Object.keys(t);let l=r.length;for(;l-- >0;){const o=r[l],d=Object.prototype.hasOwnProperty.call(a,o)?a[o]:void 0;if(d){const c=t[o],g=c===void 0||d(c,o,t);if(g!==!0)throw new Te("option "+o+" must be "+g,Te.ERR_BAD_OPTION_VALUE);continue}if(s!==!0)throw new Te("Unknown option "+o,Te.ERR_BAD_OPTION)}}const En={assertOptions:mc,validators:ns},wt=En.validators;let Jt=class{constructor(a){this.defaults=a||{},this.interceptors={request:new br,response:new br}}async request(a,s){try{return await this._request(a,s)}catch(r){if(r instanceof Error){let l={};Error.captureStackTrace?Error.captureStackTrace(l):l=new Error;const o=(()=>{if(!l.stack)return"";const d=l.stack.indexOf(`
6
- `);return d===-1?"":l.stack.slice(d+1)})();try{if(!r.stack)r.stack=o;else if(o){const d=o.indexOf(`
7
- `),c=d===-1?-1:o.indexOf(`
8
- `,d+1),g=c===-1?"":o.slice(c+1);String(r.stack).endsWith(g)||(r.stack+=`
9
- `+o)}}catch{}}throw r}}_request(a,s){typeof a=="string"?(s=s||{},s.url=a):s=a||{},s=Zt(this.defaults,s);const{transitional:r,paramsSerializer:l,headers:o}=s;r!==void 0&&En.assertOptions(r,{silentJSONParsing:wt.transitional(wt.boolean),forcedJSONParsing:wt.transitional(wt.boolean),clarifyTimeoutError:wt.transitional(wt.boolean),legacyInterceptorReqResOrdering:wt.transitional(wt.boolean)},!1),l!=null&&(Z.isFunction(l)?s.paramsSerializer={serialize:l}:En.assertOptions(l,{encode:wt.function,serialize:wt.function},!0)),s.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?s.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:s.allowAbsoluteUrls=!0),En.assertOptions(s,{baseUrl:wt.spelling("baseURL"),withXsrfToken:wt.spelling("withXSRFToken")},!0),s.method=(s.method||this.defaults.method||"get").toLowerCase();let d=o&&Z.merge(o.common,o[s.method]);o&&Z.forEach(["delete","get","head","post","put","patch","common"],b=>{delete o[b]}),s.headers=ft.concat(d,o);const c=[];let g=!0;this.interceptors.request.forEach(function(f){if(typeof f.runWhen=="function"&&f.runWhen(s)===!1)return;g=g&&f.synchronous;const x=s.transitional||Zs;x&&x.legacyInterceptorReqResOrdering?c.unshift(f.fulfilled,f.rejected):c.push(f.fulfilled,f.rejected)});const y=[];this.interceptors.response.forEach(function(f){y.push(f.fulfilled,f.rejected)});let p,m=0,A;if(!g){const b=[Ir.bind(this),void 0];for(b.unshift(...c),b.push(...y),A=b.length,p=Promise.resolve(s);m<A;)p=p.then(b[m++],b[m++]);return p}A=c.length;let C=s;for(;m<A;){const b=c[m++],f=c[m++];try{C=b(C)}catch(x){f.call(this,x);break}}try{p=Ir.call(this,C)}catch(b){return Promise.reject(b)}for(m=0,A=y.length;m<A;)p=p.then(y[m++],y[m++]);return p}getUri(a){a=Zt(this.defaults,a);const s=Ml(a.baseURL,a.url,a.allowAbsoluteUrls);return Il(s,a.params,a.paramsSerializer)}};Z.forEach(["delete","get","head","options"],function(a){Jt.prototype[a]=function(s,r){return this.request(Zt(r||{},{method:a,url:s,data:(r||{}).data}))}});Z.forEach(["post","put","patch"],function(a){function s(r){return function(o,d,c){return this.request(Zt(c||{},{method:a,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:d}))}}Jt.prototype[a]=s(),Jt.prototype[a+"Form"]=s(!0)});let hc=class Nl{constructor(a){if(typeof a!="function")throw new TypeError("executor must be a function.");let s;this.promise=new Promise(function(o){s=o});const r=this;this.promise.then(l=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](l);r._listeners=null}),this.promise.then=l=>{let o;const d=new Promise(c=>{r.subscribe(c),o=c}).then(l);return d.cancel=function(){r.unsubscribe(o)},d},a(function(o,d,c){r.reason||(r.reason=new en(o,d,c),s(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(a){if(this.reason){a(this.reason);return}this._listeners?this._listeners.push(a):this._listeners=[a]}unsubscribe(a){if(!this._listeners)return;const s=this._listeners.indexOf(a);s!==-1&&this._listeners.splice(s,1)}toAbortSignal(){const a=new AbortController,s=r=>{a.abort(r)};return this.subscribe(s),a.signal.unsubscribe=()=>this.unsubscribe(s),a.signal}static source(){let a;return{token:new Nl(function(l){a=l}),cancel:a}}};function fc(t){return function(s){return t.apply(null,s)}}function yc(t){return Z.isObject(t)&&t.isAxiosError===!0}const Hs={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Hs).forEach(([t,a])=>{Hs[a]=t});function Bl(t){const a=new Jt(t),s=bl(Jt.prototype.request,a);return Z.extend(s,Jt.prototype,a,{allOwnKeys:!0}),Z.extend(s,a,null,{allOwnKeys:!0}),s.create=function(l){return Bl(Zt(t,l))},s}const Je=Bl(Za);Je.Axios=Jt;Je.CanceledError=en;Je.CancelToken=hc;Je.isCancel=Pl;Je.VERSION=Ul;Je.toFormData=as;Je.AxiosError=Te;Je.Cancel=Je.CanceledError;Je.all=function(a){return Promise.all(a)};Je.spread=fc;Je.isAxiosError=yc;Je.mergeConfig=Zt;Je.AxiosHeaders=ft;Je.formToJSON=t=>kl(Z.isHTMLForm(t)?new FormData(t):t);Je.getAdapter=Fl.getAdapter;Je.HttpStatusCode=Hs;Je.default=Je;const{Axios:Ib,AxiosError:kb,CanceledError:Pb,isCancel:Ob,CancelToken:Mb,VERSION:Eb,all:$b,Cancel:Fb,isAxiosError:Ub,spread:Nb,toFormData:Bb,AxiosHeaders:Lb,HttpStatusCode:qb,formToJSON:zb,getAdapter:Yb,mergeConfig:Vb}=Je,gc=()=>new Promise(t=>setTimeout(()=>t(),800));let Ks=null;const xc=t=>{Ks=t,ot.defaults.baseURL=ar()},ar=()=>Ks||"https://npmapi.ubkerp.com/",ot=Je.create({baseURL:ar()}),bt=()=>ar();let Gs=null;const bc=t=>{Gs=t},Ke=()=>Gs||"https://image.ubkerp.com",jc=t=>{if(!t||typeof t!="string")return null;const a=t.split(".");if(a.length<2)return null;try{let s=a[1];s=s.replace(/-/g,"+").replace(/_/g,"/");const r=(4-s.length%4)%4;s+="=".repeat(r);const l=typeof atob=="function"?atob(s):Buffer.from(s,"base64").toString("binary");return JSON.parse(l)}catch{return null}},$t=t=>{const a=jc(t);return a?a?.branch_id??a?.branchID??a?.fk_branchID??a?.branch??null:null},Ne=async(t,a,s)=>{const r=await ot.post(t,a,{headers:{Authorization:s}});if(console.log("ddddfdfdfd",r.data?.Status),r.data?.Status=="Success")return r?.data?.data||r?.data;throw new Error(r.data?.msg)},Sc=async(t,a,s)=>{const r=a instanceof FormData;return(await ot.post(t,a,{headers:{Authorization:s,...r?{"Content-type":"multipart/form-data"}:{}}})).data},K=async(t,a)=>{try{const s=(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1"}catch{return"1"}})();let r=t;if(!t.includes("session_id")&&s){const o=t.includes("?")?"&":"?";r=`${t}${o}session_id=${s}`}return(await ot.get(r,{headers:{Authorization:a}})).data}catch(s){throw s.response?.status===401&&console.error("401 Unauthorized"),s}},vc=async(t,a)=>{const s=await ot.post(t,"",{headers:{Authorization:a}});if(s.data?.Status=="Success")return s?.data?.data||s?.data;throw new Error(s.data?.msg)},ss=async(t,a,s)=>{try{const r=await ot.post(t,a,{headers:{Authorization:s,"Content-Type":"application/json"}});return r.data?.Status==="Success"?r.data:(w.error(r.data?.msg||"Unable to issue library book",{duration:2e3}),!1)}catch(r){throw w.error(r.response?.data?.msg||r.response?.data?.message||"Request failed",{duration:2e3}),r}},Ha=async(t,a,s)=>{const r=a?.arg;return(await ot.post(t,r,{headers:{Authorization:s}}))?.data},Qt=async(t,a,s)=>{const r=a?.arg,l=t.includes("?")?"&":"?";return(await ot.get(t+l,{params:r,headers:{Authorization:s}}))?.data},wc="api/branchapi/GeneralSettings/getsetting_allowances_dedectionBranch",nr=async(t,a,s)=>{const r=a?.arg,l=t.includes("?")?"&":"?",o=await ot.get(t+l,{params:r,headers:{Authorization:s}});if(console.log("ddddfdfdfd",o.data?.Status),o.data?.Status=="Success")return o?.data?.data||o?.data;throw new Error(o.data?.msg)},We=async(t,a,s)=>(await gc(),(await ot.post(t,a,{headers:{Authorization:s}}))?.data),Sa=async(t,a,s)=>(await ot.post(t,a,{headers:{Authorization:s}})).data,He=async(t,a,s)=>(await ot.delete(`${t}/${a}`,{headers:{Authorization:s}})).data,_c="api/report/LibraryRenewalReport/renewalHistory",Cc="api/report/LibraryRenewalReport/renewalFineReport",Ac="api/report/LibraryRenewalReport/currentlyRenewedBooks",Dc="api/report/LibraryRenewalReport/upcomingRenewalDue",Tc="api/report/LibraryRenewalReport/overdueRenewalReport",Rc="api/report/LibraryRenewalReport/renewalLimitReport",Ic="api/report/LibraryRenewalReport/renewalStatusReport",kc="api/report/LibraryRenewalReport/studentWiseReport",Pc="api/report/LibraryRenewalReport/bookWiseReport",Oc="api/report/LibraryRenewalReport/classWiseReport",Mc="api/report/LibraryRenewalReport/staffWiseReport",Ec="api/report/LibraryRenewalReport/renewalStatisticsByDate",$c="/sample_templates/route_upload.xlsx",tn="api/branchapi/academy/classdropdownlist",an="api/branchapi/academy/sectionoftheClass",Fc="/sample_templates/student_transport_upload.xlsx",Uc="api/branchapi/income/incomeTableList",Nc="api/branchapi/income/addincome",Bc="api/branchapi/income/editincome",Lc="api/branchapi/income/deleteincome",Ll="api/branchapi/income/incomeheadDropdown",qc="api/branchapi/income/incomeheadTableList",zc="api/branchapi/income/addincomehead",Yc="api/branchapi/income/editincomehead",Vc="api/branchapi/income/deleteincomehead",Wc="api/branchapi/income/incomeShowdata",Hc="api/branchapi/income/incomeheadShowdata",Kc="api/branchapi/income/searchincomebydates",Gc="api/branchapi/expense/expenseTableList",Jc="api/branchapi/expense/addexpense",Qc="api/branchapi/expense/editexpense",Xc="api/branchapi/expense/deleteExpense",ql="api/branchapi/expense/expenseheadDropdown",Zc="api/branchapi/expense/expenseheadTableList",eu="api/branchapi/expense/addexpensehead",tu="api/branchapi/expense/editexpensehead",au="api/branchapi/expense/deleteexpensehead",nu="api/branchapi/expense/expenseShowdata",su="api/branchapi/expense/expenseVoucherbyID",ru="api/branchapi/expense/expenseheadShowdata",iu="api/branchapi/expense/searchexpensebydates",zl="api/accounts/vendor/vendorlist",lu="api/student/studentDetails/studentLoginCredentialList",Yl="/branchapi/student/studentlist",Vl="api/branchapi/student/studentsearchbyKeywords",Wl="api/branchapi/student/studentsearchbyClassSection",ou="/branchapi/student/addStudentMedicineDetails",du="/branchapi/student/StudentMedicineDetails",Hl="/branchapi/academy/getstudentClasssubjectByStudentId",cu="/branchapi/academy/removeAssignStudentSubject",Js="/branchapi/feesCollection/extraCurricularActivitiesFess",uu="/branchapi/academy/unAssigneStudentSubject",pu="/branchapi/student/uploadstudentbyCSV",mu="api/branchapi/academy/categorytableList",hu="api/branchapi/transport/downloadBulkTemplate",fu="api/branchapi/transport/validateBulkUpload",yu="api/branchapi/transport/confirmBulkImport",gu="api/branchapi/transport/downloadBulkErrorReport",xu=async({class_id:t,section_id:a}={},s)=>{const r=new URLSearchParams;t&&r.append("class_id",t),a&&r.append("section_id",a);const l=`${hu}${r.toString()?`?${r.toString()}`:""}`;return(await ot.get(l,{headers:{Authorization:s},responseType:"blob"})).data},bu=async(t,a)=>{const s=new FormData;return s.append("file",t),(await ot.post(fu,s,{headers:{Authorization:a,"Content-Type":"multipart/form-data"}})).data},ju=async(t,a,s="skip")=>(await ot.post(yu,{rows:t,duplicate_action:s},{headers:{Authorization:a,"Content-Type":"application/json"}})).data,Su=async(t,a)=>(await ot.post(gu,{rows:t},{headers:{Authorization:a,"Content-Type":"application/json"},responseType:"blob"})).data,vu=({token:t,menu:a})=>{const{isLoading:s,data:r}=H(t?["api/sdk/Menus",t]:null,([o,d])=>vc(o,d)),l=r?.find(o=>o.path===a)?.sub_menu??[];return console.log("menuData",r),e.jsx(n.Row,{gutter:[16,16],children:l?.map((o,d)=>o.dashboard_show==="YES"?e.jsx(n.Col,{xs:24,md:8,lg:8,children:e.jsx(v,{children:e.jsx(xl,{icon:`${bt()}icons/frontoffice/${o.icons}`,title:o.submenu_name,path:o.menu_key})})},`${d}office001`):null)})};function Kl(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var nt={},bs,Pr;function wu(){return Pr||(Pr=1,bs=function t(a,s){if(a===s)return!0;if(a&&s&&typeof a=="object"&&typeof s=="object"){if(a.constructor!==s.constructor)return!1;var r,l,o;if(Array.isArray(a)){if(r=a.length,r!=s.length)return!1;for(l=r;l--!==0;)if(!t(a[l],s[l]))return!1;return!0}if(a.constructor===RegExp)return a.source===s.source&&a.flags===s.flags;if(a.valueOf!==Object.prototype.valueOf)return a.valueOf()===s.valueOf();if(a.toString!==Object.prototype.toString)return a.toString()===s.toString();if(o=Object.keys(a),r=o.length,r!==Object.keys(s).length)return!1;for(l=r;l--!==0;)if(!Object.prototype.hasOwnProperty.call(s,o[l]))return!1;for(l=r;l--!==0;){var d=o[l];if(!t(a[d],s[d]))return!1}return!0}return a!==a&&s!==s}),bs}var yn={exports:{}},gn={exports:{}},$e={};var Or;function _u(){if(Or)return $e;Or=1;var t=typeof Symbol=="function"&&Symbol.for,a=t?Symbol.for("react.element"):60103,s=t?Symbol.for("react.portal"):60106,r=t?Symbol.for("react.fragment"):60107,l=t?Symbol.for("react.strict_mode"):60108,o=t?Symbol.for("react.profiler"):60114,d=t?Symbol.for("react.provider"):60109,c=t?Symbol.for("react.context"):60110,g=t?Symbol.for("react.async_mode"):60111,y=t?Symbol.for("react.concurrent_mode"):60111,p=t?Symbol.for("react.forward_ref"):60112,m=t?Symbol.for("react.suspense"):60113,A=t?Symbol.for("react.suspense_list"):60120,C=t?Symbol.for("react.memo"):60115,b=t?Symbol.for("react.lazy"):60116,f=t?Symbol.for("react.block"):60121,x=t?Symbol.for("react.fundamental"):60117,R=t?Symbol.for("react.responder"):60118,k=t?Symbol.for("react.scope"):60119;function O(_){if(typeof _=="object"&&_!==null){var u=_.$$typeof;switch(u){case a:switch(_=_.type,_){case g:case y:case r:case o:case l:case m:return _;default:switch(_=_&&_.$$typeof,_){case c:case p:case b:case C:case d:return _;default:return u}}case s:return u}}}function D(_){return O(_)===y}return $e.AsyncMode=g,$e.ConcurrentMode=y,$e.ContextConsumer=c,$e.ContextProvider=d,$e.Element=a,$e.ForwardRef=p,$e.Fragment=r,$e.Lazy=b,$e.Memo=C,$e.Portal=s,$e.Profiler=o,$e.StrictMode=l,$e.Suspense=m,$e.isAsyncMode=function(_){return D(_)||O(_)===g},$e.isConcurrentMode=D,$e.isContextConsumer=function(_){return O(_)===c},$e.isContextProvider=function(_){return O(_)===d},$e.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===a},$e.isForwardRef=function(_){return O(_)===p},$e.isFragment=function(_){return O(_)===r},$e.isLazy=function(_){return O(_)===b},$e.isMemo=function(_){return O(_)===C},$e.isPortal=function(_){return O(_)===s},$e.isProfiler=function(_){return O(_)===o},$e.isStrictMode=function(_){return O(_)===l},$e.isSuspense=function(_){return O(_)===m},$e.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===r||_===y||_===o||_===l||_===m||_===A||typeof _=="object"&&_!==null&&(_.$$typeof===b||_.$$typeof===C||_.$$typeof===d||_.$$typeof===c||_.$$typeof===p||_.$$typeof===x||_.$$typeof===R||_.$$typeof===k||_.$$typeof===f)},$e.typeOf=O,$e}var Fe={};var Mr;function Cu(){return Mr||(Mr=1,process.env.NODE_ENV!=="production"&&(function(){var t=typeof Symbol=="function"&&Symbol.for,a=t?Symbol.for("react.element"):60103,s=t?Symbol.for("react.portal"):60106,r=t?Symbol.for("react.fragment"):60107,l=t?Symbol.for("react.strict_mode"):60108,o=t?Symbol.for("react.profiler"):60114,d=t?Symbol.for("react.provider"):60109,c=t?Symbol.for("react.context"):60110,g=t?Symbol.for("react.async_mode"):60111,y=t?Symbol.for("react.concurrent_mode"):60111,p=t?Symbol.for("react.forward_ref"):60112,m=t?Symbol.for("react.suspense"):60113,A=t?Symbol.for("react.suspense_list"):60120,C=t?Symbol.for("react.memo"):60115,b=t?Symbol.for("react.lazy"):60116,f=t?Symbol.for("react.block"):60121,x=t?Symbol.for("react.fundamental"):60117,R=t?Symbol.for("react.responder"):60118,k=t?Symbol.for("react.scope"):60119;function O(le){return typeof le=="string"||typeof le=="function"||le===r||le===y||le===o||le===l||le===m||le===A||typeof le=="object"&&le!==null&&(le.$$typeof===b||le.$$typeof===C||le.$$typeof===d||le.$$typeof===c||le.$$typeof===p||le.$$typeof===x||le.$$typeof===R||le.$$typeof===k||le.$$typeof===f)}function D(le){if(typeof le=="object"&&le!==null){var oe=le.$$typeof;switch(oe){case a:var ie=le.type;switch(ie){case g:case y:case r:case o:case l:case m:return ie;default:var Se=ie&&ie.$$typeof;switch(Se){case c:case p:case b:case C:case d:return Se;default:return oe}}case s:return oe}}}var _=g,u=y,h=c,S=d,E=a,F=p,q=r,T=b,U=C,j=s,P=o,I=l,N=m,V=!1;function W(le){return V||(V=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),B(le)||D(le)===g}function B(le){return D(le)===y}function $(le){return D(le)===c}function M(le){return D(le)===d}function L(le){return typeof le=="object"&&le!==null&&le.$$typeof===a}function Y(le){return D(le)===p}function se(le){return D(le)===r}function X(le){return D(le)===b}function G(le){return D(le)===C}function J(le){return D(le)===s}function re(le){return D(le)===o}function de(le){return D(le)===l}function Ce(le){return D(le)===m}Fe.AsyncMode=_,Fe.ConcurrentMode=u,Fe.ContextConsumer=h,Fe.ContextProvider=S,Fe.Element=E,Fe.ForwardRef=F,Fe.Fragment=q,Fe.Lazy=T,Fe.Memo=U,Fe.Portal=j,Fe.Profiler=P,Fe.StrictMode=I,Fe.Suspense=N,Fe.isAsyncMode=W,Fe.isConcurrentMode=B,Fe.isContextConsumer=$,Fe.isContextProvider=M,Fe.isElement=L,Fe.isForwardRef=Y,Fe.isFragment=se,Fe.isLazy=X,Fe.isMemo=G,Fe.isPortal=J,Fe.isProfiler=re,Fe.isStrictMode=de,Fe.isSuspense=Ce,Fe.isValidElementType=O,Fe.typeOf=D})()),Fe}var Er;function Gl(){return Er||(Er=1,process.env.NODE_ENV==="production"?gn.exports=_u():gn.exports=Cu()),gn.exports}var js,$r;function Au(){if($r)return js;$r=1;var t=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable;function r(o){if(o==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(o)}function l(){try{if(!Object.assign)return!1;var o=new String("abc");if(o[5]="de",Object.getOwnPropertyNames(o)[0]==="5")return!1;for(var d={},c=0;c<10;c++)d["_"+String.fromCharCode(c)]=c;var g=Object.getOwnPropertyNames(d).map(function(p){return d[p]});if(g.join("")!=="0123456789")return!1;var y={};return"abcdefghijklmnopqrst".split("").forEach(function(p){y[p]=p}),Object.keys(Object.assign({},y)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return js=l()?Object.assign:function(o,d){for(var c,g=r(o),y,p=1;p<arguments.length;p++){c=Object(arguments[p]);for(var m in c)a.call(c,m)&&(g[m]=c[m]);if(t){y=t(c);for(var A=0;A<y.length;A++)s.call(c,y[A])&&(g[y[A]]=c[y[A]])}}return g},js}var Ss,Fr;function sr(){if(Fr)return Ss;Fr=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Ss=t,Ss}var vs,Ur;function Jl(){return Ur||(Ur=1,vs=Function.call.bind(Object.prototype.hasOwnProperty)),vs}var ws,Nr;function Du(){if(Nr)return ws;Nr=1;var t=function(){};if(process.env.NODE_ENV!=="production"){var a=sr(),s={},r=Jl();t=function(o){var d="Warning: "+o;typeof console<"u"&&console.error(d);try{throw new Error(d)}catch{}}}function l(o,d,c,g,y){if(process.env.NODE_ENV!=="production"){for(var p in o)if(r(o,p)){var m;try{if(typeof o[p]!="function"){var A=Error((g||"React class")+": "+c+" type `"+p+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof o[p]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw A.name="Invariant Violation",A}m=o[p](d,p,g,c,null,a)}catch(b){m=b}if(m&&!(m instanceof Error)&&t((g||"React class")+": type specification of "+c+" `"+p+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof m+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),m instanceof Error&&!(m.message in s)){s[m.message]=!0;var C=y?y():"";t("Failed "+c+" type: "+m.message+(C??""))}}}}return l.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(s={})},ws=l,ws}var _s,Br;function Tu(){if(Br)return _s;Br=1;var t=Gl(),a=Au(),s=sr(),r=Jl(),l=Du(),o=function(){};process.env.NODE_ENV!=="production"&&(o=function(c){var g="Warning: "+c;typeof console<"u"&&console.error(g);try{throw new Error(g)}catch{}});function d(){return null}return _s=function(c,g){var y=typeof Symbol=="function"&&Symbol.iterator,p="@@iterator";function m(B){var $=B&&(y&&B[y]||B[p]);if(typeof $=="function")return $}var A="<<anonymous>>",C={array:R("array"),bigint:R("bigint"),bool:R("boolean"),func:R("function"),number:R("number"),object:R("object"),string:R("string"),symbol:R("symbol"),any:k(),arrayOf:O,element:D(),elementType:_(),instanceOf:u,node:F(),objectOf:S,oneOf:h,oneOfType:E,shape:T,exact:U};function b(B,$){return B===$?B!==0||1/B===1/$:B!==B&&$!==$}function f(B,$){this.message=B,this.data=$&&typeof $=="object"?$:{},this.stack=""}f.prototype=Error.prototype;function x(B){if(process.env.NODE_ENV!=="production")var $={},M=0;function L(se,X,G,J,re,de,Ce){if(J=J||A,de=de||G,Ce!==s){if(g){var le=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw le.name="Invariant Violation",le}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var oe=J+":"+G;!$[oe]&&M<3&&(o("You are manually calling a React.PropTypes validation function for the `"+de+"` prop on `"+J+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),$[oe]=!0,M++)}}return X[G]==null?se?X[G]===null?new f("The "+re+" `"+de+"` is marked as required "+("in `"+J+"`, but its value is `null`.")):new f("The "+re+" `"+de+"` is marked as required in "+("`"+J+"`, but its value is `undefined`.")):null:B(X,G,J,re,de)}var Y=L.bind(null,!1);return Y.isRequired=L.bind(null,!0),Y}function R(B){function $(M,L,Y,se,X,G){var J=M[L],re=I(J);if(re!==B){var de=N(J);return new f("Invalid "+se+" `"+X+"` of type "+("`"+de+"` supplied to `"+Y+"`, expected ")+("`"+B+"`."),{expectedType:B})}return null}return x($)}function k(){return x(d)}function O(B){function $(M,L,Y,se,X){if(typeof B!="function")return new f("Property `"+X+"` of component `"+Y+"` has invalid PropType notation inside arrayOf.");var G=M[L];if(!Array.isArray(G)){var J=I(G);return new f("Invalid "+se+" `"+X+"` of type "+("`"+J+"` supplied to `"+Y+"`, expected an array."))}for(var re=0;re<G.length;re++){var de=B(G,re,Y,se,X+"["+re+"]",s);if(de instanceof Error)return de}return null}return x($)}function D(){function B($,M,L,Y,se){var X=$[M];if(!c(X)){var G=I(X);return new f("Invalid "+Y+" `"+se+"` of type "+("`"+G+"` supplied to `"+L+"`, expected a single ReactElement."))}return null}return x(B)}function _(){function B($,M,L,Y,se){var X=$[M];if(!t.isValidElementType(X)){var G=I(X);return new f("Invalid "+Y+" `"+se+"` of type "+("`"+G+"` supplied to `"+L+"`, expected a single ReactElement type."))}return null}return x(B)}function u(B){function $(M,L,Y,se,X){if(!(M[L]instanceof B)){var G=B.name||A,J=W(M[L]);return new f("Invalid "+se+" `"+X+"` of type "+("`"+J+"` supplied to `"+Y+"`, expected ")+("instance of `"+G+"`."))}return null}return x($)}function h(B){if(!Array.isArray(B))return process.env.NODE_ENV!=="production"&&(arguments.length>1?o("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):o("Invalid argument supplied to oneOf, expected an array.")),d;function $(M,L,Y,se,X){for(var G=M[L],J=0;J<B.length;J++)if(b(G,B[J]))return null;var re=JSON.stringify(B,function(Ce,le){var oe=N(le);return oe==="symbol"?String(le):le});return new f("Invalid "+se+" `"+X+"` of value `"+String(G)+"` "+("supplied to `"+Y+"`, expected one of "+re+"."))}return x($)}function S(B){function $(M,L,Y,se,X){if(typeof B!="function")return new f("Property `"+X+"` of component `"+Y+"` has invalid PropType notation inside objectOf.");var G=M[L],J=I(G);if(J!=="object")return new f("Invalid "+se+" `"+X+"` of type "+("`"+J+"` supplied to `"+Y+"`, expected an object."));for(var re in G)if(r(G,re)){var de=B(G,re,Y,se,X+"."+re,s);if(de instanceof Error)return de}return null}return x($)}function E(B){if(!Array.isArray(B))return process.env.NODE_ENV!=="production"&&o("Invalid argument supplied to oneOfType, expected an instance of array."),d;for(var $=0;$<B.length;$++){var M=B[$];if(typeof M!="function")return o("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+V(M)+" at index "+$+"."),d}function L(Y,se,X,G,J){for(var re=[],de=0;de<B.length;de++){var Ce=B[de],le=Ce(Y,se,X,G,J,s);if(le==null)return null;le.data&&r(le.data,"expectedType")&&re.push(le.data.expectedType)}var oe=re.length>0?", expected one of type ["+re.join(", ")+"]":"";return new f("Invalid "+G+" `"+J+"` supplied to "+("`"+X+"`"+oe+"."))}return x(L)}function F(){function B($,M,L,Y,se){return j($[M])?null:new f("Invalid "+Y+" `"+se+"` supplied to "+("`"+L+"`, expected a ReactNode."))}return x(B)}function q(B,$,M,L,Y){return new f((B||"React class")+": "+$+" type `"+M+"."+L+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+Y+"`.")}function T(B){function $(M,L,Y,se,X){var G=M[L],J=I(G);if(J!=="object")return new f("Invalid "+se+" `"+X+"` of type `"+J+"` "+("supplied to `"+Y+"`, expected `object`."));for(var re in B){var de=B[re];if(typeof de!="function")return q(Y,se,X,re,N(de));var Ce=de(G,re,Y,se,X+"."+re,s);if(Ce)return Ce}return null}return x($)}function U(B){function $(M,L,Y,se,X){var G=M[L],J=I(G);if(J!=="object")return new f("Invalid "+se+" `"+X+"` of type `"+J+"` "+("supplied to `"+Y+"`, expected `object`."));var re=a({},M[L],B);for(var de in re){var Ce=B[de];if(r(B,de)&&typeof Ce!="function")return q(Y,se,X,de,N(Ce));if(!Ce)return new f("Invalid "+se+" `"+X+"` key `"+de+"` supplied to `"+Y+"`.\nBad object: "+JSON.stringify(M[L],null," ")+`
10
- Valid keys: `+JSON.stringify(Object.keys(B),null," "));var le=Ce(G,de,Y,se,X+"."+de,s);if(le)return le}return null}return x($)}function j(B){switch(typeof B){case"number":case"string":case"undefined":return!0;case"boolean":return!B;case"object":if(Array.isArray(B))return B.every(j);if(B===null||c(B))return!0;var $=m(B);if($){var M=$.call(B),L;if($!==B.entries){for(;!(L=M.next()).done;)if(!j(L.value))return!1}else for(;!(L=M.next()).done;){var Y=L.value;if(Y&&!j(Y[1]))return!1}}else return!1;return!0;default:return!1}}function P(B,$){return B==="symbol"?!0:$?$["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&$ instanceof Symbol:!1}function I(B){var $=typeof B;return Array.isArray(B)?"array":B instanceof RegExp?"object":P($,B)?"symbol":$}function N(B){if(typeof B>"u"||B===null)return""+B;var $=I(B);if($==="object"){if(B instanceof Date)return"date";if(B instanceof RegExp)return"regexp"}return $}function V(B){var $=N(B);switch($){case"array":case"object":return"an "+$;case"boolean":case"date":case"regexp":return"a "+$;default:return $}}function W(B){return!B.constructor||!B.constructor.name?A:B.constructor.name}return C.checkPropTypes=l,C.resetWarningCache=l.resetWarningCache,C.PropTypes=C,C},_s}var Cs,Lr;function Ru(){if(Lr)return Cs;Lr=1;var t=sr();function a(){}function s(){}return s.resetWarningCache=a,Cs=function(){function r(d,c,g,y,p,m){if(m!==t){var A=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw A.name="Invariant Violation",A}}r.isRequired=r;function l(){return r}var o={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:l,element:r,elementType:r,instanceOf:l,node:r,objectOf:l,oneOf:l,oneOfType:l,shape:l,exact:l,checkPropTypes:s,resetWarningCache:a};return o.PropTypes=o,o},Cs}var qr;function Ql(){if(qr)return yn.exports;if(qr=1,process.env.NODE_ENV!=="production"){var t=Gl(),a=!0;yn.exports=Tu()(t.isElement,a)}else yn.exports=Ru()();return yn.exports}var zr;function Iu(){if(zr)return nt;zr=1;var t=nt&&nt.__extends||(function(){var C=function(b,f){return C=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(x,R){x.__proto__=R}||function(x,R){for(var k in R)Object.prototype.hasOwnProperty.call(R,k)&&(x[k]=R[k])},C(b,f)};return function(b,f){if(typeof f!="function"&&f!==null)throw new TypeError("Class extends value "+String(f)+" is not a constructor or null");C(b,f);function x(){this.constructor=b}b.prototype=f===null?Object.create(f):(x.prototype=f.prototype,new x)}})(),a=nt&&nt.__assign||function(){return a=Object.assign||function(C){for(var b,f=1,x=arguments.length;f<x;f++){b=arguments[f];for(var R in b)Object.prototype.hasOwnProperty.call(b,R)&&(C[R]=b[R])}return C},a.apply(this,arguments)},s=nt&&nt.__createBinding||(Object.create?(function(C,b,f,x){x===void 0&&(x=f);var R=Object.getOwnPropertyDescriptor(b,f);(!R||("get"in R?!b.__esModule:R.writable||R.configurable))&&(R={enumerable:!0,get:function(){return b[f]}}),Object.defineProperty(C,x,R)}):(function(C,b,f,x){x===void 0&&(x=f),C[x]=b[f]})),r=nt&&nt.__setModuleDefault||(Object.create?(function(C,b){Object.defineProperty(C,"default",{enumerable:!0,value:b})}):function(C,b){C.default=b}),l=nt&&nt.__importStar||function(C){if(C&&C.__esModule)return C;var b={};if(C!=null)for(var f in C)f!=="default"&&Object.prototype.hasOwnProperty.call(C,f)&&s(b,C,f);return r(b,C),b},o=nt&&nt.__rest||function(C,b){var f={};for(var x in C)Object.prototype.hasOwnProperty.call(C,x)&&b.indexOf(x)<0&&(f[x]=C[x]);if(C!=null&&typeof Object.getOwnPropertySymbols=="function")for(var R=0,x=Object.getOwnPropertySymbols(C);R<x.length;R++)b.indexOf(x[R])<0&&Object.prototype.propertyIsEnumerable.call(C,x[R])&&(f[x[R]]=C[x[R]]);return f},d=nt&&nt.__importDefault||function(C){return C&&C.__esModule?C:{default:C}};Object.defineProperty(nt,"__esModule",{value:!0});var c=l(i),g=d(wu()),y=l(Ql());function p(C){return C&&C.replace(/&nbsp;|\u202F|\u00A0/g," ").replace(/<br \/>/g,"<br>")}function m(C){var b=document.createTextNode("");C.appendChild(b);var f=document.activeElement===C;if(b!==null&&b.nodeValue!==null&&f){var x=window.getSelection();if(x!==null){var R=document.createRange();R.setStart(b,b.nodeValue.length),R.collapse(!0),x.removeAllRanges(),x.addRange(R)}C instanceof HTMLElement&&C.focus()}}var A=(function(C){t(b,C);function b(){var f=C!==null&&C.apply(this,arguments)||this;return f.lastHtml=f.props.html,f.el=typeof f.props.innerRef=="function"?{current:null}:c.createRef(),f.getEl=function(){return(f.props.innerRef&&typeof f.props.innerRef!="function"?f.props.innerRef:f.el).current},f.emitChange=function(x){var R=f.getEl();if(R){var k=R.innerHTML;if(f.props.onChange&&k!==f.lastHtml){var O=Object.assign({},x,{target:{value:k}});f.props.onChange(O)}f.lastHtml=k}},f}return b.prototype.render=function(){var f=this,x=this.props,R=x.tagName,k=x.html,O=x.innerRef,D=o(x,["tagName","html","innerRef"]);return c.createElement(R||"div",a(a({},D),{ref:typeof O=="function"?function(_){O(_),f.el.current=_}:O||this.el,onInput:this.emitChange,onBlur:this.props.onBlur||this.emitChange,onKeyUp:this.props.onKeyUp||this.emitChange,onKeyDown:this.props.onKeyDown||this.emitChange,contentEditable:!this.props.disabled,dangerouslySetInnerHTML:{__html:k}}),this.props.children)},b.prototype.shouldComponentUpdate=function(f){var x=this.props,R=this.getEl();return!R||p(f.html)!==p(R.innerHTML)?!0:x.disabled!==f.disabled||x.tagName!==f.tagName||x.className!==f.className||x.innerRef!==f.innerRef||x.placeholder!==f.placeholder||!(0,g.default)(x.style,f.style)},b.prototype.componentDidUpdate=function(){var f=this.getEl();f&&(this.props.html!==f.innerHTML&&(f.innerHTML=this.props.html),this.lastHtml=this.props.html,m(f))},b.propTypes={html:y.string.isRequired,onChange:y.func,disabled:y.bool,tagName:y.string,className:y.string,style:y.object,innerRef:y.oneOfType([y.object,y.func])},b})(c.Component);return nt.default=A,nt}var ku=Iu();const Xl=Kl(ku),Pu={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Ou={width:"100%",minHeight:40,padding:"8px 0",fontSize:"14px",color:"#222",background:"transparent",border:0,borderTop:0,borderLeft:0,borderRight:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",outline:"none",transition:"border-color 0.2s ease"},z=i.forwardRef(({style:t,onFocus:a,onBlur:s,...r},l)=>{const[o,d]=i.useState(!1);return e.jsxs("div",{className:"",style:{width:"100%"},children:[r.label&&e.jsx("label",{className:"labelfont",style:Pu,children:r.label}),e.jsx("input",{placeholder:r.placeholder||r.label,...r,ref:l,onFocus:c=>{d(!0),a?.(c)},onBlur:c=>{d(!1),s?.(c)},style:{...Ou,borderBottom:`1px solid ${o?"#222":"#d9d9d9"}`,...t||{}}})]})}),Yr=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}];function rr(t){const a=te().year(),s=[];for(let r=a;r>=a-t;r--)s.push({label:String(r),value:r});return s}function st(t){switch(t){case"late":return e.jsx("span",{className:"label label-late",children:"L"});case"present":return e.jsx("span",{className:"label label-success",children:"P"});case"absent":return e.jsx("span",{className:"label label-danger",children:"A"});case"P":return e.jsx("span",{className:"monthlyLabel label-success",children:"P"});case"A":return e.jsx("span",{className:"monthlyLabel label-danger",children:"A"});case"L":return e.jsx("span",{className:"monthlyLabel label-late",children:"L"});case"W":return e.jsx("span",{className:"monthlyLabel sunday",children:"W"});case"H":return e.jsx("span",{className:"monthlyLabel holiday",children:"H"});default:return e.jsx("span",{className:"label",children:t})}}function ir(t){const a=te().year(),s=te().month();return t<a?Yr:Yr.slice(0,s+1)}function Vr(t,a){switch(t){case"sunday":return e.jsx("span",{className:"monthlyLabel sunday",children:a});case"holiday":return e.jsx("span",{className:"monthlyLabel holiday",children:a});default:return e.jsx("span",{className:"monthlyLabel",children:a})}}function Mu(){return[{label:"One Time (During Admission)",value:"one_time"},{label:"One Time",value:"one_time_without_admission"},{label:"Monthly",value:"monthly"},{label:"Quarterly",value:"quarterly"},{label:"Half Yearly",value:"half_yearly"},{label:"Yearly",value:"yearly"}]}const Zl=t=>{switch(t){case"paid":return e.jsx("div",{style:{background:"#3cb371",color:"white",textAlign:"center"},children:"PAID"});case"due":return e.jsx("div",{style:{background:"red",color:"white",textAlign:"center"},children:"DUE"});case"partially_paid":return e.jsx("div",{style:{background:"#ff8d00",color:"white",textAlign:"center"},children:"Partially Paid"});case"Present":return e.jsx(n.Tag,{color:"success",children:"Present"});case"Absent":return e.jsx(n.Tag,{color:"error",children:"Absent"});case"NO Attendance":return e.jsx(n.Tag,{color:"error",children:"No Attendance"});case"one_time":return"ONETIME";case"monthly":return"MONTHLY";case"half_yearly":return"HALF YEARLY";case"quarterly":return"QUARTERLY";default:return""}},Rt=t=>{const a=JSON.parse(localStorage.getItem("genrall_settings"));return console.log("amount______",t),e.jsxs(e.Fragment,{children:[a?.currency_icon," ",Number(t||0).toLocaleString("en-IN")]})};var Aa={},Da={},xt={},Ta={},sa={},Wr;function Eu(){if(Wr)return sa;Wr=1;var t=sa&&sa.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(sa,"__esModule",{value:!0});const a=t(i),s=Mo,r=["string","number","boolean"];function l({header:o,body:d}){const c=a.default.createElement("tr",null,o.map(y=>a.default.createElement("th",{key:y},y))),g=d.map((y,p)=>Array.isArray(y)?a.default.createElement("tr",{key:p},y.map((m,A)=>a.default.createElement("th",{key:A}," ",m," "))):y!==null&&typeof y=="object"?a.default.createElement("tr",{key:p},Object.entries(y).map(([m,A],C)=>typeof A=="object"?(console.error(`typeof ${m} is incorrect, only accept ${r.join(", ")} `),a.default.createElement("th",{key:C})):a.default.createElement("th",{key:C},a.default.createElement(a.default.Fragment,null,A)))):(console.error(`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),s=require("antd"),q=require("swr"),D=require("react-hot-toast"),i=require("react"),it=require("swr/mutation"),re=require("@ant-design/icons"),ne=require("dayjs"),am=require("react-dom/server"),Ka=require("react-to-print"),jc=require("react-select"),Sc=require("react-barcode");function nm(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(a,n,r.get?r:{enumerable:!0,get:()=>t[n]})}}return a.default=t,Object.freeze(a)}const fe=nm(i),sm=()=>e.jsxs(s.Card,{style:{borderRadius:16},children:[e.jsx(s.Typography.Title,{level:3,style:{marginTop:0},children:"UBK ERP"}),e.jsx(s.Typography.Paragraph,{style:{marginBottom:0},children:"Welcome to your webpack-powered ERP system."})]}),w=({width:t,height:a,display:n,justifyContent:r,alignItems:o,flexDirection:l,gap:d,style:c,children:h,...f})=>{const p={width:t,height:a,display:n,justifyContent:r,alignItems:o,flexDirection:l,gap:d,...c};return e.jsx("div",{style:p,...f,children:h})},he=({variant:t,fontWeight:a,style:n,children:r,...o})=>{const l=a==="bold"?700:a==="light"?300:a;return t==="h1"?e.jsx(s.Typography.Title,{level:1,style:{fontWeight:l,...n},...o,children:r}):t==="h2"?e.jsx(s.Typography.Title,{level:2,style:{fontWeight:l,...n},...o,children:r}):t==="h3"?e.jsx(s.Typography.Title,{level:3,style:{fontWeight:l,...n},...o,children:r}):t==="h4"?e.jsx(s.Typography.Title,{level:4,style:{fontWeight:l,...n},...o,children:r}):t==="h5"?e.jsx(s.Typography.Title,{level:5,style:{fontWeight:l,...n},...o,children:r}):e.jsx(s.Typography.Text,{style:{fontWeight:l,...n},...o,children:r})};function wc({title:t="",icon:a="",path:n="",onClick:r}){const o=()=>{if(r){r(n);return}typeof window<"u"&&typeof n=="string"&&n.length>0&&window.location.assign(n)};return e.jsxs(s.Card,{hoverable:!0,onClick:o,style:{borderRadius:12,overflow:"hidden",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.05), 0 1px 3px rgba(16, 24, 40, 0.10)"},bodyStyle:{padding:0,cursor:"pointer",display:"flex",flexDirection:"column",alignItems:"stretch"},children:[e.jsx(w,{width:"100%",display:"flex",justifyContent:"center",alignItems:"center",style:{padding:"10px 12px",minHeight:80},children:e.jsx("img",{src:a,alt:"",style:{width:45,height:50,objectFit:"contain"}})}),e.jsx(w,{style:{padding:"0 12px"},children:e.jsx(s.Divider,{style:{margin:0,minWidth:0}})}),e.jsx(w,{style:{padding:"10px 10px",display:"flex",justifyContent:"center",alignItems:"center",minHeight:35},children:e.jsx(he,{variant:"button",fontWeight:"bold",style:{fontSize:12},children:t})})]})}function vc(t,a){return function(){return t.apply(a,arguments)}}const{toString:rm}=Object.prototype,{getPrototypeOf:Ir}=Object,{iterator:Pr,toStringTag:Cc}=Symbol,Mr=(t=>a=>{const n=rm.call(a);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),ea=t=>(t=t.toLowerCase(),a=>Mr(a)===t),Er=t=>a=>typeof a===t,{isArray:_n}=Array,xn=Er("undefined");function ds(t){return t!==null&&!xn(t)&&t.constructor!==null&&!xn(t.constructor)&&$t(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const _c=ea("ArrayBuffer");function im(t){let a;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?a=ArrayBuffer.isView(t):a=t&&t.buffer&&_c(t.buffer),a}const om=Er("string"),$t=Er("function"),Ac=Er("number"),cs=t=>t!==null&&typeof t=="object",lm=t=>t===!0||t===!1,Qs=t=>{if(Mr(t)!=="object")return!1;const a=Ir(t);return(a===null||a===Object.prototype||Object.getPrototypeOf(a)===null)&&!(Cc in t)&&!(Pr in t)},dm=t=>{if(!cs(t)||ds(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},cm=ea("Date"),um=ea("File"),pm=t=>!!(t&&typeof t.uri<"u"),mm=t=>t&&typeof t.getParts<"u",hm=ea("Blob"),fm=ea("FileList"),gm=t=>cs(t)&&$t(t.pipe);function ym(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const Go=ym(),Jo=typeof Go.FormData<"u"?Go.FormData:void 0,xm=t=>{if(!t)return!1;if(Jo&&t instanceof Jo)return!0;const a=Ir(t);if(!a||a===Object.prototype||!$t(t.append))return!1;const n=Mr(t);return n==="formdata"||n==="object"&&$t(t.toString)&&t.toString()==="[object FormData]"},bm=ea("URLSearchParams"),[jm,Sm,wm,vm]=["ReadableStream","Request","Response","Headers"].map(ea),Cm=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function us(t,a,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let r,o;if(typeof t!="object"&&(t=[t]),_n(t))for(r=0,o=t.length;r<o;r++)a.call(null,t[r],r,t);else{if(ds(t))return;const l=n?Object.getOwnPropertyNames(t):Object.keys(t),d=l.length;let c;for(r=0;r<d;r++)c=l[r],a.call(null,t[c],c,t)}}function Dc(t,a){if(ds(t))return null;a=a.toLowerCase();const n=Object.keys(t);let r=n.length,o;for(;r-- >0;)if(o=n[r],a===o.toLowerCase())return o;return null}const za=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Tc=t=>!xn(t)&&t!==za;function Ni(){const{caseless:t,skipUndefined:a}=Tc(this)&&this||{},n={},r=(o,l)=>{if(l==="__proto__"||l==="constructor"||l==="prototype")return;const d=t&&Dc(n,l)||l;Qs(n[d])&&Qs(o)?n[d]=Ni(n[d],o):Qs(o)?n[d]=Ni({},o):_n(o)?n[d]=o.slice():(!a||!xn(o))&&(n[d]=o)};for(let o=0,l=arguments.length;o<l;o++)arguments[o]&&us(arguments[o],r);return n}const _m=(t,a,n,{allOwnKeys:r}={})=>(us(a,(o,l)=>{n&&$t(o)?Object.defineProperty(t,l,{value:vc(o,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(t,l,{value:o,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),t),Am=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Dm=(t,a,n,r)=>{t.prototype=Object.create(a.prototype,r),Object.defineProperty(t.prototype,"constructor",{value:t,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"super",{value:a.prototype}),n&&Object.assign(t.prototype,n)},Tm=(t,a,n,r)=>{let o,l,d;const c={};if(a=a||{},t==null)return a;do{for(o=Object.getOwnPropertyNames(t),l=o.length;l-- >0;)d=o[l],(!r||r(d,t,a))&&!c[d]&&(a[d]=t[d],c[d]=!0);t=n!==!1&&Ir(t)}while(t&&(!n||n(t,a))&&t!==Object.prototype);return a},km=(t,a,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=a.length;const r=t.indexOf(a,n);return r!==-1&&r===n},Rm=t=>{if(!t)return null;if(_n(t))return t;let a=t.length;if(!Ac(a))return null;const n=new Array(a);for(;a-- >0;)n[a]=t[a];return n},Im=(t=>a=>t&&a instanceof t)(typeof Uint8Array<"u"&&Ir(Uint8Array)),Pm=(t,a)=>{const r=(t&&t[Pr]).call(t);let o;for(;(o=r.next())&&!o.done;){const l=o.value;a.call(t,l[0],l[1])}},Mm=(t,a)=>{let n;const r=[];for(;(n=t.exec(a))!==null;)r.push(n);return r},Em=ea("HTMLFormElement"),Om=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,o){return r.toUpperCase()+o}),Qo=(({hasOwnProperty:t})=>(a,n)=>t.call(a,n))(Object.prototype),$m=ea("RegExp"),kc=(t,a)=>{const n=Object.getOwnPropertyDescriptors(t),r={};us(n,(o,l)=>{let d;(d=a(o,l,t))!==!1&&(r[l]=d||o)}),Object.defineProperties(t,r)},Fm=t=>{kc(t,(a,n)=>{if($t(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=t[n];if($t(r)){if(a.enumerable=!1,"writable"in a){a.writable=!1;return}a.set||(a.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Bm=(t,a)=>{const n={},r=o=>{o.forEach(l=>{n[l]=!0})};return _n(t)?r(t):r(String(t).split(a)),n},Lm=()=>{},Um=(t,a)=>t!=null&&Number.isFinite(t=+t)?t:a;function Nm(t){return!!(t&&$t(t.append)&&t[Cc]==="FormData"&&t[Pr])}const zm=t=>{const a=new Array(10),n=(r,o)=>{if(cs(r)){if(a.indexOf(r)>=0)return;if(ds(r))return r;if(!("toJSON"in r)){a[o]=r;const l=_n(r)?[]:{};return us(r,(d,c)=>{const h=n(d,o+1);!xn(h)&&(l[c]=h)}),a[o]=void 0,l}}return r};return n(t,0)},qm=ea("AsyncFunction"),Ym=t=>t&&(cs(t)||$t(t))&&$t(t.then)&&$t(t.catch),Rc=((t,a)=>t?setImmediate:a?((n,r)=>(za.addEventListener("message",({source:o,data:l})=>{o===za&&l===n&&r.length&&r.shift()()},!1),o=>{r.push(o),za.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",$t(za.postMessage)),Wm=typeof queueMicrotask<"u"?queueMicrotask.bind(za):typeof process<"u"&&process.nextTick||Rc,Vm=t=>t!=null&&$t(t[Pr]),ie={isArray:_n,isArrayBuffer:_c,isBuffer:ds,isFormData:xm,isArrayBufferView:im,isString:om,isNumber:Ac,isBoolean:lm,isObject:cs,isPlainObject:Qs,isEmptyObject:dm,isReadableStream:jm,isRequest:Sm,isResponse:wm,isHeaders:vm,isUndefined:xn,isDate:cm,isFile:um,isReactNativeBlob:pm,isReactNative:mm,isBlob:hm,isRegExp:$m,isFunction:$t,isStream:gm,isURLSearchParams:bm,isTypedArray:Im,isFileList:fm,forEach:us,merge:Ni,extend:_m,trim:Cm,stripBOM:Am,inherits:Dm,toFlatObject:Tm,kindOf:Mr,kindOfTest:ea,endsWith:km,toArray:Rm,forEachEntry:Pm,matchAll:Mm,isHTMLForm:Em,hasOwnProperty:Qo,hasOwnProp:Qo,reduceDescriptors:kc,freezeMethods:Fm,toObjectSet:Bm,toCamelCase:Om,noop:Lm,toFiniteNumber:Um,findKey:Dc,global:za,isContextDefined:Tc,isSpecCompliantForm:Nm,toJSONObject:zm,isAsyncFn:qm,isThenable:Ym,setImmediate:Rc,asap:Wm,isIterable:Vm};let Be=class Ic extends Error{static from(a,n,r,o,l,d){const c=new Ic(a.message,n||a.code,r,o,l);return c.cause=a,c.name=a.name,a.status!=null&&c.status==null&&(c.status=a.status),d&&Object.assign(c,d),c}constructor(a,n,r,o,l){super(a),Object.defineProperty(this,"message",{value:a,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),r&&(this.config=r),o&&(this.request=o),l&&(this.response=l,this.status=l.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:ie.toJSONObject(this.config),code:this.code,status:this.status}}};Be.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";Be.ERR_BAD_OPTION="ERR_BAD_OPTION";Be.ECONNABORTED="ECONNABORTED";Be.ETIMEDOUT="ETIMEDOUT";Be.ERR_NETWORK="ERR_NETWORK";Be.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";Be.ERR_DEPRECATED="ERR_DEPRECATED";Be.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";Be.ERR_BAD_REQUEST="ERR_BAD_REQUEST";Be.ERR_CANCELED="ERR_CANCELED";Be.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";Be.ERR_INVALID_URL="ERR_INVALID_URL";Be.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const Hm=null;function zi(t){return ie.isPlainObject(t)||ie.isArray(t)}function Pc(t){return ie.endsWith(t,"[]")?t.slice(0,-2):t}function ni(t,a,n){return t?t.concat(a).map(function(o,l){return o=Pc(o),!n&&l?"["+o+"]":o}).join(n?".":""):a}function Km(t){return ie.isArray(t)&&!t.some(zi)}const Gm=ie.toFlatObject(ie,{},null,function(a){return/^is[A-Z]/.test(a)});function Or(t,a,n){if(!ie.isObject(t))throw new TypeError("target must be an object");a=a||new FormData,n=ie.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(b,T){return!ie.isUndefined(T[b])});const r=n.metaTokens,o=n.visitor||m,l=n.dots,d=n.indexes,c=n.Blob||typeof Blob<"u"&&Blob,h=n.maxDepth===void 0?100:n.maxDepth,f=c&&ie.isSpecCompliantForm(a);if(!ie.isFunction(o))throw new TypeError("visitor must be a function");function p(g){if(g===null)return"";if(ie.isDate(g))return g.toISOString();if(ie.isBoolean(g))return g.toString();if(!f&&ie.isBlob(g))throw new Be("Blob is not supported. Use a Buffer instead.");return ie.isArrayBuffer(g)||ie.isTypedArray(g)?f&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function m(g,b,T){let R=g;if(ie.isReactNative(a)&&ie.isReactNativeBlob(g))return a.append(ni(T,b,l),p(g)),!1;if(g&&!T&&typeof g=="object"){if(ie.endsWith(b,"{}"))b=r?b:b.slice(0,-2),g=JSON.stringify(g);else if(ie.isArray(g)&&Km(g)||(ie.isFileList(g)||ie.endsWith(b,"[]"))&&(R=ie.toArray(g)))return b=Pc(b),R.forEach(function(A,_){!(ie.isUndefined(A)||A===null)&&a.append(d===!0?ni([b],_,l):d===null?b:b+"[]",p(A))}),!1}return zi(g)?!0:(a.append(ni(T,b,l),p(g)),!1)}const v=[],S=Object.assign(Gm,{defaultVisitor:m,convertValue:p,isVisitable:zi});function y(g,b,T=0){if(!ie.isUndefined(g)){if(T>h)throw new Be("Object is too deeply nested ("+T+" levels). Max depth: "+h,Be.ERR_FORM_DATA_DEPTH_EXCEEDED);if(v.indexOf(g)!==-1)throw Error("Circular reference detected in "+b.join("."));v.push(g),ie.forEach(g,function(I,A){(!(ie.isUndefined(I)||I===null)&&o.call(a,I,ie.isString(A)?A.trim():A,b,S))===!0&&y(I,b?b.concat(A):[A],T+1)}),v.pop()}}if(!ie.isObject(t))throw new TypeError("data must be an object");return y(t),a}function Xo(t){const a={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(t).replace(/[!'()~]|%20/g,function(r){return a[r]})}function so(t,a){this._pairs=[],t&&Or(t,this,a)}const Mc=so.prototype;Mc.append=function(a,n){this._pairs.push([a,n])};Mc.toString=function(a){const n=a?function(r){return a.call(this,r,Xo)}:Xo;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};function Jm(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Ec(t,a,n){if(!a)return t;const r=n&&n.encode||Jm,o=ie.isFunction(n)?{serialize:n}:n,l=o&&o.serialize;let d;if(l?d=l(a,o):d=ie.isURLSearchParams(a)?a.toString():new so(a,o).toString(r),d){const c=t.indexOf("#");c!==-1&&(t=t.slice(0,c)),t+=(t.indexOf("?")===-1?"?":"&")+d}return t}class Zo{constructor(){this.handlers=[]}use(a,n,r){return this.handlers.push({fulfilled:a,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(a){this.handlers[a]&&(this.handlers[a]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(a){ie.forEach(this.handlers,function(r){r!==null&&a(r)})}}const ro={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},Qm=typeof URLSearchParams<"u"?URLSearchParams:so,Xm=typeof FormData<"u"?FormData:null,Zm=typeof Blob<"u"?Blob:null,eh={isBrowser:!0,classes:{URLSearchParams:Qm,FormData:Xm,Blob:Zm},protocols:["http","https","file","blob","url","data"]},io=typeof window<"u"&&typeof document<"u",qi=typeof navigator=="object"&&navigator||void 0,th=io&&(!qi||["ReactNative","NativeScript","NS"].indexOf(qi.product)<0),ah=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",nh=io&&window.location.href||"http://localhost",sh=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:io,hasStandardBrowserEnv:th,hasStandardBrowserWebWorkerEnv:ah,navigator:qi,origin:nh},Symbol.toStringTag,{value:"Module"})),Tt={...sh,...eh};function rh(t,a){return Or(t,new Tt.classes.URLSearchParams,{visitor:function(n,r,o,l){return Tt.isNode&&ie.isBuffer(n)?(this.append(r,n.toString("base64")),!1):l.defaultVisitor.apply(this,arguments)},...a})}function ih(t){return ie.matchAll(/\w+|\[(\w*)]/g,t).map(a=>a[0]==="[]"?"":a[1]||a[0])}function oh(t){const a={},n=Object.keys(t);let r;const o=n.length;let l;for(r=0;r<o;r++)l=n[r],a[l]=t[l];return a}function Oc(t){function a(n,r,o,l){let d=n[l++];if(d==="__proto__")return!0;const c=Number.isFinite(+d),h=l>=n.length;return d=!d&&ie.isArray(o)?o.length:d,h?(ie.hasOwnProp(o,d)?o[d]=ie.isArray(o[d])?o[d].concat(r):[o[d],r]:o[d]=r,!c):((!o[d]||!ie.isObject(o[d]))&&(o[d]=[]),a(n,r,o[d],l)&&ie.isArray(o[d])&&(o[d]=oh(o[d])),!c)}if(ie.isFormData(t)&&ie.isFunction(t.entries)){const n={};return ie.forEachEntry(t,(r,o)=>{a(ih(r),o,n,0)}),n}return null}const en=(t,a)=>t!=null&&ie.hasOwnProp(t,a)?t[a]:void 0;function lh(t,a,n){if(ie.isString(t))try{return(a||JSON.parse)(t),ie.trim(t)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(t)}const ps={transitional:ro,adapter:["xhr","http","fetch"],transformRequest:[function(a,n){const r=n.getContentType()||"",o=r.indexOf("application/json")>-1,l=ie.isObject(a);if(l&&ie.isHTMLForm(a)&&(a=new FormData(a)),ie.isFormData(a))return o?JSON.stringify(Oc(a)):a;if(ie.isArrayBuffer(a)||ie.isBuffer(a)||ie.isStream(a)||ie.isFile(a)||ie.isBlob(a)||ie.isReadableStream(a))return a;if(ie.isArrayBufferView(a))return a.buffer;if(ie.isURLSearchParams(a))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),a.toString();let c;if(l){const h=en(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return rh(a,h).toString();if((c=ie.isFileList(a))||r.indexOf("multipart/form-data")>-1){const f=en(this,"env"),p=f&&f.FormData;return Or(c?{"files[]":a}:a,p&&new p,h)}}return l||o?(n.setContentType("application/json",!1),lh(a)):a}],transformResponse:[function(a){const n=en(this,"transitional")||ps.transitional,r=n&&n.forcedJSONParsing,o=en(this,"responseType"),l=o==="json";if(ie.isResponse(a)||ie.isReadableStream(a))return a;if(a&&ie.isString(a)&&(r&&!o||l)){const c=!(n&&n.silentJSONParsing)&&l;try{return JSON.parse(a,en(this,"parseReviver"))}catch(h){if(c)throw h.name==="SyntaxError"?Be.from(h,Be.ERR_BAD_RESPONSE,this,null,en(this,"response")):h}}return a}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Tt.classes.FormData,Blob:Tt.classes.Blob},validateStatus:function(a){return a>=200&&a<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ie.forEach(["delete","get","head","post","put","patch"],t=>{ps.headers[t]={}});const dh=ie.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ch=t=>{const a={};let n,r,o;return t&&t.split(`
2
+ `).forEach(function(d){o=d.indexOf(":"),n=d.substring(0,o).trim().toLowerCase(),r=d.substring(o+1).trim(),!(!n||a[n]&&dh[n])&&(n==="set-cookie"?a[n]?a[n].push(r):a[n]=[r]:a[n]=a[n]?a[n]+", "+r:r)}),a},el=Symbol("internals"),uh=/[^\x09\x20-\x7E\x80-\xFF]/g;function ph(t){let a=0,n=t.length;for(;a<n;){const r=t.charCodeAt(a);if(r!==9&&r!==32)break;a+=1}for(;n>a;){const r=t.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return a===0&&n===t.length?t:t.slice(a,n)}function On(t){return t&&String(t).trim().toLowerCase()}function mh(t){return ph(t.replace(uh,""))}function Xs(t){return t===!1||t==null?t:ie.isArray(t)?t.map(Xs):mh(String(t))}function hh(t){const a=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(t);)a[r[1]]=r[2];return a}const fh=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function si(t,a,n,r,o){if(ie.isFunction(r))return r.call(this,a,n);if(o&&(a=n),!!ie.isString(a)){if(ie.isString(r))return a.indexOf(r)!==-1;if(ie.isRegExp(r))return r.test(a)}}function gh(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(a,n,r)=>n.toUpperCase()+r)}function yh(t,a){const n=ie.toCamelCase(" "+a);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+n,{value:function(o,l,d){return this[r].call(this,a,o,l,d)},configurable:!0})})}let Ft=class{constructor(a){a&&this.set(a)}set(a,n,r){const o=this;function l(c,h,f){const p=On(h);if(!p)throw new Error("header name must be a non-empty string");const m=ie.findKey(o,p);(!m||o[m]===void 0||f===!0||f===void 0&&o[m]!==!1)&&(o[m||h]=Xs(c))}const d=(c,h)=>ie.forEach(c,(f,p)=>l(f,p,h));if(ie.isPlainObject(a)||a instanceof this.constructor)d(a,n);else if(ie.isString(a)&&(a=a.trim())&&!fh(a))d(ch(a),n);else if(ie.isObject(a)&&ie.isIterable(a)){let c={},h,f;for(const p of a){if(!ie.isArray(p))throw TypeError("Object iterator must return a key-value pair");c[f=p[0]]=(h=c[f])?ie.isArray(h)?[...h,p[1]]:[h,p[1]]:p[1]}d(c,n)}else a!=null&&l(n,a,r);return this}get(a,n){if(a=On(a),a){const r=ie.findKey(this,a);if(r){const o=this[r];if(!n)return o;if(n===!0)return hh(o);if(ie.isFunction(n))return n.call(this,o,r);if(ie.isRegExp(n))return n.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(a,n){if(a=On(a),a){const r=ie.findKey(this,a);return!!(r&&this[r]!==void 0&&(!n||si(this,this[r],r,n)))}return!1}delete(a,n){const r=this;let o=!1;function l(d){if(d=On(d),d){const c=ie.findKey(r,d);c&&(!n||si(r,r[c],c,n))&&(delete r[c],o=!0)}}return ie.isArray(a)?a.forEach(l):l(a),o}clear(a){const n=Object.keys(this);let r=n.length,o=!1;for(;r--;){const l=n[r];(!a||si(this,this[l],l,a,!0))&&(delete this[l],o=!0)}return o}normalize(a){const n=this,r={};return ie.forEach(this,(o,l)=>{const d=ie.findKey(r,l);if(d){n[d]=Xs(o),delete n[l];return}const c=a?gh(l):String(l).trim();c!==l&&delete n[l],n[c]=Xs(o),r[c]=!0}),this}concat(...a){return this.constructor.concat(this,...a)}toJSON(a){const n=Object.create(null);return ie.forEach(this,(r,o)=>{r!=null&&r!==!1&&(n[o]=a&&ie.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([a,n])=>a+": "+n).join(`
3
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(a){return a instanceof this?a:new this(a)}static concat(a,...n){const r=new this(a);return n.forEach(o=>r.set(o)),r}static accessor(a){const r=(this[el]=this[el]={accessors:{}}).accessors,o=this.prototype;function l(d){const c=On(d);r[c]||(yh(o,d),r[c]=!0)}return ie.isArray(a)?a.forEach(l):l(a),this}};Ft.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);ie.reduceDescriptors(Ft.prototype,({value:t},a)=>{let n=a[0].toUpperCase()+a.slice(1);return{get:()=>t,set(r){this[n]=r}}});ie.freezeMethods(Ft);function ri(t,a){const n=this||ps,r=a||n,o=Ft.from(r.headers);let l=r.data;return ie.forEach(t,function(c){l=c.call(n,l,o.normalize(),a?a.status:void 0)}),o.normalize(),l}function $c(t){return!!(t&&t.__CANCEL__)}let ms=class extends Be{constructor(a,n,r){super(a??"canceled",Be.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function Fc(t,a,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?t(n):a(new Be("Request failed with status code "+n.status,[Be.ERR_BAD_REQUEST,Be.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function xh(t){const a=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return a&&a[1]||""}function bh(t,a){t=t||10;const n=new Array(t),r=new Array(t);let o=0,l=0,d;return a=a!==void 0?a:1e3,function(h){const f=Date.now(),p=r[l];d||(d=f),n[o]=h,r[o]=f;let m=l,v=0;for(;m!==o;)v+=n[m++],m=m%t;if(o=(o+1)%t,o===l&&(l=(l+1)%t),f-d<a)return;const S=p&&f-p;return S?Math.round(v*1e3/S):void 0}}function jh(t,a){let n=0,r=1e3/a,o,l;const d=(f,p=Date.now())=>{n=p,o=null,l&&(clearTimeout(l),l=null),t(...f)};return[(...f)=>{const p=Date.now(),m=p-n;m>=r?d(f,p):(o=f,l||(l=setTimeout(()=>{l=null,d(o)},r-m)))},()=>o&&d(o)]}const yr=(t,a,n=3)=>{let r=0;const o=bh(50,250);return jh(l=>{const d=l.loaded,c=l.lengthComputable?l.total:void 0,h=c!=null?Math.min(d,c):d,f=Math.max(0,h-r),p=o(f);r=Math.max(r,h);const m={loaded:h,total:c,progress:c?h/c:void 0,bytes:f,rate:p||void 0,estimated:p&&c?(c-h)/p:void 0,event:l,lengthComputable:c!=null,[a?"download":"upload"]:!0};t(m)},n)},tl=(t,a)=>{const n=t!=null;return[r=>a[0]({lengthComputable:n,total:t,loaded:r}),a[1]]},al=t=>(...a)=>ie.asap(()=>t(...a)),Sh=Tt.hasStandardBrowserEnv?((t,a)=>n=>(n=new URL(n,Tt.origin),t.protocol===n.protocol&&t.host===n.host&&(a||t.port===n.port)))(new URL(Tt.origin),Tt.navigator&&/(msie|trident)/i.test(Tt.navigator.userAgent)):()=>!0,wh=Tt.hasStandardBrowserEnv?{write(t,a,n,r,o,l,d){if(typeof document>"u")return;const c=[`${t}=${encodeURIComponent(a)}`];ie.isNumber(n)&&c.push(`expires=${new Date(n).toUTCString()}`),ie.isString(r)&&c.push(`path=${r}`),ie.isString(o)&&c.push(`domain=${o}`),l===!0&&c.push("secure"),ie.isString(d)&&c.push(`SameSite=${d}`),document.cookie=c.join("; ")},read(t){if(typeof document>"u")return null;const a=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return a?decodeURIComponent(a[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function vh(t){return typeof t!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Ch(t,a){return a?t.replace(/\/?\/$/,"")+"/"+a.replace(/^\/+/,""):t}function Bc(t,a,n){let r=!vh(a);return t&&(r||n===!1)?Ch(t,a):a}const nl=t=>t instanceof Ft?{...t}:t;function Va(t,a){a=a||{};const n=Object.create(null);Object.defineProperty(n,"hasOwnProperty",{value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(f,p,m,v){return ie.isPlainObject(f)&&ie.isPlainObject(p)?ie.merge.call({caseless:v},f,p):ie.isPlainObject(p)?ie.merge({},p):ie.isArray(p)?p.slice():p}function o(f,p,m,v){if(ie.isUndefined(p)){if(!ie.isUndefined(f))return r(void 0,f,m,v)}else return r(f,p,m,v)}function l(f,p){if(!ie.isUndefined(p))return r(void 0,p)}function d(f,p){if(ie.isUndefined(p)){if(!ie.isUndefined(f))return r(void 0,f)}else return r(void 0,p)}function c(f,p,m){if(ie.hasOwnProp(a,m))return r(f,p);if(ie.hasOwnProp(t,m))return r(void 0,f)}const h={url:l,method:l,data:l,baseURL:d,transformRequest:d,transformResponse:d,paramsSerializer:d,timeout:d,timeoutMessage:d,withCredentials:d,withXSRFToken:d,adapter:d,responseType:d,xsrfCookieName:d,xsrfHeaderName:d,onUploadProgress:d,onDownloadProgress:d,decompress:d,maxContentLength:d,maxBodyLength:d,beforeRedirect:d,transport:d,httpAgent:d,httpsAgent:d,cancelToken:d,socketPath:d,allowedSocketPaths:d,responseEncoding:d,validateStatus:c,headers:(f,p,m)=>o(nl(f),nl(p),m,!0)};return ie.forEach(Object.keys({...t,...a}),function(p){if(p==="__proto__"||p==="constructor"||p==="prototype")return;const m=ie.hasOwnProp(h,p)?h[p]:o,v=ie.hasOwnProp(t,p)?t[p]:void 0,S=ie.hasOwnProp(a,p)?a[p]:void 0,y=m(v,S,p);ie.isUndefined(y)&&m!==c||(n[p]=y)}),n}const Lc=t=>{const a=Va({},t),n=v=>ie.hasOwnProp(a,v)?a[v]:void 0,r=n("data");let o=n("withXSRFToken");const l=n("xsrfHeaderName"),d=n("xsrfCookieName");let c=n("headers");const h=n("auth"),f=n("baseURL"),p=n("allowAbsoluteUrls"),m=n("url");if(a.headers=c=Ft.from(c),a.url=Ec(Bc(f,m,p),t.params,t.paramsSerializer),h&&c.set("Authorization","Basic "+btoa((h.username||"")+":"+(h.password?unescape(encodeURIComponent(h.password)):""))),ie.isFormData(r)){if(Tt.hasStandardBrowserEnv||Tt.hasStandardBrowserWebWorkerEnv)c.setContentType(void 0);else if(ie.isFunction(r.getHeaders)){const v=r.getHeaders(),S=["content-type","content-length"];Object.entries(v).forEach(([y,g])=>{S.includes(y.toLowerCase())&&c.set(y,g)})}}if(Tt.hasStandardBrowserEnv&&(ie.isFunction(o)&&(o=o(a)),o===!0||o==null&&Sh(a.url))){const S=l&&d&&wh.read(d);S&&c.set(l,S)}return a},_h=typeof XMLHttpRequest<"u",Ah=_h&&function(t){return new Promise(function(n,r){const o=Lc(t);let l=o.data;const d=Ft.from(o.headers).normalize();let{responseType:c,onUploadProgress:h,onDownloadProgress:f}=o,p,m,v,S,y;function g(){S&&S(),y&&y(),o.cancelToken&&o.cancelToken.unsubscribe(p),o.signal&&o.signal.removeEventListener("abort",p)}let b=new XMLHttpRequest;b.open(o.method.toUpperCase(),o.url,!0),b.timeout=o.timeout;function T(){if(!b)return;const I=Ft.from("getAllResponseHeaders"in b&&b.getAllResponseHeaders()),_={data:!c||c==="text"||c==="json"?b.responseText:b.response,status:b.status,statusText:b.statusText,headers:I,config:t,request:b};Fc(function(x){n(x),g()},function(x){r(x),g()},_),b=null}"onloadend"in b?b.onloadend=T:b.onreadystatechange=function(){!b||b.readyState!==4||b.status===0&&!(b.responseURL&&b.responseURL.indexOf("file:")===0)||setTimeout(T)},b.onabort=function(){b&&(r(new Be("Request aborted",Be.ECONNABORTED,t,b)),b=null)},b.onerror=function(A){const _=A&&A.message?A.message:"Network Error",u=new Be(_,Be.ERR_NETWORK,t,b);u.event=A||null,r(u),b=null},b.ontimeout=function(){let A=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const _=o.transitional||ro;o.timeoutErrorMessage&&(A=o.timeoutErrorMessage),r(new Be(A,_.clarifyTimeoutError?Be.ETIMEDOUT:Be.ECONNABORTED,t,b)),b=null},l===void 0&&d.setContentType(null),"setRequestHeader"in b&&ie.forEach(d.toJSON(),function(A,_){b.setRequestHeader(_,A)}),ie.isUndefined(o.withCredentials)||(b.withCredentials=!!o.withCredentials),c&&c!=="json"&&(b.responseType=o.responseType),f&&([v,y]=yr(f,!0),b.addEventListener("progress",v)),h&&b.upload&&([m,S]=yr(h),b.upload.addEventListener("progress",m),b.upload.addEventListener("loadend",S)),(o.cancelToken||o.signal)&&(p=I=>{b&&(r(!I||I.type?new ms(null,t,b):I),b.abort(),b=null)},o.cancelToken&&o.cancelToken.subscribe(p),o.signal&&(o.signal.aborted?p():o.signal.addEventListener("abort",p)));const R=xh(o.url);if(R&&Tt.protocols.indexOf(R)===-1){r(new Be("Unsupported protocol "+R+":",Be.ERR_BAD_REQUEST,t));return}b.send(l||null)})},Dh=(t,a)=>{const{length:n}=t=t?t.filter(Boolean):[];if(a||n){let r=new AbortController,o;const l=function(f){if(!o){o=!0,c();const p=f instanceof Error?f:this.reason;r.abort(p instanceof Be?p:new ms(p instanceof Error?p.message:p))}};let d=a&&setTimeout(()=>{d=null,l(new Be(`timeout of ${a}ms exceeded`,Be.ETIMEDOUT))},a);const c=()=>{t&&(d&&clearTimeout(d),d=null,t.forEach(f=>{f.unsubscribe?f.unsubscribe(l):f.removeEventListener("abort",l)}),t=null)};t.forEach(f=>f.addEventListener("abort",l));const{signal:h}=r;return h.unsubscribe=()=>ie.asap(c),h}},Th=function*(t,a){let n=t.byteLength;if(n<a){yield t;return}let r=0,o;for(;r<n;)o=r+a,yield t.slice(r,o),r=o},kh=async function*(t,a){for await(const n of Rh(t))yield*Th(n,a)},Rh=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}const a=t.getReader();try{for(;;){const{done:n,value:r}=await a.read();if(n)break;yield r}}finally{await a.cancel()}},sl=(t,a,n,r)=>{const o=kh(t,a);let l=0,d,c=h=>{d||(d=!0,r&&r(h))};return new ReadableStream({async pull(h){try{const{done:f,value:p}=await o.next();if(f){c(),h.close();return}let m=p.byteLength;if(n){let v=l+=m;n(v)}h.enqueue(new Uint8Array(p))}catch(f){throw c(f),f}},cancel(h){return c(h),o.return()}},{highWaterMark:2})},rl=64*1024,{isFunction:ks}=ie,Ih=(({Request:t,Response:a})=>({Request:t,Response:a}))(ie.global),{ReadableStream:il,TextEncoder:ol}=ie.global,ll=(t,...a)=>{try{return!!t(...a)}catch{return!1}},Ph=t=>{t=ie.merge.call({skipUndefined:!0},Ih,t);const{fetch:a,Request:n,Response:r}=t,o=a?ks(a):typeof fetch=="function",l=ks(n),d=ks(r);if(!o)return!1;const c=o&&ks(il),h=o&&(typeof ol=="function"?(y=>g=>y.encode(g))(new ol):async y=>new Uint8Array(await new n(y).arrayBuffer())),f=l&&c&&ll(()=>{let y=!1;const g=new n(Tt.origin,{body:new il,method:"POST",get duplex(){return y=!0,"half"}}),b=g.headers.has("Content-Type");return g.body!=null&&g.body.cancel(),y&&!b}),p=d&&c&&ll(()=>ie.isReadableStream(new r("").body)),m={stream:p&&(y=>y.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(y=>{!m[y]&&(m[y]=(g,b)=>{let T=g&&g[y];if(T)return T.call(g);throw new Be(`Response type '${y}' is not supported`,Be.ERR_NOT_SUPPORT,b)})});const v=async y=>{if(y==null)return 0;if(ie.isBlob(y))return y.size;if(ie.isSpecCompliantForm(y))return(await new n(Tt.origin,{method:"POST",body:y}).arrayBuffer()).byteLength;if(ie.isArrayBufferView(y)||ie.isArrayBuffer(y))return y.byteLength;if(ie.isURLSearchParams(y)&&(y=y+""),ie.isString(y))return(await h(y)).byteLength},S=async(y,g)=>{const b=ie.toFiniteNumber(y.getContentLength());return b??v(g)};return async y=>{let{url:g,method:b,data:T,signal:R,cancelToken:I,timeout:A,onDownloadProgress:_,onUploadProgress:u,responseType:x,headers:j,withCredentials:M="same-origin",fetchOptions:O}=Lc(y),z=a||fetch;x=x?(x+"").toLowerCase():"text";let k=Dh([R,I&&I.toAbortSignal()],A),F=null;const C=k&&k.unsubscribe&&(()=>{k.unsubscribe()});let E;try{if(u&&f&&b!=="get"&&b!=="head"&&(E=await S(j,T))!==0){let B=new n(g,{method:"POST",body:T,duplex:"half"}),$;if(ie.isFormData(T)&&($=B.headers.get("content-type"))&&j.setContentType($),B.body){const[N,V]=tl(E,yr(al(u)));T=sl(B.body,rl,N,V)}}ie.isString(M)||(M=M?"include":"omit");const P=l&&"credentials"in n.prototype;if(ie.isFormData(T)){const B=j.getContentType();B&&/^multipart\/form-data/i.test(B)&&!/boundary=/i.test(B)&&j.delete("content-type")}const U={...O,signal:k,method:b.toUpperCase(),headers:j.normalize().toJSON(),body:T,duplex:"half",credentials:P?M:void 0};F=l&&new n(g,U);let H=await(l?z(F,O):z(g,U));const W=p&&(x==="stream"||x==="response");if(p&&(_||W&&C)){const B={};["status","statusText","headers"].forEach(Q=>{B[Q]=H[Q]});const $=ie.toFiniteNumber(H.headers.get("content-length")),[N,V]=_&&tl($,yr(al(_),!0))||[];H=new r(sl(H.body,rl,N,()=>{V&&V(),C&&C()}),B)}x=x||"text";let L=await m[ie.findKey(m,x)||"text"](H,y);return!W&&C&&C(),await new Promise((B,$)=>{Fc(B,$,{data:L,headers:Ft.from(H.headers),status:H.status,statusText:H.statusText,config:y,request:F})})}catch(P){throw C&&C(),P&&P.name==="TypeError"&&/Load failed|fetch/i.test(P.message)?Object.assign(new Be("Network Error",Be.ERR_NETWORK,y,F,P&&P.response),{cause:P.cause||P}):Be.from(P,P&&P.code,y,F,P&&P.response)}}},Mh=new Map,Uc=t=>{let a=t&&t.env||{};const{fetch:n,Request:r,Response:o}=a,l=[r,o,n];let d=l.length,c=d,h,f,p=Mh;for(;c--;)h=l[c],f=p.get(h),f===void 0&&p.set(h,f=c?new Map:Ph(a)),p=f;return f};Uc();const oo={http:Hm,xhr:Ah,fetch:{get:Uc}};ie.forEach(oo,(t,a)=>{if(t){try{Object.defineProperty(t,"name",{value:a})}catch{}Object.defineProperty(t,"adapterName",{value:a})}});const dl=t=>`- ${t}`,Eh=t=>ie.isFunction(t)||t===null||t===!1;function Oh(t,a){t=ie.isArray(t)?t:[t];const{length:n}=t;let r,o;const l={};for(let d=0;d<n;d++){r=t[d];let c;if(o=r,!Eh(r)&&(o=oo[(c=String(r)).toLowerCase()],o===void 0))throw new Be(`Unknown adapter '${c}'`);if(o&&(ie.isFunction(o)||(o=o.get(a))))break;l[c||"#"+d]=o}if(!o){const d=Object.entries(l).map(([h,f])=>`adapter ${h} `+(f===!1?"is not supported by the environment":"is not available in the build"));let c=n?d.length>1?`since :
4
+ `+d.map(dl).join(`
5
+ `):" "+dl(d[0]):"as no adapter specified";throw new Be("There is no suitable adapter to dispatch the request "+c,"ERR_NOT_SUPPORT")}return o}const Nc={getAdapter:Oh,adapters:oo};function ii(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ms(null,t)}function cl(t){return ii(t),t.headers=Ft.from(t.headers),t.data=ri.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Nc.getAdapter(t.adapter||ps.adapter,t)(t).then(function(r){return ii(t),r.data=ri.call(t,t.transformResponse,r),r.headers=Ft.from(r.headers),r},function(r){return $c(r)||(ii(t),r&&r.response&&(r.response.data=ri.call(t,t.transformResponse,r.response),r.response.headers=Ft.from(r.response.headers))),Promise.reject(r)})}const zc="1.15.2",$r={};["object","boolean","number","function","string","symbol"].forEach((t,a)=>{$r[t]=function(r){return typeof r===t||"a"+(a<1?"n ":" ")+t}});const ul={};$r.transitional=function(a,n,r){function o(l,d){return"[Axios v"+zc+"] Transitional option '"+l+"'"+d+(r?". "+r:"")}return(l,d,c)=>{if(a===!1)throw new Be(o(d," has been removed"+(n?" in "+n:"")),Be.ERR_DEPRECATED);return n&&!ul[d]&&(ul[d]=!0,console.warn(o(d," has been deprecated since v"+n+" and will be removed in the near future"))),a?a(l,d,c):!0}};$r.spelling=function(a){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${a}`),!0)};function $h(t,a,n){if(typeof t!="object")throw new Be("options must be an object",Be.ERR_BAD_OPTION_VALUE);const r=Object.keys(t);let o=r.length;for(;o-- >0;){const l=r[o],d=Object.prototype.hasOwnProperty.call(a,l)?a[l]:void 0;if(d){const c=t[l],h=c===void 0||d(c,l,t);if(h!==!0)throw new Be("option "+l+" must be "+h,Be.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new Be("Unknown option "+l,Be.ERR_BAD_OPTION)}}const Zs={assertOptions:$h,validators:$r},Ht=Zs.validators;let qa=class{constructor(a){this.defaults=a||{},this.interceptors={request:new Zo,response:new Zo}}async request(a,n){try{return await this._request(a,n)}catch(r){if(r instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const l=(()=>{if(!o.stack)return"";const d=o.stack.indexOf(`
6
+ `);return d===-1?"":o.stack.slice(d+1)})();try{if(!r.stack)r.stack=l;else if(l){const d=l.indexOf(`
7
+ `),c=d===-1?-1:l.indexOf(`
8
+ `,d+1),h=c===-1?"":l.slice(c+1);String(r.stack).endsWith(h)||(r.stack+=`
9
+ `+l)}}catch{}}throw r}}_request(a,n){typeof a=="string"?(n=n||{},n.url=a):n=a||{},n=Va(this.defaults,n);const{transitional:r,paramsSerializer:o,headers:l}=n;r!==void 0&&Zs.assertOptions(r,{silentJSONParsing:Ht.transitional(Ht.boolean),forcedJSONParsing:Ht.transitional(Ht.boolean),clarifyTimeoutError:Ht.transitional(Ht.boolean),legacyInterceptorReqResOrdering:Ht.transitional(Ht.boolean)},!1),o!=null&&(ie.isFunction(o)?n.paramsSerializer={serialize:o}:Zs.assertOptions(o,{encode:Ht.function,serialize:Ht.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Zs.assertOptions(n,{baseUrl:Ht.spelling("baseURL"),withXsrfToken:Ht.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let d=l&&ie.merge(l.common,l[n.method]);l&&ie.forEach(["delete","get","head","post","put","patch","common"],y=>{delete l[y]}),n.headers=Ft.concat(d,l);const c=[];let h=!0;this.interceptors.request.forEach(function(g){if(typeof g.runWhen=="function"&&g.runWhen(n)===!1)return;h=h&&g.synchronous;const b=n.transitional||ro;b&&b.legacyInterceptorReqResOrdering?c.unshift(g.fulfilled,g.rejected):c.push(g.fulfilled,g.rejected)});const f=[];this.interceptors.response.forEach(function(g){f.push(g.fulfilled,g.rejected)});let p,m=0,v;if(!h){const y=[cl.bind(this),void 0];for(y.unshift(...c),y.push(...f),v=y.length,p=Promise.resolve(n);m<v;)p=p.then(y[m++],y[m++]);return p}v=c.length;let S=n;for(;m<v;){const y=c[m++],g=c[m++];try{S=y(S)}catch(b){g.call(this,b);break}}try{p=cl.call(this,S)}catch(y){return Promise.reject(y)}for(m=0,v=f.length;m<v;)p=p.then(f[m++],f[m++]);return p}getUri(a){a=Va(this.defaults,a);const n=Bc(a.baseURL,a.url,a.allowAbsoluteUrls);return Ec(n,a.params,a.paramsSerializer)}};ie.forEach(["delete","get","head","options"],function(a){qa.prototype[a]=function(n,r){return this.request(Va(r||{},{method:a,url:n,data:(r||{}).data}))}});ie.forEach(["post","put","patch"],function(a){function n(r){return function(l,d,c){return this.request(Va(c||{},{method:a,headers:r?{"Content-Type":"multipart/form-data"}:{},url:l,data:d}))}}qa.prototype[a]=n(),qa.prototype[a+"Form"]=n(!0)});let Fh=class qc{constructor(a){if(typeof a!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(l){n=l});const r=this;this.promise.then(o=>{if(!r._listeners)return;let l=r._listeners.length;for(;l-- >0;)r._listeners[l](o);r._listeners=null}),this.promise.then=o=>{let l;const d=new Promise(c=>{r.subscribe(c),l=c}).then(o);return d.cancel=function(){r.unsubscribe(l)},d},a(function(l,d,c){r.reason||(r.reason=new ms(l,d,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(a){if(this.reason){a(this.reason);return}this._listeners?this._listeners.push(a):this._listeners=[a]}unsubscribe(a){if(!this._listeners)return;const n=this._listeners.indexOf(a);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const a=new AbortController,n=r=>{a.abort(r)};return this.subscribe(n),a.signal.unsubscribe=()=>this.unsubscribe(n),a.signal}static source(){let a;return{token:new qc(function(o){a=o}),cancel:a}}};function Bh(t){return function(n){return t.apply(null,n)}}function Lh(t){return ie.isObject(t)&&t.isAxiosError===!0}const Yi={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Yi).forEach(([t,a])=>{Yi[a]=t});function Yc(t){const a=new qa(t),n=vc(qa.prototype.request,a);return ie.extend(n,qa.prototype,a,{allOwnKeys:!0}),ie.extend(n,a,null,{allOwnKeys:!0}),n.create=function(o){return Yc(Va(t,o))},n}const dt=Yc(ps);dt.Axios=qa;dt.CanceledError=ms;dt.CancelToken=Fh;dt.isCancel=$c;dt.VERSION=zc;dt.toFormData=Or;dt.AxiosError=Be;dt.Cancel=dt.CanceledError;dt.all=function(a){return Promise.all(a)};dt.spread=Bh;dt.isAxiosError=Lh;dt.mergeConfig=Va;dt.AxiosHeaders=Ft;dt.formToJSON=t=>Oc(ie.isHTMLForm(t)?new FormData(t):t);dt.getAdapter=Nc.getAdapter;dt.HttpStatusCode=Yi;dt.default=dt;const{Axios:jA,AxiosError:SA,CanceledError:wA,isCancel:vA,CancelToken:CA,VERSION:_A,all:AA,Cancel:DA,isAxiosError:TA,spread:kA,toFormData:RA,AxiosHeaders:IA,HttpStatusCode:PA,formToJSON:MA,getAdapter:EA,mergeConfig:OA}=dt,Uh=()=>new Promise(t=>setTimeout(()=>t(),800));let Wi=null;const Nh=t=>{Wi=t,_t.defaults.baseURL=lo()},lo=()=>Wi||"https://npmapi.ubkerp.com/",_t=dt.create({baseURL:lo()}),Nt=()=>lo();let Vi=null;const zh=t=>{Vi=t},ut=()=>Vi||"https://image.ubkerp.com",qh=t=>{if(!t||typeof t!="string")return null;const a=t.split(".");if(a.length<2)return null;try{let n=a[1];n=n.replace(/-/g,"+").replace(/_/g,"/");const r=(4-n.length%4)%4;n+="=".repeat(r);const o=typeof atob=="function"?atob(n):Buffer.from(n,"base64").toString("binary");return JSON.parse(o)}catch{return null}},ya=t=>{const a=qh(t);return a?a?.branch_id??a?.branchID??a?.fk_branchID??a?.branch??null:null},Ze=async(t,a,n)=>{const r=await _t.post(t,a,{headers:{Authorization:n}});if(r.data?.Status=="Success")return r?.data?.data||r?.data;throw new Error(r.data?.msg)},bn=async(t,a,n)=>{const r=a instanceof FormData;return(await _t.post(t,a,{headers:{Authorization:n,...r?{"Content-type":"multipart/form-data"}:{}}})).data},Y=async(t,a)=>{try{const n=(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1"}catch{return"1"}})();let r=t;if(!t.includes("session_id")&&n){const l=t.includes("?")?"&":"?";r=`${t}${l}session_id=${n}`}return(await _t.get(r,{headers:{Authorization:a}})).data}catch(n){throw n.response?.status===401&&console.error("401 Unauthorized"),n}},Yh=async(t,a)=>{const n=await _t.post(t,"",{headers:{Authorization:a}});if(n.data?.Status=="Success")return n?.data?.data||n?.data;throw new Error(n.data?.msg)},Wc=async(t,a,n)=>{const r=await _t.post(t,a,{headers:{Authorization:n}});if(r.data?.Status=="Success")return!0;throw new Error(r?.data?.msg||"Request failed")},hs=async(t,a,n)=>{try{const r=await _t.post(t,a,{headers:{Authorization:n,"Content-Type":"application/json"}});return r.data?.Status==="Success"?r.data:(D.error(r.data?.msg||"Unable to issue library book",{duration:2e3}),!1)}catch(r){throw D.error(r.response?.data?.msg||r.response?.data?.message||"Request failed",{duration:2e3}),r}},gn=async(t,a,n)=>{const r=a?.arg;return(await _t.post(t,r,{headers:{Authorization:n}}))?.data},Da=async(t,a,n)=>{const r=a?.arg,o=t.includes("?")?"&":"?";return(await _t.get(t+o,{params:r,headers:{Authorization:n}}))?.data},Wh="api/branchapi/GeneralSettings/getsetting_allowances_dedectionBranch",co=async(t,a,n)=>{const r=a?.arg,o=t.includes("?")?"&":"?",l=await _t.get(t+o,{params:r,headers:{Authorization:n}});if(l?.data?.Status=="Success")return l?.data?.data||l?.data;throw new Error(l?.data?.msg||"Request failed")},ct=async(t,a,n)=>(await Uh(),(await _t.post(t,a,{headers:{Authorization:n}}))?.data),An=async(t,a,n)=>(await _t.post(t,a,{headers:{Authorization:n}})).data,st=async(t,a,n)=>(await _t.delete(`${t}/${a}`,{headers:{Authorization:n}})).data,Vh="api/report/LibraryRenewalReport/renewalHistory",Hh="api/report/LibraryRenewalReport/renewalFineReport",Kh="api/report/LibraryRenewalReport/currentlyRenewedBooks",Gh="api/report/LibraryRenewalReport/upcomingRenewalDue",Jh="api/report/LibraryRenewalReport/overdueRenewalReport",Qh="api/report/LibraryRenewalReport/renewalLimitReport",Xh="api/report/LibraryRenewalReport/renewalStatusReport",Zh="api/report/LibraryRenewalReport/studentWiseReport",ef="api/report/LibraryRenewalReport/bookWiseReport",tf="api/report/LibraryRenewalReport/classWiseReport",af="api/report/LibraryRenewalReport/staffWiseReport",nf="api/report/LibraryRenewalReport/renewalStatisticsByDate",sf="/sample_templates/route_upload.xlsx",oa="api/branchapi/academy/classdropdownlist",la="api/branchapi/academy/sectionoftheClass",Fr="api/branchapi/academy/classSubjectdropdown",rf="/sample_templates/student_transport_upload.xlsx",of="api/branchapi/income/incomeTableList",lf="api/branchapi/income/addincome",df="api/branchapi/income/editincome",cf="api/branchapi/income/deleteincome",Vc="api/branchapi/income/incomeheadDropdown",uf="api/branchapi/income/incomeheadTableList",pf="api/branchapi/income/addincomehead",mf="api/branchapi/income/editincomehead",hf="api/branchapi/income/deleteincomehead",ff="api/branchapi/income/incomeShowdata",gf="api/branchapi/income/incomeheadShowdata",yf="api/branchapi/income/searchincomebydates",xf="api/branchapi/expense/expenseTableList",bf="api/branchapi/expense/addexpense",jf="api/branchapi/expense/editexpense",Sf="api/branchapi/expense/deleteExpense",Hc="api/branchapi/expense/expenseheadDropdown",wf="api/branchapi/expense/expenseheadTableList",vf="api/branchapi/expense/addexpensehead",Cf="api/branchapi/expense/editexpensehead",_f="api/branchapi/expense/deleteexpensehead",Af="api/branchapi/expense/expenseShowdata",Df="api/branchapi/expense/expenseVoucherbyID",Tf="api/branchapi/expense/expenseheadShowdata",kf="api/branchapi/expense/searchexpensebydates",Kc="api/accounts/vendor/vendorlist",Rf="api/student/studentDetails/studentLoginCredentialList",Gc="/branchapi/student/studentlist",Jc="api/branchapi/student/studentsearchbyKeywords",Qc="api/branchapi/student/studentsearchbyClassSection",If="/branchapi/student/addStudentMedicineDetails",Pf="/branchapi/student/StudentMedicineDetails",Xc="/branchapi/academy/getstudentClasssubjectByStudentId",Mf="/branchapi/academy/removeAssignStudentSubject",Hi="/branchapi/feesCollection/extraCurricularActivitiesFess",Ef="/branchapi/academy/unAssigneStudentSubject",Of="/branchapi/student/uploadstudentbyCSV",$f="api/branchapi/academy/categorytableList",Ff="api/branchapi/transport/downloadBulkTemplate",Bf="api/branchapi/transport/validateBulkUpload",Lf="api/branchapi/transport/confirmBulkImport",Uf="api/branchapi/transport/downloadBulkErrorReport",Nf=async({class_id:t,section_id:a}={},n)=>{const r=new URLSearchParams;t&&r.append("class_id",t),a&&r.append("section_id",a);const o=`${Ff}${r.toString()?`?${r.toString()}`:""}`;return(await _t.get(o,{headers:{Authorization:n},responseType:"blob"})).data},zf=async(t,a)=>{const n=new FormData;return n.append("file",t),(await _t.post(Bf,n,{headers:{Authorization:a,"Content-Type":"multipart/form-data"}})).data},qf=async(t,a,n="skip")=>(await _t.post(Lf,{rows:t,duplicate_action:n},{headers:{Authorization:a,"Content-Type":"application/json"}})).data,Yf=async(t,a)=>(await _t.post(Uf,{rows:t},{headers:{Authorization:a,"Content-Type":"application/json"},responseType:"blob"})).data,Wf=({token:t,menu:a})=>{const{isLoading:n,data:r}=q(t?["api/sdk/Menus",t]:null,([l,d])=>Yh(l,d)),o=r?.find(l=>l.path===a)?.sub_menu??[];return console.log("menuData",r),e.jsx(s.Row,{gutter:[16,16],children:o?.map((l,d)=>l.dashboard_show==="YES"?e.jsx(s.Col,{xs:24,md:8,lg:8,children:e.jsx(w,{children:e.jsx(wc,{icon:`${Nt()}icons/frontoffice/${l.icons}`,title:l.submenu_name,path:l.menu_key})})},`${d}office001`):null)})};function Zc(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var jt={},oi,pl;function Vf(){return pl||(pl=1,oi=function t(a,n){if(a===n)return!0;if(a&&n&&typeof a=="object"&&typeof n=="object"){if(a.constructor!==n.constructor)return!1;var r,o,l;if(Array.isArray(a)){if(r=a.length,r!=n.length)return!1;for(o=r;o--!==0;)if(!t(a[o],n[o]))return!1;return!0}if(a.constructor===RegExp)return a.source===n.source&&a.flags===n.flags;if(a.valueOf!==Object.prototype.valueOf)return a.valueOf()===n.valueOf();if(a.toString!==Object.prototype.toString)return a.toString()===n.toString();if(l=Object.keys(a),r=l.length,r!==Object.keys(n).length)return!1;for(o=r;o--!==0;)if(!Object.prototype.hasOwnProperty.call(n,l[o]))return!1;for(o=r;o--!==0;){var d=l[o];if(!t(a[d],n[d]))return!1}return!0}return a!==a&&n!==n}),oi}var Rs={exports:{}},Is={exports:{}},et={};var ml;function Hf(){if(ml)return et;ml=1;var t=typeof Symbol=="function"&&Symbol.for,a=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,r=t?Symbol.for("react.fragment"):60107,o=t?Symbol.for("react.strict_mode"):60108,l=t?Symbol.for("react.profiler"):60114,d=t?Symbol.for("react.provider"):60109,c=t?Symbol.for("react.context"):60110,h=t?Symbol.for("react.async_mode"):60111,f=t?Symbol.for("react.concurrent_mode"):60111,p=t?Symbol.for("react.forward_ref"):60112,m=t?Symbol.for("react.suspense"):60113,v=t?Symbol.for("react.suspense_list"):60120,S=t?Symbol.for("react.memo"):60115,y=t?Symbol.for("react.lazy"):60116,g=t?Symbol.for("react.block"):60121,b=t?Symbol.for("react.fundamental"):60117,T=t?Symbol.for("react.responder"):60118,R=t?Symbol.for("react.scope"):60119;function I(_){if(typeof _=="object"&&_!==null){var u=_.$$typeof;switch(u){case a:switch(_=_.type,_){case h:case f:case r:case l:case o:case m:return _;default:switch(_=_&&_.$$typeof,_){case c:case p:case y:case S:case d:return _;default:return u}}case n:return u}}}function A(_){return I(_)===f}return et.AsyncMode=h,et.ConcurrentMode=f,et.ContextConsumer=c,et.ContextProvider=d,et.Element=a,et.ForwardRef=p,et.Fragment=r,et.Lazy=y,et.Memo=S,et.Portal=n,et.Profiler=l,et.StrictMode=o,et.Suspense=m,et.isAsyncMode=function(_){return A(_)||I(_)===h},et.isConcurrentMode=A,et.isContextConsumer=function(_){return I(_)===c},et.isContextProvider=function(_){return I(_)===d},et.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===a},et.isForwardRef=function(_){return I(_)===p},et.isFragment=function(_){return I(_)===r},et.isLazy=function(_){return I(_)===y},et.isMemo=function(_){return I(_)===S},et.isPortal=function(_){return I(_)===n},et.isProfiler=function(_){return I(_)===l},et.isStrictMode=function(_){return I(_)===o},et.isSuspense=function(_){return I(_)===m},et.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===r||_===f||_===l||_===o||_===m||_===v||typeof _=="object"&&_!==null&&(_.$$typeof===y||_.$$typeof===S||_.$$typeof===d||_.$$typeof===c||_.$$typeof===p||_.$$typeof===b||_.$$typeof===T||_.$$typeof===R||_.$$typeof===g)},et.typeOf=I,et}var tt={};var hl;function Kf(){return hl||(hl=1,process.env.NODE_ENV!=="production"&&(function(){var t=typeof Symbol=="function"&&Symbol.for,a=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,r=t?Symbol.for("react.fragment"):60107,o=t?Symbol.for("react.strict_mode"):60108,l=t?Symbol.for("react.profiler"):60114,d=t?Symbol.for("react.provider"):60109,c=t?Symbol.for("react.context"):60110,h=t?Symbol.for("react.async_mode"):60111,f=t?Symbol.for("react.concurrent_mode"):60111,p=t?Symbol.for("react.forward_ref"):60112,m=t?Symbol.for("react.suspense"):60113,v=t?Symbol.for("react.suspense_list"):60120,S=t?Symbol.for("react.memo"):60115,y=t?Symbol.for("react.lazy"):60116,g=t?Symbol.for("react.block"):60121,b=t?Symbol.for("react.fundamental"):60117,T=t?Symbol.for("react.responder"):60118,R=t?Symbol.for("react.scope"):60119;function I(te){return typeof te=="string"||typeof te=="function"||te===r||te===f||te===l||te===o||te===m||te===v||typeof te=="object"&&te!==null&&(te.$$typeof===y||te.$$typeof===S||te.$$typeof===d||te.$$typeof===c||te.$$typeof===p||te.$$typeof===b||te.$$typeof===T||te.$$typeof===R||te.$$typeof===g)}function A(te){if(typeof te=="object"&&te!==null){var se=te.$$typeof;switch(se){case a:var le=te.type;switch(le){case h:case f:case r:case l:case o:case m:return le;default:var Ce=le&&le.$$typeof;switch(Ce){case c:case p:case y:case S:case d:return Ce;default:return se}}case n:return se}}}var _=h,u=f,x=c,j=d,M=a,O=p,z=r,k=y,F=S,C=n,E=l,P=o,U=m,H=!1;function W(te){return H||(H=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),L(te)||A(te)===h}function L(te){return A(te)===f}function B(te){return A(te)===c}function $(te){return A(te)===d}function N(te){return typeof te=="object"&&te!==null&&te.$$typeof===a}function V(te){return A(te)===p}function Q(te){return A(te)===r}function Z(te){return A(te)===y}function J(te){return A(te)===S}function K(te){return A(te)===n}function X(te){return A(te)===l}function ee(te){return A(te)===o}function pe(te){return A(te)===m}tt.AsyncMode=_,tt.ConcurrentMode=u,tt.ContextConsumer=x,tt.ContextProvider=j,tt.Element=M,tt.ForwardRef=O,tt.Fragment=z,tt.Lazy=k,tt.Memo=F,tt.Portal=C,tt.Profiler=E,tt.StrictMode=P,tt.Suspense=U,tt.isAsyncMode=W,tt.isConcurrentMode=L,tt.isContextConsumer=B,tt.isContextProvider=$,tt.isElement=N,tt.isForwardRef=V,tt.isFragment=Q,tt.isLazy=Z,tt.isMemo=J,tt.isPortal=K,tt.isProfiler=X,tt.isStrictMode=ee,tt.isSuspense=pe,tt.isValidElementType=I,tt.typeOf=A})()),tt}var fl;function eu(){return fl||(fl=1,process.env.NODE_ENV==="production"?Is.exports=Hf():Is.exports=Kf()),Is.exports}var li,gl;function Gf(){if(gl)return li;gl=1;var t=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function r(l){if(l==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(l)}function o(){try{if(!Object.assign)return!1;var l=new String("abc");if(l[5]="de",Object.getOwnPropertyNames(l)[0]==="5")return!1;for(var d={},c=0;c<10;c++)d["_"+String.fromCharCode(c)]=c;var h=Object.getOwnPropertyNames(d).map(function(p){return d[p]});if(h.join("")!=="0123456789")return!1;var f={};return"abcdefghijklmnopqrst".split("").forEach(function(p){f[p]=p}),Object.keys(Object.assign({},f)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return li=o()?Object.assign:function(l,d){for(var c,h=r(l),f,p=1;p<arguments.length;p++){c=Object(arguments[p]);for(var m in c)a.call(c,m)&&(h[m]=c[m]);if(t){f=t(c);for(var v=0;v<f.length;v++)n.call(c,f[v])&&(h[f[v]]=c[f[v]])}}return h},li}var di,yl;function uo(){if(yl)return di;yl=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return di=t,di}var ci,xl;function tu(){return xl||(xl=1,ci=Function.call.bind(Object.prototype.hasOwnProperty)),ci}var ui,bl;function Jf(){if(bl)return ui;bl=1;var t=function(){};if(process.env.NODE_ENV!=="production"){var a=uo(),n={},r=tu();t=function(l){var d="Warning: "+l;typeof console<"u"&&console.error(d);try{throw new Error(d)}catch{}}}function o(l,d,c,h,f){if(process.env.NODE_ENV!=="production"){for(var p in l)if(r(l,p)){var m;try{if(typeof l[p]!="function"){var v=Error((h||"React class")+": "+c+" type `"+p+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof l[p]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw v.name="Invariant Violation",v}m=l[p](d,p,h,c,null,a)}catch(y){m=y}if(m&&!(m instanceof Error)&&t((h||"React class")+": type specification of "+c+" `"+p+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof m+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),m instanceof Error&&!(m.message in n)){n[m.message]=!0;var S=f?f():"";t("Failed "+c+" type: "+m.message+(S??""))}}}}return o.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(n={})},ui=o,ui}var pi,jl;function Qf(){if(jl)return pi;jl=1;var t=eu(),a=Gf(),n=uo(),r=tu(),o=Jf(),l=function(){};process.env.NODE_ENV!=="production"&&(l=function(c){var h="Warning: "+c;typeof console<"u"&&console.error(h);try{throw new Error(h)}catch{}});function d(){return null}return pi=function(c,h){var f=typeof Symbol=="function"&&Symbol.iterator,p="@@iterator";function m(L){var B=L&&(f&&L[f]||L[p]);if(typeof B=="function")return B}var v="<<anonymous>>",S={array:T("array"),bigint:T("bigint"),bool:T("boolean"),func:T("function"),number:T("number"),object:T("object"),string:T("string"),symbol:T("symbol"),any:R(),arrayOf:I,element:A(),elementType:_(),instanceOf:u,node:O(),objectOf:j,oneOf:x,oneOfType:M,shape:k,exact:F};function y(L,B){return L===B?L!==0||1/L===1/B:L!==L&&B!==B}function g(L,B){this.message=L,this.data=B&&typeof B=="object"?B:{},this.stack=""}g.prototype=Error.prototype;function b(L){if(process.env.NODE_ENV!=="production")var B={},$=0;function N(Q,Z,J,K,X,ee,pe){if(K=K||v,ee=ee||J,pe!==n){if(h){var te=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw te.name="Invariant Violation",te}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var se=K+":"+J;!B[se]&&$<3&&(l("You are manually calling a React.PropTypes validation function for the `"+ee+"` prop on `"+K+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),B[se]=!0,$++)}}return Z[J]==null?Q?Z[J]===null?new g("The "+X+" `"+ee+"` is marked as required "+("in `"+K+"`, but its value is `null`.")):new g("The "+X+" `"+ee+"` is marked as required in "+("`"+K+"`, but its value is `undefined`.")):null:L(Z,J,K,X,ee)}var V=N.bind(null,!1);return V.isRequired=N.bind(null,!0),V}function T(L){function B($,N,V,Q,Z,J){var K=$[N],X=P(K);if(X!==L){var ee=U(K);return new g("Invalid "+Q+" `"+Z+"` of type "+("`"+ee+"` supplied to `"+V+"`, expected ")+("`"+L+"`."),{expectedType:L})}return null}return b(B)}function R(){return b(d)}function I(L){function B($,N,V,Q,Z){if(typeof L!="function")return new g("Property `"+Z+"` of component `"+V+"` has invalid PropType notation inside arrayOf.");var J=$[N];if(!Array.isArray(J)){var K=P(J);return new g("Invalid "+Q+" `"+Z+"` of type "+("`"+K+"` supplied to `"+V+"`, expected an array."))}for(var X=0;X<J.length;X++){var ee=L(J,X,V,Q,Z+"["+X+"]",n);if(ee instanceof Error)return ee}return null}return b(B)}function A(){function L(B,$,N,V,Q){var Z=B[$];if(!c(Z)){var J=P(Z);return new g("Invalid "+V+" `"+Q+"` of type "+("`"+J+"` supplied to `"+N+"`, expected a single ReactElement."))}return null}return b(L)}function _(){function L(B,$,N,V,Q){var Z=B[$];if(!t.isValidElementType(Z)){var J=P(Z);return new g("Invalid "+V+" `"+Q+"` of type "+("`"+J+"` supplied to `"+N+"`, expected a single ReactElement type."))}return null}return b(L)}function u(L){function B($,N,V,Q,Z){if(!($[N]instanceof L)){var J=L.name||v,K=W($[N]);return new g("Invalid "+Q+" `"+Z+"` of type "+("`"+K+"` supplied to `"+V+"`, expected ")+("instance of `"+J+"`."))}return null}return b(B)}function x(L){if(!Array.isArray(L))return process.env.NODE_ENV!=="production"&&(arguments.length>1?l("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):l("Invalid argument supplied to oneOf, expected an array.")),d;function B($,N,V,Q,Z){for(var J=$[N],K=0;K<L.length;K++)if(y(J,L[K]))return null;var X=JSON.stringify(L,function(pe,te){var se=U(te);return se==="symbol"?String(te):te});return new g("Invalid "+Q+" `"+Z+"` of value `"+String(J)+"` "+("supplied to `"+V+"`, expected one of "+X+"."))}return b(B)}function j(L){function B($,N,V,Q,Z){if(typeof L!="function")return new g("Property `"+Z+"` of component `"+V+"` has invalid PropType notation inside objectOf.");var J=$[N],K=P(J);if(K!=="object")return new g("Invalid "+Q+" `"+Z+"` of type "+("`"+K+"` supplied to `"+V+"`, expected an object."));for(var X in J)if(r(J,X)){var ee=L(J,X,V,Q,Z+"."+X,n);if(ee instanceof Error)return ee}return null}return b(B)}function M(L){if(!Array.isArray(L))return process.env.NODE_ENV!=="production"&&l("Invalid argument supplied to oneOfType, expected an instance of array."),d;for(var B=0;B<L.length;B++){var $=L[B];if(typeof $!="function")return l("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+H($)+" at index "+B+"."),d}function N(V,Q,Z,J,K){for(var X=[],ee=0;ee<L.length;ee++){var pe=L[ee],te=pe(V,Q,Z,J,K,n);if(te==null)return null;te.data&&r(te.data,"expectedType")&&X.push(te.data.expectedType)}var se=X.length>0?", expected one of type ["+X.join(", ")+"]":"";return new g("Invalid "+J+" `"+K+"` supplied to "+("`"+Z+"`"+se+"."))}return b(N)}function O(){function L(B,$,N,V,Q){return C(B[$])?null:new g("Invalid "+V+" `"+Q+"` supplied to "+("`"+N+"`, expected a ReactNode."))}return b(L)}function z(L,B,$,N,V){return new g((L||"React class")+": "+B+" type `"+$+"."+N+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+V+"`.")}function k(L){function B($,N,V,Q,Z){var J=$[N],K=P(J);if(K!=="object")return new g("Invalid "+Q+" `"+Z+"` of type `"+K+"` "+("supplied to `"+V+"`, expected `object`."));for(var X in L){var ee=L[X];if(typeof ee!="function")return z(V,Q,Z,X,U(ee));var pe=ee(J,X,V,Q,Z+"."+X,n);if(pe)return pe}return null}return b(B)}function F(L){function B($,N,V,Q,Z){var J=$[N],K=P(J);if(K!=="object")return new g("Invalid "+Q+" `"+Z+"` of type `"+K+"` "+("supplied to `"+V+"`, expected `object`."));var X=a({},$[N],L);for(var ee in X){var pe=L[ee];if(r(L,ee)&&typeof pe!="function")return z(V,Q,Z,ee,U(pe));if(!pe)return new g("Invalid "+Q+" `"+Z+"` key `"+ee+"` supplied to `"+V+"`.\nBad object: "+JSON.stringify($[N],null," ")+`
10
+ Valid keys: `+JSON.stringify(Object.keys(L),null," "));var te=pe(J,ee,V,Q,Z+"."+ee,n);if(te)return te}return null}return b(B)}function C(L){switch(typeof L){case"number":case"string":case"undefined":return!0;case"boolean":return!L;case"object":if(Array.isArray(L))return L.every(C);if(L===null||c(L))return!0;var B=m(L);if(B){var $=B.call(L),N;if(B!==L.entries){for(;!(N=$.next()).done;)if(!C(N.value))return!1}else for(;!(N=$.next()).done;){var V=N.value;if(V&&!C(V[1]))return!1}}else return!1;return!0;default:return!1}}function E(L,B){return L==="symbol"?!0:B?B["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&B instanceof Symbol:!1}function P(L){var B=typeof L;return Array.isArray(L)?"array":L instanceof RegExp?"object":E(B,L)?"symbol":B}function U(L){if(typeof L>"u"||L===null)return""+L;var B=P(L);if(B==="object"){if(L instanceof Date)return"date";if(L instanceof RegExp)return"regexp"}return B}function H(L){var B=U(L);switch(B){case"array":case"object":return"an "+B;case"boolean":case"date":case"regexp":return"a "+B;default:return B}}function W(L){return!L.constructor||!L.constructor.name?v:L.constructor.name}return S.checkPropTypes=o,S.resetWarningCache=o.resetWarningCache,S.PropTypes=S,S},pi}var mi,Sl;function Xf(){if(Sl)return mi;Sl=1;var t=uo();function a(){}function n(){}return n.resetWarningCache=a,mi=function(){function r(d,c,h,f,p,m){if(m!==t){var v=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw v.name="Invariant Violation",v}}r.isRequired=r;function o(){return r}var l={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:o,element:r,elementType:r,instanceOf:o,node:r,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:n,resetWarningCache:a};return l.PropTypes=l,l},mi}var wl;function au(){if(wl)return Rs.exports;if(wl=1,process.env.NODE_ENV!=="production"){var t=eu(),a=!0;Rs.exports=Qf()(t.isElement,a)}else Rs.exports=Xf()();return Rs.exports}var vl;function Zf(){if(vl)return jt;vl=1;var t=jt&&jt.__extends||(function(){var S=function(y,g){return S=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,T){b.__proto__=T}||function(b,T){for(var R in T)Object.prototype.hasOwnProperty.call(T,R)&&(b[R]=T[R])},S(y,g)};return function(y,g){if(typeof g!="function"&&g!==null)throw new TypeError("Class extends value "+String(g)+" is not a constructor or null");S(y,g);function b(){this.constructor=y}y.prototype=g===null?Object.create(g):(b.prototype=g.prototype,new b)}})(),a=jt&&jt.__assign||function(){return a=Object.assign||function(S){for(var y,g=1,b=arguments.length;g<b;g++){y=arguments[g];for(var T in y)Object.prototype.hasOwnProperty.call(y,T)&&(S[T]=y[T])}return S},a.apply(this,arguments)},n=jt&&jt.__createBinding||(Object.create?(function(S,y,g,b){b===void 0&&(b=g);var T=Object.getOwnPropertyDescriptor(y,g);(!T||("get"in T?!y.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return y[g]}}),Object.defineProperty(S,b,T)}):(function(S,y,g,b){b===void 0&&(b=g),S[b]=y[g]})),r=jt&&jt.__setModuleDefault||(Object.create?(function(S,y){Object.defineProperty(S,"default",{enumerable:!0,value:y})}):function(S,y){S.default=y}),o=jt&&jt.__importStar||function(S){if(S&&S.__esModule)return S;var y={};if(S!=null)for(var g in S)g!=="default"&&Object.prototype.hasOwnProperty.call(S,g)&&n(y,S,g);return r(y,S),y},l=jt&&jt.__rest||function(S,y){var g={};for(var b in S)Object.prototype.hasOwnProperty.call(S,b)&&y.indexOf(b)<0&&(g[b]=S[b]);if(S!=null&&typeof Object.getOwnPropertySymbols=="function")for(var T=0,b=Object.getOwnPropertySymbols(S);T<b.length;T++)y.indexOf(b[T])<0&&Object.prototype.propertyIsEnumerable.call(S,b[T])&&(g[b[T]]=S[b[T]]);return g},d=jt&&jt.__importDefault||function(S){return S&&S.__esModule?S:{default:S}};Object.defineProperty(jt,"__esModule",{value:!0});var c=o(i),h=d(Vf()),f=o(au());function p(S){return S&&S.replace(/&nbsp;|\u202F|\u00A0/g," ").replace(/<br \/>/g,"<br>")}function m(S){var y=document.createTextNode("");S.appendChild(y);var g=document.activeElement===S;if(y!==null&&y.nodeValue!==null&&g){var b=window.getSelection();if(b!==null){var T=document.createRange();T.setStart(y,y.nodeValue.length),T.collapse(!0),b.removeAllRanges(),b.addRange(T)}S instanceof HTMLElement&&S.focus()}}var v=(function(S){t(y,S);function y(){var g=S!==null&&S.apply(this,arguments)||this;return g.lastHtml=g.props.html,g.el=typeof g.props.innerRef=="function"?{current:null}:c.createRef(),g.getEl=function(){return(g.props.innerRef&&typeof g.props.innerRef!="function"?g.props.innerRef:g.el).current},g.emitChange=function(b){var T=g.getEl();if(T){var R=T.innerHTML;if(g.props.onChange&&R!==g.lastHtml){var I=Object.assign({},b,{target:{value:R}});g.props.onChange(I)}g.lastHtml=R}},g}return y.prototype.render=function(){var g=this,b=this.props,T=b.tagName,R=b.html,I=b.innerRef,A=l(b,["tagName","html","innerRef"]);return c.createElement(T||"div",a(a({},A),{ref:typeof I=="function"?function(_){I(_),g.el.current=_}:I||this.el,onInput:this.emitChange,onBlur:this.props.onBlur||this.emitChange,onKeyUp:this.props.onKeyUp||this.emitChange,onKeyDown:this.props.onKeyDown||this.emitChange,contentEditable:!this.props.disabled,dangerouslySetInnerHTML:{__html:R}}),this.props.children)},y.prototype.shouldComponentUpdate=function(g){var b=this.props,T=this.getEl();return!T||p(g.html)!==p(T.innerHTML)?!0:b.disabled!==g.disabled||b.tagName!==g.tagName||b.className!==g.className||b.innerRef!==g.innerRef||b.placeholder!==g.placeholder||!(0,h.default)(b.style,g.style)},y.prototype.componentDidUpdate=function(){var g=this.getEl();g&&(this.props.html!==g.innerHTML&&(g.innerHTML=this.props.html),this.lastHtml=this.props.html,m(g))},y.propTypes={html:f.string.isRequired,onChange:f.func,disabled:f.bool,tagName:f.string,className:f.string,style:f.object,innerRef:f.oneOfType([f.object,f.func])},y})(c.Component);return jt.default=v,jt}var eg=Zf();const nu=Zc(eg),tg={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},ag={width:"100%",minHeight:40,padding:"8px 0",fontSize:"14px",color:"#222",background:"transparent",border:0,borderTop:0,borderLeft:0,borderRight:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",outline:"none",transition:"border-color 0.2s ease"},G=i.forwardRef(({style:t,onFocus:a,onBlur:n,...r},o)=>{const[l,d]=i.useState(!1);return e.jsxs("div",{className:"",style:{width:"100%"},children:[r.label&&e.jsx("label",{className:"labelfont",style:tg,children:r.label}),e.jsx("input",{placeholder:r.placeholder||r.label,...r,ref:o,onFocus:c=>{d(!0),a?.(c)},onBlur:c=>{d(!1),n?.(c)},style:{...ag,borderBottom:`1px solid ${l?"#222":"#d9d9d9"}`,...t||{}}})]})});var jn=function(){return jn=Object.assign||function(a){for(var n,r=1,o=arguments.length;r<o;r++){n=arguments[r];for(var l in n)Object.prototype.hasOwnProperty.call(n,l)&&(a[l]=n[l])}return a},jn.apply(this,arguments)},ng={2e3:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2001:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2002:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2003:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2004:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2005:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2006:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2007:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2008:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:29,Chaitra:31},2009:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2010:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2011:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2012:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:30,Chaitra:30},2013:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2014:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2015:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2016:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:30,Chaitra:30},2017:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2018:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2019:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2020:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2021:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2022:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:30},2023:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2024:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2025:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2026:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2027:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2028:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2029:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:32,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2030:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2031:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2032:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2033:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2034:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2035:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:29,Chaitra:31},2036:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2037:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2038:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2039:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:30,Chaitra:30},2040:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2041:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2042:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2043:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:30,Chaitra:30},2044:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2045:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2046:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2047:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2048:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2049:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:30},2050:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2051:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2052:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2053:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:30},2054:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2055:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2056:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:32,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2057:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2058:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2059:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2060:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2061:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2062:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2063:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2064:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2065:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2066:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:29,Chaitra:31},2067:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2068:{Baisakh:31,Jestha:31,Asar:32,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2069:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2070:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:29,Mangsir:30,Poush:30,Magh:29,Falgun:30,Chaitra:30},2071:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2072:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2073:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2074:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2075:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2076:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:30},2077:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2078:{Baisakh:31,Jestha:31,Asar:31,Shrawan:32,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2079:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2080:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:30},2081:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2082:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2083:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2084:{Baisakh:31,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:29,Falgun:30,Chaitra:31},2085:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:29,Chaitra:31},2086:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:29,Poush:30,Magh:29,Falgun:30,Chaitra:30},2087:{Baisakh:31,Jestha:31,Asar:32,Shrawan:31,Bhadra:31,Aswin:31,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:30,Chaitra:30},2088:{Baisakh:30,Jestha:31,Asar:32,Shrawan:32,Bhadra:30,Aswin:31,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:30,Chaitra:30},2089:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:30,Chaitra:30},2090:{Baisakh:30,Jestha:32,Asar:31,Shrawan:32,Bhadra:31,Aswin:30,Kartik:30,Mangsir:30,Poush:29,Magh:30,Falgun:30,Chaitra:30}},Ki;(function(t){t.np="np",t.en="en"})(Ki||(Ki={}));var su=Object.values(ng).map(function(t){return Object.values(t)}),Gi=su.map(function(t){var a=0;return t.map(function(n){var r=[n,a];return a+=n,r})},[]),Ji=0,xr=su.map(function(t){var a=t.reduce(function(r,o){return r+o},0),n=[a,Ji];return Ji+=a,n}),br=33238;if(Ji!==br)throw new Error("Invalid constant initialization for Nepali Date.");var Qi=1;function sg(t){return t-ru}function rg(t){return t+ru}var ru=2e3,ma=1,Cl=0;function ig(t,a){for(;a<0;)a+=t;return a%t}var Zn={en:{day:{short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},month:{short:["Bai","Jes","Asa","Shr","Bhd","Asw","Kar","Man","Pou","Mag","Fal","Cha"],long:["Baisakh","Jestha","Asar","Shrawan","Bhadra","Aswin","Kartik","Mangsir","Poush","Magh","Falgun","Chaitra"]},date:["0","1","2","3","4","5","6","7","8","9"]},np:{day:{short:["आइत","सोम","मंगल","बुध","बिहि","शुक्र","शनि"],long:["आइतबार","सोमबार","मंगलबार","बुधबार","बिहिबार","शुक्रबार","शनिबार"]},month:{short:["बै","जे","अ","श्रा","भा","आ","का","मं","पौ","मा","फा","चै"],long:["बैशाख","जेठ","असार","श्रावण","भाद्र","आश्विन","कार्तिक","मंसिर","पौष","माघ","फाल्गुण","चैत्र"]},date:["०","१","२","३","४","५","६","७","८","९"]}},hi={year:1943,month:3,date:13};function og(t,a,n){try{var r=sg(t),o=xr[r][ma],l=ig(12,a),d=Math.floor(a/12),c=xr[r+d][ma]-o+Gi[r+d][l][ma],h=o+c+n;if(h<Qi||h>br)throw new Error;return h}catch{throw new Error("The date doesn't fall within 2000/01/01 - 2090/12/30")}}function iu(t){if(t<Qi||t>br)throw new Error("The epoch difference is not within the boundaries ".concat(Qi," - ").concat(br));var a=xr.findIndex(function(l){return t>l[ma]&&t<=l[ma]+l[Cl]}),n=t-xr[a][ma],r=Gi[a].findIndex(function(l){return n>l[ma]&&n<=l[ma]+l[Cl]}),o=n-Gi[a][r][ma];return{year:rg(a),month:r,date:o}}function lg(t,a,n){var r=Math.abs(Date.UTC(t,a,n)-Date.UTC(hi.year,hi.month,hi.date)),o=Math.ceil(r/(1e3*3600*24));return o}function ou(t){var a=new Date(Date.UTC(1943,3,13+t));return{year:a.getUTCFullYear(),month:a.getUTCMonth(),date:a.getUTCDate(),day:a.getUTCDay()}}function dg(t){try{var a=og(t.year,t.month,t.date),n=iu(a),r=ou(a);return{AD:r,BS:jn(jn({},n),{day:r.day})}}catch{throw new Error("The date doesn't fall within 2000/01/01 - 2090/12/30")}}function cg(t){try{var a=lg(t.getFullYear(),t.getMonth(),t.getDate()),n=iu(a),r=ou(a);return{AD:r,BS:jn(jn({},n),{day:r.day})}}catch{throw new Error("The date doesn't fall within 2000/01/01 - 2090/12/30")}}function ja(t,a){return t.split("").map(function(n){return Zn[a].date[parseInt(n,10)]}).join("")}function ug(t,a,n){return a.replace(/((\\[MDYd])|D{1,2}|M{1,4}|Y{2,4}|d{1,3})/g,function(r,o,l){var d;switch(r){case"D":return ja(t.date.toString(),n);case"DD":return ja(t.date.toString().padStart(2,"0"),n);case"M":return ja((t.month+1).toString(),n);case"MM":return ja((t.month+1).toString().padStart(2,"0"),n);case"MMM":return Zn[n].month.short[t.month];case"MMMM":return Zn[n].month.long[t.month];case"YY":return ja(t.year.toString().slice(-2),n);case"YYY":return ja(t.year.toString().slice(-3),n);case"YYYY":return ja(t.year.toString(),n);case"d":return ja(((d=t.day)===null||d===void 0?void 0:d.toString())||"0",n);case"dd":return Zn[n].day.short[t.day||0];case"ddd":return Zn[n].day.long[t.day||0];default:return l.replace("/","")}}).replace(/\\/g,"")}function _l(t){var a=/(\d{4})\s*([/-]|\s+)\s*(\d{1,2})\s*([/-]|\s+)\s*(\d{1,2})/,n=/(\d{1,2})\s*([/-]|\s+)\s*(\d{1,2})\s*([/-]|\s+)\s*(\d{4})/,r;if(r=t.match(a),r!==null)return{year:parseInt(r[1],10),month:parseInt(r[3],10)-1,date:parseInt(r[5],10)};if(r=t.match(n),r!==null)return{year:parseInt(r[5],10),month:parseInt(r[3],10)-1,date:parseInt(r[1],10)};throw new Error("Invalid date format")}var Oa=Symbol("Date"),fi=Symbol("Day"),$a=Symbol("Year"),Fa=Symbol("MonthIndex"),Ba=Symbol("JsDate"),Ps=Symbol("convertToBS()"),tn=Symbol("convertToAD()"),gi=Symbol("setADBS()"),Ms=Symbol("setDayYearMonth()");(function(){function t(){var a=new Error("Invalid constructor arguments");if(arguments.length===0)this[Ps](new Date);else if(arguments.length===1){var n=arguments[0];switch(typeof n){case"number":this[Ps](new Date(n));break;case"string":var r=_l(n),o=r.date,l=r.year,d=r.month;this[Ms](l,d,o),this[tn]();break;case"object":if(n instanceof Date)this[Ps](n);else throw a;break;default:throw a}}else if(arguments.length<=3)this[Ms](arguments[0],arguments[1],arguments[2]),this[tn]();else throw a}return t.prototype[Ms]=function(a,n,r,o){n===void 0&&(n=0),r===void 0&&(r=1),o===void 0&&(o=0),this[$a]=a,this[Fa]=n,this[Oa]=r,this[fi]=o},t.prototype.toJsDate=function(){return this[Ba]},t.prototype.getDate=function(){return this[Oa]},t.prototype.getYear=function(){return this[$a]},t.prototype.getDay=function(){return this[fi]},t.prototype.getMonth=function(){return this[Fa]},t.prototype.getDateObject=function(){return{BS:this.getBS(),AD:this.getAD()}},t.prototype.getBS=function(){return{year:this[$a],month:this[Fa],date:this[Oa],day:this[fi]}},t.prototype.getAD=function(){return{year:this[Ba].getFullYear(),month:this[Ba].getMonth(),date:this[Ba].getDate(),day:this[Ba].getDay()}},t.prototype.setDate=function(a){var n=this[Oa];try{this[Oa]=a,this[tn]()}catch(r){throw this[Oa]=n,r}},t.prototype.setMonth=function(a){var n=this[Fa];try{this[Fa]=a,this[tn]()}catch(r){throw this[Fa]=n,r}},t.prototype.setYear=function(a){var n=this[$a];try{this[$a]=a,this[tn]()}catch(r){throw this[$a]=n,r}},t.prototype.format=function(a,n){return n===void 0&&(n=t.language),ug(this.getBS(),a,n)},t.parse=function(a){var n=_l(a),r=n.date,o=n.year,l=n.month;return new t(o,l,r)},t.now=function(){return new t},t.fromAD=function(a){return new t(a)},t.prototype[Ps]=function(a){var n=cg(a),r=n.AD,o=n.BS;this[gi](r,o)},t.prototype[gi]=function(a,n){this[Ms](n.year,n.month,n.date,n.day),this[Ba]=new Date(a.year,a.month,a.date)},t.prototype[tn]=function(){var a=dg({year:this[$a],month:this[Fa],date:this[Oa]}),n=a.AD,r=a.BS;this[gi](n,r)},t.prototype.valueOf=function(){return this[Ba].getTime()},t.prototype.toString=function(){return this.format("ddd DD, MMMM YYYY")},t.language=Ki.en,t})();const lu=t=>{switch(t){case"paid":return e.jsx("div",{style:{background:"#3cb371",color:"white",textAlign:"center"},children:"PAID"});case"due":return e.jsx("div",{style:{background:"red",color:"white",textAlign:"center"},children:"DUE"});case"partially_paid":return e.jsx("div",{style:{background:"#ff8d00",color:"white",textAlign:"center"},children:"Partially Paid"});case"Present":return e.jsx(s.Tag,{color:"success",children:"Present"});case"Absent":return e.jsx(s.Tag,{color:"error",children:"Absent"});case"NO Attendance":return e.jsx(s.Tag,{color:"error",children:"No Attendance"});case"one_time":return"ONETIME";case"monthly":return"MONTHLY";case"half_yearly":return"HALF YEARLY";case"quarterly":return"QUARTERLY";default:return""}},ra=t=>{const a=JSON.parse(localStorage.getItem("genrall_settings"));return console.log("amount______",t),e.jsxs(e.Fragment,{children:[a?.currency_icon," ",Number(t||0).toLocaleString("en-IN")]})},Al=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}];function po(t){const a=ne().year(),n=[];for(let r=a;r>=a-t;r--)n.push({label:String(r),value:r});return n}function St(t){switch(t){case"late":return e.jsx("span",{className:"label label-late",children:"L"});case"present":return e.jsx("span",{className:"label label-success",children:"P"});case"absent":return e.jsx("span",{className:"label label-danger",children:"A"});case"P":return e.jsx("span",{className:"monthlyLabel label-success",children:"P"});case"A":return e.jsx("span",{className:"monthlyLabel label-danger",children:"A"});case"L":return e.jsx("span",{className:"monthlyLabel label-late",children:"L"});case"W":return e.jsx("span",{className:"monthlyLabel sunday",children:"W"});case"H":return e.jsx("span",{className:"monthlyLabel holiday",children:"H"});default:return e.jsx("span",{className:"label",children:t})}}function mo(t){const a=ne().year(),n=ne().month();return t<a?Al:Al.slice(0,n+1)}function Dl(t,a){switch(t){case"sunday":return e.jsx("span",{className:"monthlyLabel sunday",children:a});case"holiday":return e.jsx("span",{className:"monthlyLabel holiday",children:a});default:return e.jsx("span",{className:"monthlyLabel",children:a})}}function pg(){return[{label:"One Time (During Admission)",value:"one_time"},{label:"One Time",value:"one_time_without_admission"},{label:"Monthly",value:"monthly"},{label:"Quarterly",value:"quarterly"},{label:"Half Yearly",value:"half_yearly"},{label:"Yearly",value:"yearly"}]}var $n={},Fn={},Ut={},Bn={},an={},Tl;function mg(){if(Tl)return an;Tl=1;var t=an&&an.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(an,"__esModule",{value:!0});const a=t(i),n=am,r=["string","number","boolean"];function o({header:l,body:d}){const c=a.default.createElement("tr",null,l.map(f=>a.default.createElement("th",{key:f},f))),h=d.map((f,p)=>Array.isArray(f)?a.default.createElement("tr",{key:p},f.map((m,v)=>a.default.createElement("th",{key:v}," ",m," "))):f!==null&&typeof f=="object"?a.default.createElement("tr",{key:p},Object.entries(f).map(([m,v],S)=>typeof v=="object"?(console.error(`typeof ${m} is incorrect, only accept ${r.join(", ")} `),a.default.createElement("th",{key:S})):a.default.createElement("th",{key:S},a.default.createElement(a.default.Fragment,null,v)))):(console.error(`
11
11
  data structure is incorrect,
12
12
  data structure type ->
13
13
  " type data = Array<{ [key: string]: string | number | boolean }>
14
14
  or
15
15
  type data = Array<(string | number | boolean)[]>"
16
- `),null));return(0,s.renderToString)(a.default.createElement("table",null,a.default.createElement("tbody",null,c,g)))}return sa.default=l,sa}var Hr;function $u(){return Hr||(Hr=1,(function(t){var a=Ta&&Ta.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(t,"__esModule",{value:!0}),t.createTable=t.template=t.uri=t.format=t.base64=void 0;function s(o){return window.btoa(unescape(encodeURIComponent(o)))}t.base64=s;function r(o,d){return o.replace(/{(\w+)}/g,(c,g)=>d[g])}t.format=r,t.uri="data:application/vnd.ms-excel;base64,",t.template='<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><meta charset="UTF-8"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body>{table}</body></html>';var l=Eu();Object.defineProperty(t,"createTable",{enumerable:!0,get:function(){return a(l).default}})})(Ta)),Ta}var Kr;function eo(){if(Kr)return xt;Kr=1;var t=xt&&xt.__createBinding||(Object.create?(function(y,p,m,A){A===void 0&&(A=m);var C=Object.getOwnPropertyDescriptor(p,m);(!C||("get"in C?!p.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return p[m]}}),Object.defineProperty(y,A,C)}):(function(y,p,m,A){A===void 0&&(A=m),y[A]=p[m]})),a=xt&&xt.__setModuleDefault||(Object.create?(function(y,p){Object.defineProperty(y,"default",{enumerable:!0,value:p})}):function(y,p){y.default=p}),s=xt&&xt.__importStar||function(y){if(y&&y.__esModule)return y;var p={};if(y!=null)for(var m in y)m!=="default"&&Object.prototype.hasOwnProperty.call(y,m)&&t(p,y,m);return a(p,y),p};Object.defineProperty(xt,"__esModule",{value:!0}),xt.downloadExcel=xt.excel=void 0;const r=s($u());function l(){return document?!0:((process==null?void 0:process.env.NODE_ENV)!=="production"&&console.error("Failed to access document object"),!1)}function o(y,p){const m=window.document.createElement("a");return m.href=r.uri+r.base64(r.format(r.template,p)),m.download=y,document.body.appendChild(m),m.click(),document.body.removeChild(m),!0}function d(y,p){if(y)return y.cloneNode(!0).outerHTML;if(p)return r.createTable(p);console.error("currentTableRef or tablePayload does not exist")}function c({fileName:y,sheet:p,tablePayload:m},A){if(!l())return!1;const C=d(A,m);return o(y,{worksheet:p||"Worksheet",table:C})}xt.downloadExcel=c;function g({currentTableRef:y,filename:p,sheet:m}){function A(){if(!l())return!1;const C=d(y),b=`${p}.xls`;return o(b,{worksheet:m||"Worksheet",table:C})}return{onDownload:A}}return xt.excel=g,xt}var Gr;function Fu(){if(Gr)return Da;Gr=1,Object.defineProperty(Da,"__esModule",{value:!0}),Da.useDownloadExcel=void 0;const t=i,a=eo();function s({currentTableRef:r,filename:l,sheet:o}){const[d,c]=(0,t.useState)({});return(0,t.useEffect)(()=>{c({currentTableRef:r,filename:l,sheet:o})},[r,l,o]),(0,t.useMemo)(()=>(0,a.excel)(d),[d])}return Da.useDownloadExcel=s,Da}var Jr;function Uu(){return Jr||(Jr=1,(function(t){var a=Aa&&Aa.__importDefault||function(d){return d&&d.__esModule?d:{default:d}};Object.defineProperty(t,"__esModule",{value:!0}),t.downloadExcel=t.useDownloadExcel=t.DownloadTableExcel=void 0;const s=a(i),r=Fu();Object.defineProperty(t,"useDownloadExcel",{enumerable:!0,get:function(){return r.useDownloadExcel}});const l=eo();Object.defineProperty(t,"downloadExcel",{enumerable:!0,get:function(){return l.downloadExcel}});const o=({currentTableRef:d,filename:c,sheet:g,children:y})=>{const{onDownload:p}=(0,r.useDownloadExcel)({currentTableRef:d,filename:c,sheet:g});return s.default.createElement("span",{onClick:p},y)};t.DownloadTableExcel=o})(Aa)),Aa}var to=Uu();const Ct=t=>{console.log("ExportDataWithHeader______",t);const{tableRef:a}=t.data;t?.tableRef;const s=new Date().getTime(),r=ea.useReactToPrint({content:()=>a.current});return e.jsx(e.Fragment,{children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsxs(n.Row,{gutter:8,children:[e.jsx(n.Col,{children:e.jsx(n.Button,{type:"text",icon:e.jsx(ee.PrinterOutlined,{style:{color:"#5080f8"}}),onClick:r})}),e.jsx(n.Col,{children:e.jsx(to.DownloadTableExcel,{filename:s,sheet:"users",currentTableRef:a.current,children:e.jsx(n.Button,{type:"text",icon:e.jsx(ee.FileTextOutlined,{style:{color:"#5080f8"}})})})})]})})})})},It=t=>{const{tableRef:a}=t;return new Date().getTime(),e.jsx(e.Fragment,{children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{span:24,style:{display:"flex",justifyContent:"center",alignSelf:"center",paddingBottom:"20px",position:"relative"}})})})},Tt=i.createContext(),Nu=()=>({modal:{outline:"none",display:"flex",alignItems:"center",justifyContent:"center","&:hover":{backgroundcolor:"red"}},img:{outline:"none"},passwordmodal:{outline:"none",display:"flex",alignItems:"center",justifyContent:"center"}}),Ie=t=>{const{columns:a,action:s,DrawerUpdate:r,editDesign:l,newData:o,Loading:d,error:c,deleteTodoMutation:g,open:y,ActionView:p,viewDetails:m,myType:A,type:C,urlkey:b,columnstype:f,rowSelection:x}=t.data,R=Nu(),[k,O]=i.useState(!1),[D,_]=i.useState(null),[u,h]=i.useState("false"),[S,E]=i.useState(!1),[F,q]=i.useState(!1),[T,U]=i.useState(),[j,P]=i.useState(""),I=()=>O(!1),N=ae=>{h(ae),O(!0)},[V,W]=i.useState(),[B,$]=i.useState({page:t?.data?.pageController?t.data?.pageController?.page:1,rowsPerPage:t?.data?.pageController?t.data?.pageController?.rowsPerPage:10}),M=i.useRef(null),L=(ae,he)=>{t.parentCallback?.(ae,he),$({rowsPerPage:he,page:ae})},Y=(ae,he)=>{_(he),E(!0),U(ae)},se=(ae,he)=>{_(he),q(!0),U(ae)},X=t?.data?.onNavigate??t?.onNavigate,G=(ae,he)=>{if(typeof X=="function"){X(ae,he);return}typeof window<"u"&&typeof ae=="string"&&ae.length>0&&window.location.assign(ae)},J=ae=>{if(C==="staff"){G(`/HumanResourceDashboard/StaffFullInformation?id=${ae.fk_staffID}`,ae);return}G(`/StudentInformation/StudentFullInformation?id=${ae.id}`,ae)},re=(ae,he)=>{W(ae),r?.(he)},de=async(ae,he,ye,ke)=>{r?.(!0),ye!==""&&((await ke({id:ae,admission_no:he,ec_no:ye}))?.Status==="Success"?n.message.success("Ec No updated successfully"):n.message.error("Failed to Update Ec No."))},Ce=()=>e.jsx(Tt.Provider,{value:V,children:l}),{trigger:le}=rt("branchapi/staff/updateStaffPassword",Ha),{trigger:oe}=rt("branchapi/Student/updateEcNo",Ha),{trigger:ie}=rt(b,(ae,he)=>Ha("student/studentDetails/editStudentLogInCredential",he)),Se=async ae=>{ae.preventDefault(),E(!1);try{(await le({staff_id:T,new_passwod:ae.target.password.value}))?.Status==="Success"?n.message.success("Password updated successfully"):n.message.error("Failed to update password")}catch{n.message.error("Failed to update password")}},Ee=async ae=>{ae.preventDefault(),q(!1);try{(await ie({edit_id:D?.edit_id,new_passwod:ae.target.password.value,username:ae.target.username.value,branch_id:JSON.parse(localStorage.getItem("genrall_settings"))?.fk_branchID}))?.Status==="Success"?n.message.success("Password updated successfully"):n.message.error("Failed to update password")}catch(he){n.message.error(he?.response?.data?.msg??"Failed to update password")}},Xe=(Array.isArray(a)?a:[]).some(ae=>ae?.fixed==="left"),be=[{title:"SR. NO.",dataIndex:"__serialNumber",key:"__serialNumber",width:90,fixed:f==="antd"&&Xe?"left":void 0,sorter:(ae,he)=>(ae.__serialNumber??0)-(he.__serialNumber??0),render:ae=>ae},...f==="antd"?a:(Array.isArray(a)?a:[]).map(ae=>({title:ae.name,dataIndex:ae.selector,key:ae.selector,sorter:ae.sorter||(ae.sortable?(he,ye)=>{const ke=he[ae.selector]??"",Pe=ye[ae.selector]??"";return typeof ke=="number"&&typeof Pe=="number"?ke-Pe:String(ke).localeCompare(String(Pe))}:!1),render:(he,ye)=>{switch(ae.selector){case"my_staff":return ye.staff_id!=="0"?ye.staff_id:"Admin";case"gallery_cat_logo":return e.jsx(n.Image,{width:50,src:`undefined/branch/gallery/${ye.gallery_cat_logo}`});case"file01":return ye.documents?e.jsx("div",{onClick:()=>N(`undefined/branch/frontoffice/${ye.documents}`),style:{textDecoration:"underline",color:"blue",cursor:"pointer"},children:"view file"}):"Not Uploaded";case"amount":case"fine_amount":case"basic_pay":case"net_amount":return Rt(he);case"full_name":return e.jsx("span",{onClick:()=>J(ye),style:{cursor:"pointer",color:"blue",textDecoration:"underline"},children:he||`${ye.firstname} ${ye.lastname}`});case"extra_curricular_activity":return he==="Yes"?"Extra Subject":"Fees Master";case"is_active":return he==="yes"?e.jsx("span",{className:"label label-success",children:"Active"}):e.jsx("span",{className:"label label-danger",children:"Inactive"});case"steps":return ye?.current_status==="Active"?e.jsx(n.Progress,{percent:ye.steps==="1"?30:ye.steps==="2"?70:100,steps:3}):e.jsx("span",{className:"label label-success",children:ye?.current_status});case"Password":return e.jsx("span",{onClick:()=>Y(ye.id,ye),style:{cursor:"pointer"},className:"label label-danger",children:"Update"});case"Passwordstd":return e.jsx("span",{onClick:()=>se(ye.id,ye),style:{cursor:"pointer"},className:"label label-danger",children:"Update"});case"payment_status":return e.jsx(n.Tag,{onClick:()=>m?.(ye.id),color:he==="paid"?"#66aa18":he==="partially_paid"?"#ff5722":"#DC143C",children:he==="paid"?"Paid":he==="partially_paid"?"Partially Paid":"Due"});case"fees_duration":return Mu().find(ke=>ke.value===he)?.label;case"status":return e.jsx("span",{onClick:()=>m?.(ye?.fk_staffID,ye?.total_leave),className:`label ${he==="due"?"label-danger":"label-success"}`,style:{cursor:"pointer"},children:he==="due"?"Due":"Paid"});case"subject_type_1":return e.jsxs(e.Fragment,{children:[ye.is_theory==="yes"&&"Theory, ",ye.is_practical==="yes"&&"Practical"]});case"ec_no":return e.jsx(Xl,{html:ye.ec_no,onBlur:ke=>de(ye.id,ye.admission_no,ke.target.innerHTML,oe)});case"Assign":case"AssignExtCarriAci":case"Medical":return e.jsx(n.Button,{type:"primary",icon:e.jsx(ee.SendOutlined,{}),size:"small",onClick:()=>re(ye.id,!0,ae.name),children:ae.name});case"Button":return e.jsx(n.Tag,{color:"cyan",onClick:()=>m?.(ye),children:ae.name});default:return typeof ae.render=="function"?ae.render(he,ye):he}}})),...s?[{title:"Action",key:"action",render:(ae,he)=>{const ye=he?.current_status==="Promoted",ke=()=>{if(A=="sameAddUpdate"){re(he,!0);return}if(A?.type==="examEdit"){A.editFunc(he.id);return}re(he.id||he,!0)},Pe=()=>{if(A==="student_result"){m?.(he);return}if(A==="student"){m?.(he.id,he.class_id);return}m?.(he.id)},ue=()=>{g?.(he?.id)};return e.jsxs("div",{style:{display:"flex",gap:"5px"},children:[p?.[0]?.status&&e.jsx(n.Button,{icon:e.jsx(ee.EditOutlined,{}),size:"small",disabled:ye,onClick:ke}),p?.[1]?.status&&e.jsx(n.Button,{icon:e.jsx(ee.DeleteOutlined,{}),size:"small",danger:!0,disabled:ye,onClick:ue}),p?.[2]?.status&&e.jsx(n.Button,{icon:e.jsx(ee.EyeOutlined,{}),size:"small",onClick:Pe})]})}}]:[]],ve=i.useMemo(()=>{if(!o)return[];const ae=o?.data?.data??o?.data??o??{};return Array.isArray(ae)?ae:Array.isArray(ae?.data)?ae.data:Array.isArray(ae?.resultlist)?ae.resultlist:Array.isArray(ae?.students)?ae.students:Array.isArray(ae?.report)?ae.report:[]},[o]),Oe=i.useMemo(()=>{const ae=j.trim().toLowerCase();return ae?ve.filter(he=>Object.values(he??{}).some(ye=>String(ye??"").toLowerCase().includes(ae))):ve},[ve,j]),Ye=!!t.parentCallback,Be=j?Oe.length:o?.pagination?.total_rows??Oe.length,Le=(B.page-1)*B.rowsPerPage,Ze=Ye?Oe:Oe.slice(Le,Le+B.rowsPerPage),at=i.useMemo(()=>(Ze??[]).map((ae,he)=>({...ae??{},__serialNumber:Le+he+1})),[Le,Ze]),fe=Be===0?0:Math.min(Le+1,Be),je=Be===0?0:Math.min(Le+Ze.length,Be);let xe;return d?xe=e.jsx("p",{children:"Loading..."}):c?xe=e.jsx("p",{children:c.message}):Ze.length?xe=e.jsx(n.Table,{dataSource:at,columns:be,size:"small",bordered:!0,pagination:!1,rowSelection:x,rowKey:(ae,he)=>ae?.id??ae?._id??he,scroll:{x:"max-content"}}):xe=e.jsx(n.Empty,{}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx(n.Drawer,{open:y,placement:"right",onClose:()=>r?.(!1),width:720,children:Ce()}),e.jsx(n.Modal,{title:"Update Password",open:S,onCancel:()=>E(!1),footer:null,children:e.jsx("form",{onSubmit:Se,children:e.jsxs(v,{children:[e.jsx(v,{style:{marginBottom:12},children:e.jsx(z,{type:"password",label:"Password",name:"password",required:"required"})}),e.jsx(v,{style:{marginTop:16},children:e.jsx(n.Button,{type:"primary",htmlType:"submit",children:"Update"})})]})})}),e.jsx(n.Modal,{title:" Update Credential",open:F,onCancel:()=>q(!1),footer:null,children:e.jsx("form",{onSubmit:Ee,children:e.jsxs(v,{children:[e.jsx(v,{style:{marginBottom:12},children:e.jsx(z,{type:"text",label:"User Name",name:"username",required:"required",value:D?.username?D?.username:"",onChange:ae=>_({...D,username:ae.target.value})})}),e.jsx(v,{style:{marginBottom:12},children:e.jsx(z,{label:"Password",name:"password",required:"required",value:D?.password?D?.password:"",onChange:ae=>_({...D,password:ae.target.value})})}),e.jsx(v,{style:{marginTop:16},children:e.jsx(n.Button,{type:"primary",htmlType:"submit",children:"Update"})})]})})}),e.jsx(n.Modal,{open:k,onCancel:I,footer:null,centered:!0,width:"80%",className:R.modal,children:e.jsxs("div",{style:{position:"relative"},className:R.img,children:[e.jsx(n.Image,{src:u,alt:"",style:{width:"100%"},preview:!1}),e.jsx(n.Button,{type:"text",icon:e.jsx(ee.CloseOutlined,{}),onClick:I,style:{position:"absolute",top:8,right:8,background:"rgba(0,0,0,0.45)",color:"#fff"}})]})}),e.jsxs(n.Card,{bodyStyle:{padding:16,background:"#f7f7fa"},children:[e.jsx("style",{children:`
16
+ `),null));return(0,n.renderToString)(a.default.createElement("table",null,a.default.createElement("tbody",null,c,h)))}return an.default=o,an}var kl;function hg(){return kl||(kl=1,(function(t){var a=Bn&&Bn.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(t,"__esModule",{value:!0}),t.createTable=t.template=t.uri=t.format=t.base64=void 0;function n(l){return window.btoa(unescape(encodeURIComponent(l)))}t.base64=n;function r(l,d){return l.replace(/{(\w+)}/g,(c,h)=>d[h])}t.format=r,t.uri="data:application/vnd.ms-excel;base64,",t.template='<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><meta charset="UTF-8"><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body>{table}</body></html>';var o=mg();Object.defineProperty(t,"createTable",{enumerable:!0,get:function(){return a(o).default}})})(Bn)),Bn}var Rl;function du(){if(Rl)return Ut;Rl=1;var t=Ut&&Ut.__createBinding||(Object.create?(function(f,p,m,v){v===void 0&&(v=m);var S=Object.getOwnPropertyDescriptor(p,m);(!S||("get"in S?!p.__esModule:S.writable||S.configurable))&&(S={enumerable:!0,get:function(){return p[m]}}),Object.defineProperty(f,v,S)}):(function(f,p,m,v){v===void 0&&(v=m),f[v]=p[m]})),a=Ut&&Ut.__setModuleDefault||(Object.create?(function(f,p){Object.defineProperty(f,"default",{enumerable:!0,value:p})}):function(f,p){f.default=p}),n=Ut&&Ut.__importStar||function(f){if(f&&f.__esModule)return f;var p={};if(f!=null)for(var m in f)m!=="default"&&Object.prototype.hasOwnProperty.call(f,m)&&t(p,f,m);return a(p,f),p};Object.defineProperty(Ut,"__esModule",{value:!0}),Ut.downloadExcel=Ut.excel=void 0;const r=n(hg());function o(){return document?!0:((process==null?void 0:process.env.NODE_ENV)!=="production"&&console.error("Failed to access document object"),!1)}function l(f,p){const m=window.document.createElement("a");return m.href=r.uri+r.base64(r.format(r.template,p)),m.download=f,document.body.appendChild(m),m.click(),document.body.removeChild(m),!0}function d(f,p){if(f)return f.cloneNode(!0).outerHTML;if(p)return r.createTable(p);console.error("currentTableRef or tablePayload does not exist")}function c({fileName:f,sheet:p,tablePayload:m},v){if(!o())return!1;const S=d(v,m);return l(f,{worksheet:p||"Worksheet",table:S})}Ut.downloadExcel=c;function h({currentTableRef:f,filename:p,sheet:m}){function v(){if(!o())return!1;const S=d(f),y=`${p}.xls`;return l(y,{worksheet:m||"Worksheet",table:S})}return{onDownload:v}}return Ut.excel=h,Ut}var Il;function fg(){if(Il)return Fn;Il=1,Object.defineProperty(Fn,"__esModule",{value:!0}),Fn.useDownloadExcel=void 0;const t=i,a=du();function n({currentTableRef:r,filename:o,sheet:l}){const[d,c]=(0,t.useState)({});return(0,t.useEffect)(()=>{c({currentTableRef:r,filename:o,sheet:l})},[r,o,l]),(0,t.useMemo)(()=>(0,a.excel)(d),[d])}return Fn.useDownloadExcel=n,Fn}var Pl;function gg(){return Pl||(Pl=1,(function(t){var a=$n&&$n.__importDefault||function(d){return d&&d.__esModule?d:{default:d}};Object.defineProperty(t,"__esModule",{value:!0}),t.downloadExcel=t.useDownloadExcel=t.DownloadTableExcel=void 0;const n=a(i),r=fg();Object.defineProperty(t,"useDownloadExcel",{enumerable:!0,get:function(){return r.useDownloadExcel}});const o=du();Object.defineProperty(t,"downloadExcel",{enumerable:!0,get:function(){return o.downloadExcel}});const l=({currentTableRef:d,filename:c,sheet:h,children:f})=>{const{onDownload:p}=(0,r.useDownloadExcel)({currentTableRef:d,filename:c,sheet:h});return n.default.createElement("span",{onClick:p},f)};t.DownloadTableExcel=l})($n)),$n}var cu=gg();const Jt=t=>{console.log("ExportDataWithHeader______",t);const{tableRef:a}=t.data;t?.tableRef;const n=new Date().getTime(),r=Ka.useReactToPrint({content:()=>a.current});return e.jsx(e.Fragment,{children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsxs(s.Row,{gutter:8,children:[e.jsx(s.Col,{children:e.jsx(s.Button,{type:"text",icon:e.jsx(re.PrinterOutlined,{style:{color:"#5080f8"}}),onClick:r})}),e.jsx(s.Col,{children:e.jsx(cu.DownloadTableExcel,{filename:n,sheet:"users",currentTableRef:a.current,children:e.jsx(s.Button,{type:"text",icon:e.jsx(re.FileTextOutlined,{style:{color:"#5080f8"}})})})})]})})})})},da=t=>{const{tableRef:a}=t;return new Date().getTime(),e.jsx(e.Fragment,{children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{span:24,style:{display:"flex",justifyContent:"center",alignSelf:"center",paddingBottom:"20px",position:"relative"}})})})},ta=i.createContext(),yg=()=>({modal:{outline:"none",display:"flex",alignItems:"center",justifyContent:"center","&:hover":{backgroundcolor:"red"}},img:{outline:"none"},passwordmodal:{outline:"none",display:"flex",alignItems:"center",justifyContent:"center"}}),Ke=t=>{const{columns:a,action:n,DrawerUpdate:r,editDesign:o,newData:l,Loading:d,error:c,deleteTodoMutation:h,open:f,ActionView:p,viewDetails:m,myType:v,type:S,urlkey:y,columnstype:g,rowSelection:b}=t.data,T=yg(),[R,I]=i.useState(!1),[A,_]=i.useState(null),[u,x]=i.useState("false"),[j,M]=i.useState(!1),[O,z]=i.useState(!1),[k,F]=i.useState(),[C,E]=i.useState(""),P=()=>I(!1),U=ce=>{x(ce),I(!0)},[H,W]=i.useState(),[L,B]=i.useState({page:t?.data?.pageController?t.data?.pageController?.page:1,rowsPerPage:t?.data?.pageController?t.data?.pageController?.rowsPerPage:10}),$=i.useRef(null),N=(ce,ve)=>{t.parentCallback?.(ce,ve),B({rowsPerPage:ve,page:ce})},V=(ce,ve)=>{_(ve),M(!0),F(ce)},Q=(ce,ve)=>{_(ve),z(!0),F(ce)},Z=t?.data?.onNavigate??t?.onNavigate,J=(ce,ve)=>{if(typeof Z=="function"){Z(ce,ve);return}typeof window<"u"&&typeof ce=="string"&&ce.length>0&&window.location.assign(ce)},K=ce=>{if(S==="staff"){J(`/HumanResourceDashboard/StaffFullInformation?id=${ce.fk_staffID}`,ce);return}J(`/StudentInformation/StudentFullInformation?id=${ce.id}`,ce)},X=(ce,ve)=>{W(ce),r?.(ve)},ee=async(ce,ve,_e,Ve)=>{r?.(!0),_e!==""&&((await Ve({id:ce,admission_no:ve,ec_no:_e}))?.Status==="Success"?s.message.success("Ec No updated successfully"):s.message.error("Failed to Update Ec No."))},pe=()=>e.jsx(ta.Provider,{value:H,children:o}),{trigger:te}=it("branchapi/staff/updateStaffPassword",gn),{trigger:se}=it("branchapi/Student/updateEcNo",gn),{trigger:le}=it(y,(ce,ve)=>gn("student/studentDetails/editStudentLogInCredential",ve)),Ce=async ce=>{ce.preventDefault(),M(!1);try{(await te({staff_id:k,new_passwod:ce.target.password.value}))?.Status==="Success"?s.message.success("Password updated successfully"):s.message.error("Failed to update password")}catch{s.message.error("Failed to update password")}},Le=async ce=>{ce.preventDefault(),z(!1);try{(await le({edit_id:A?.edit_id,new_passwod:ce.target.password.value,username:ce.target.username.value,branch_id:JSON.parse(localStorage.getItem("genrall_settings"))?.fk_branchID}))?.Status==="Success"?s.message.success("Password updated successfully"):s.message.error("Failed to update password")}catch(ve){s.message.error(ve?.response?.data?.msg??"Failed to update password")}},Re=(Array.isArray(a)?a:[]).some(ce=>ce?.fixed==="left"),xe=[{title:"SR. NO.",dataIndex:"__serialNumber",key:"__serialNumber",width:90,fixed:g==="antd"&&Re?"left":void 0,sorter:(ce,ve)=>(ce.__serialNumber??0)-(ve.__serialNumber??0),render:ce=>ce},...g==="antd"?a:(Array.isArray(a)?a:[]).map(ce=>({title:ce.name,dataIndex:ce.selector,key:ce.selector,sorter:ce.sorter||(ce.sortable?(ve,_e)=>{const Ve=ve[ce.selector]??"",He=_e[ce.selector]??"";return typeof Ve=="number"&&typeof He=="number"?Ve-He:String(Ve).localeCompare(String(He))}:!1),render:(ve,_e)=>{switch(ce.selector){case"my_staff":return _e.staff_id!=="0"?_e.staff_id:"Admin";case"gallery_cat_logo":return e.jsx(s.Image,{width:50,src:`undefined/branch/gallery/${_e.gallery_cat_logo}`});case"file01":return _e.documents?e.jsx("div",{onClick:()=>U(`undefined/branch/frontoffice/${_e.documents}`),style:{textDecoration:"underline",color:"blue",cursor:"pointer"},children:"view file"}):"Not Uploaded";case"amount":case"fine_amount":case"basic_pay":case"net_amount":return ra(ve);case"full_name":return e.jsx("span",{onClick:()=>K(_e),style:{cursor:"pointer",color:"blue",textDecoration:"underline"},children:ve||`${_e.firstname} ${_e.lastname}`});case"extra_curricular_activity":return ve==="Yes"?"Extra Subject":"Fees Master";case"is_active":return ve==="yes"?e.jsx("span",{className:"label label-success",children:"Active"}):e.jsx("span",{className:"label label-danger",children:"Inactive"});case"steps":return _e?.current_status==="Active"?e.jsx(s.Progress,{percent:_e.steps==="1"?30:_e.steps==="2"?70:100,steps:3}):e.jsx("span",{className:"label label-success",children:_e?.current_status});case"Password":return e.jsx("span",{onClick:()=>V(_e.id,_e),style:{cursor:"pointer"},className:"label label-danger",children:"Update"});case"Passwordstd":return e.jsx("span",{onClick:()=>Q(_e.id,_e),style:{cursor:"pointer"},className:"label label-danger",children:"Update"});case"payment_status":return e.jsx(s.Tag,{onClick:()=>m?.(_e.id),color:ve==="paid"?"#66aa18":ve==="partially_paid"?"#ff5722":"#DC143C",children:ve==="paid"?"Paid":ve==="partially_paid"?"Partially Paid":"Due"});case"fees_duration":return pg().find(Ve=>Ve.value===ve)?.label;case"status":return e.jsx("span",{onClick:()=>m?.(_e?.fk_staffID,_e?.total_leave),className:`label ${ve==="due"?"label-danger":"label-success"}`,style:{cursor:"pointer"},children:ve==="due"?"Due":"Paid"});case"subject_type_1":return e.jsxs(e.Fragment,{children:[_e.is_theory==="yes"&&"Theory, ",_e.is_practical==="yes"&&"Practical"]});case"ec_no":return e.jsx(nu,{html:_e.ec_no,onBlur:Ve=>ee(_e.id,_e.admission_no,Ve.target.innerHTML,se)});case"Assign":case"AssignExtCarriAci":case"Medical":return e.jsx(s.Button,{type:"primary",icon:e.jsx(re.SendOutlined,{}),size:"small",onClick:()=>X(_e.id,!0,ce.name),children:ce.name});case"Button":return e.jsx(s.Tag,{color:"cyan",onClick:()=>m?.(_e),children:ce.name});default:return typeof ce.render=="function"?ce.render(ve,_e):ve}}})),...n?[{title:"Action",key:"action",render:(ce,ve)=>{const _e=ve?.current_status==="Promoted",Ve=()=>{if(v=="sameAddUpdate"){X(ve,!0);return}if(v?.type==="examEdit"){v.editFunc(ve.id);return}X(ve.id||ve,!0)},He=()=>{if(v==="student_result"){m?.(ve);return}if(v==="student"){m?.(ve.id,ve.class_id);return}m?.(ve.id)},je=()=>{h?.(ve?.id)};return e.jsxs("div",{style:{display:"flex",gap:"5px"},children:[p?.[0]?.status&&e.jsx(s.Button,{icon:e.jsx(re.EditOutlined,{}),size:"small",disabled:_e,onClick:Ve}),p?.[1]?.status&&e.jsx(s.Button,{icon:e.jsx(re.DeleteOutlined,{}),size:"small",danger:!0,disabled:_e,onClick:je}),p?.[2]?.status&&e.jsx(s.Button,{icon:e.jsx(re.EyeOutlined,{}),size:"small",onClick:He})]})}}]:[]],Te=i.useMemo(()=>{if(!l)return[];const ce=l?.data?.data??l?.data??l??{};return Array.isArray(ce)?ce:Array.isArray(ce?.data)?ce.data:Array.isArray(ce?.resultlist)?ce.resultlist:Array.isArray(ce?.students)?ce.students:Array.isArray(ce?.report)?ce.report:[]},[l]),Ue=i.useMemo(()=>{const ce=C.trim().toLowerCase();return ce?Te.filter(ve=>Object.values(ve??{}).some(_e=>String(_e??"").toLowerCase().includes(ce))):Te},[Te,C]),ye=!!t.parentCallback,me=C?Ue.length:l?.pagination?.total_rows??Ue.length,Pe=(L.page-1)*L.rowsPerPage,Ye=ye?Ue:Ue.slice(Pe,Pe+L.rowsPerPage),ze=i.useMemo(()=>(Ye??[]).map((ce,ve)=>({...ce??{},__serialNumber:Pe+ve+1})),[Pe,Ye]),we=me===0?0:Math.min(Pe+1,me),ke=me===0?0:Math.min(Pe+Ye.length,me);let De;return d?De=e.jsx("p",{children:"Loading..."}):c?De=e.jsx("p",{children:c.message}):Ye.length?De=e.jsx(s.Table,{dataSource:ze,columns:xe,size:"small",bordered:!0,pagination:!1,rowSelection:b,rowKey:(ce,ve)=>ce?.id??ce?._id??ve,scroll:{x:"max-content"}}):De=e.jsx(s.Empty,{}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx(s.Drawer,{open:f,placement:"right",onClose:()=>r?.(!1),width:720,children:pe()}),e.jsx(s.Modal,{title:"Update Password",open:j,onCancel:()=>M(!1),footer:null,children:e.jsx("form",{onSubmit:Ce,children:e.jsxs(w,{children:[e.jsx(w,{style:{marginBottom:12},children:e.jsx(G,{type:"password",label:"Password",name:"password",required:"required"})}),e.jsx(w,{style:{marginTop:16},children:e.jsx(s.Button,{type:"primary",htmlType:"submit",children:"Update"})})]})})}),e.jsx(s.Modal,{title:" Update Credential",open:O,onCancel:()=>z(!1),footer:null,children:e.jsx("form",{onSubmit:Le,children:e.jsxs(w,{children:[e.jsx(w,{style:{marginBottom:12},children:e.jsx(G,{type:"text",label:"User Name",name:"username",required:"required",value:A?.username?A?.username:"",onChange:ce=>_({...A,username:ce.target.value})})}),e.jsx(w,{style:{marginBottom:12},children:e.jsx(G,{label:"Password",name:"password",required:"required",value:A?.password?A?.password:"",onChange:ce=>_({...A,password:ce.target.value})})}),e.jsx(w,{style:{marginTop:16},children:e.jsx(s.Button,{type:"primary",htmlType:"submit",children:"Update"})})]})})}),e.jsx(s.Modal,{open:R,onCancel:P,footer:null,centered:!0,width:"80%",className:T.modal,children:e.jsxs("div",{style:{position:"relative"},className:T.img,children:[e.jsx(s.Image,{src:u,alt:"",style:{width:"100%"},preview:!1}),e.jsx(s.Button,{type:"text",icon:e.jsx(re.CloseOutlined,{}),onClick:P,style:{position:"absolute",top:8,right:8,background:"rgba(0,0,0,0.45)",color:"#fff"}})]})}),e.jsxs(s.Card,{bodyStyle:{padding:16,background:"#f7f7fa"},children:[e.jsx("style",{children:`
17
17
  .ubk-table-shell .ant-table-wrapper {
18
18
  background: #fff;
19
19
  border: 1px solid #e7e8f2;
@@ -56,7 +56,71 @@ Valid keys: `+JSON.stringify(Object.keys(B),null," "));var le=Ce(G,de,Y,se,X+".
56
56
  .ubk-table-shell .ant-pagination .ant-pagination-next button:hover {
57
57
  color: #8f99ff;
58
58
  }
59
- `}),e.jsx(v,{children:e.jsx("div",{style:{display:"flex",justifyContent:"space-between"},children:e.jsx(Ct,{data:{tableRef:M}})})}),e.jsxs("div",{className:"ubk-table-shell",ref:M,style:{marginTop:12},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:16,flexWrap:"wrap",marginBottom:14},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontSize:12,color:"#222"},children:[e.jsx("span",{children:"Show"}),e.jsx(n.Select,{size:"small",value:B.rowsPerPage,onChange:ae=>L(1,ae),options:[10,25,50,100].map(ae=>({label:ae,value:ae})),style:{width:72}}),e.jsx("span",{children:"entries"})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("span",{style:{fontSize:12,color:"#222"},children:"Search:"}),e.jsx(n.Input,{size:"small",allowClear:!0,value:j,onChange:ae=>{P(ae.target.value),$(he=>({...he,page:1}))},placeholder:"Enter search keyword",prefix:e.jsx(ee.SearchOutlined,{style:{color:"#a3a8cf"}}),style:{width:220,borderWidth:"0 0 1px 0",borderRadius:0,background:"transparent"}})]})]}),e.jsx("div",{className:"print-only",children:e.jsx(It,{})}),xe]}),o&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:16,marginTop:16,flexWrap:"wrap"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:`Showing ${fe} to ${je} of ${Be} entries`}),e.jsx(n.Pagination,{current:B.page,pageSize:B.rowsPerPage,total:Be||0,showSizeChanger:!1,onChange:L})]})]})]})},Bu=({token:t,type:a})=>{const[s,r]=i.useState({page:1,rowsPerPage:10}),l="api/branchapi/frontoffice/enquirytablelist",o=l.includes("?")?l.endsWith("?")||l.endsWith("&")?"":"&":"?",d=`${l}${o}page=${s.page}&per_page=${s.rowsPerPage}`,{isLoading:c,data:g,error:y}=H(t?[d,t]:null,([k,O])=>K(k,O)),[p,m]=i.useState(!1),A=(k,O)=>{r({page:k,rowsPerPage:parseInt(O)})},C=async k=>{},b=k=>{console.log("dsdsdsdsd",k),m(k)},f=()=>{},x=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],R=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0,sorter:{compare:(k,O)=>k.name.localeCompare(O.name)}},{id:"2",name:"Phone",selector:"contact",sortable:!0,sorter:(k,O)=>(k.contact||"").localeCompare(O.contact||"")},{id:"6",name:"Description",selector:"description",sortable:!0,sorter:(k,O)=>(k.description||"").localeCompare(O.description||"")},{id:"3",name:"Source",selector:"source_name",sortable:!0,sorter:(k,O)=>(k.source_name||"").localeCompare(O.source_name||"")},{id:"4",name:"Enquiry Date",selector:"date",sortable:!0,sorter:(k,O)=>new Date(k.date)-new Date(O.date)},{id:"5",name:"Next Follow Up Date",selector:"follow_up_date",sortable:!0,sorter:(k,O)=>new Date(k.follow_up_date)-new Date(O.follow_up_date)}]);return e.jsx("div",{children:e.jsx(Ie,{parentCallback:A,data:{newData:g,columns:R,action:!0,Loading:c,error:y,open:p,viewDetails:f,deleteTodoMutation:C,DrawerUpdate:b,ActionView:x}})})};var Lu=Ql();const As=Kl(Lu),ao=()=>{};class lr extends i.Component{state={value:this.props.value||this.props.defaultValue||""};selectRef=null;setSelectRef=a=>{this.selectRef=a};componentDidUpdate(a){a.value!==this.props.value&&this.setState({value:this.props.value})}onChange=(a,s)=>{this.props.onChange(a,s),this.setState({value:a})};getValue=()=>{const{value:a}=this.state;return a?Array.isArray(a)?a.length?"valid":"":typeof a=="object"?a.value||"":a:""};render(){const{SelectComponent:a,required:s,...r}=this.props,{isDisabled:l}=this.props,o=!l;return e.jsxs("div",{children:[e.jsx(a,{...r,ref:this.setSelectRef,onChange:this.onChange}),o&&e.jsx("input",{tabIndex:-1,autoComplete:"off",style:{opacity:0,width:"100%",height:0,display:"block"},value:this.getValue(),onChange:ao,onFocus:()=>this.selectRef.focus(),required:s})]})}}lr.defaultProps={onChange:ao};lr.protoTypes={selectComponent:As.func.isRequired,onChange:As.func,required:As.bool};const qu={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},zu={menuPortal:t=>({...t,zIndex:9999}),control:(t,a)=>({...t,minHeight:40,height:40,fontSize:"14px",border:"none",borderBottom:`1px solid ${a.isFocused?"#222":"#d9d9d9"}`,borderRadius:0,boxShadow:"none",backgroundColor:"transparent",transition:"border-color 0.2s ease","&:hover":{border:"none",borderBottom:`1px solid ${a.isFocused?"#222":"#a8a8a8"}`}}),valueContainer:t=>({...t,height:40,padding:"0 0",display:"flex",alignItems:"center"}),input:t=>({...t,margin:0,padding:0}),indicatorSeparator:()=>({display:"none"}),indicatorsContainer:t=>({...t,height:40}),dropdownIndicator:(t,a)=>({...t,padding:"0 0 0 8px",color:a.isFocused?"#222":"#b5b5b5"}),singleValue:t=>({...t,color:"#222",marginLeft:0}),placeholder:t=>({...t,color:"#9f9f9f",marginLeft:0}),option:(t,a)=>({...t,fontSize:"14px",backgroundColor:a.isFocused?"#f8f8f8":"#fff",color:"#222",cursor:"pointer"})},no=t=>e.jsx(yl.components.Input,{...t,className:"input-cont",required:!!t?.selectProps?.required}),Yu=t=>e.jsx(lr,{...t,SelectComponent:yl,components:{Input:no},options:t.options}),Q=i.forwardRef(({...t},a)=>e.jsxs("div",{className:"form-group",style:{height:"auto"},children:[t.label&&e.jsx("label",{className:"labelfont",style:qu,children:t?.label}),e.jsx(Yu,{components:{Input:no},menuPortalTarget:document.body,styles:zu,className:"input-cont",...t,ref:a})]})),Vu={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Wu={width:"100%",height:"40px",background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},Hu=(t,a,s)=>a?t>te(s).endOf("day")||t<te(a).endOf("day"):!1,Ue=i.forwardRef(function(a,s){const{...r}=a;return e.jsxs("div",{className:"form-group",children:[r.Desplay&&e.jsx("label",{className:`labelfont ${r.classnme?r.classnme:""}`,style:Vu,children:r.Desplay}),e.jsx(n.DatePicker,{...r,style:{...Wu,...r.style||{}},className:"form-group",disabledDate:l=>Hu(l,r.sessionStart||r.minDate?.subtract(1,"day").format("YYYY-MM-DD"),r.sessionEnd||r.maxDate?.format("YYYY-MM-DD")),required:!0,ref:s})]})}),Ku={minWidth:160,height:36,padding:"0 28px",border:"none",borderRadius:999,background:"linear-gradient(90deg, #f59b1c 0%, #ef3e7b 100%)",color:"#fff",fontSize:14,fontWeight:700,textTransform:"uppercase",cursor:"pointer",boxShadow:"none"},ne=i.forwardRef(({error:t,success:a,disabled:s,loading:r,style:l,...o},d)=>e.jsxs("div",{className:"form-group",style:{marginBottom:0,position:"relative"},children:[e.jsx("input",{...o,ref:d,disabled:s||r,style:{...Ku,opacity:s||r?.7:1,cursor:s||r?"not-allowed":"pointer",...l||{}}}),r?e.jsx("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",opacity:.8,children:e.jsx("animateTransform",{attributeName:"transform",type:"rotate",dur:"0.8s",values:"0 0 0 0;360 0 0 0",repeatCount:"indefinite",children:e.jsx("circle",{cx:"8",cy:"8",r:"6",strokeWidth:"2",stroke:"currentColor",fill:"none",strokeDasharray:"60",strokeLinecap:"round",children:e.jsx("animate",{attributeName:"stroke-dashoffset",type:"subtract",from:"60",to:"0",dur:"0.8s",repeatCount:"indefinite"})})})})}):null]})),Gu={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Ju={width:"100%",minHeight:80,padding:"8px 0",fontSize:"14px",color:"#222",background:"transparent",border:0,borderTop:0,borderLeft:0,borderRight:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",outline:"none",resize:"vertical",transition:"border-color 0.2s ease"},lt=({style:t,onFocus:a,onBlur:s,...r})=>{const[l,o]=i.useState(!1);return e.jsxs("div",{style:{width:"100%"},children:[r.label&&e.jsx("label",{className:"labelfont",style:Gu,children:r.label}),e.jsx("textarea",{placeholder:r.placeholder||r.label,...r,onFocus:d=>{o(!0),a?.(d)},onBlur:d=>{o(!1),s?.(d)},style:{...Ju,borderBottom:`1px solid ${l?"#222":"#d9d9d9"}`,...t||{}}})]})},Ge=t=>({optimisticData:a=>[...a.data,t],populateCache:(a,s)=>[...s.data,a]}),ze=t=>({optimisticData:a=>a.data.filter(s=>s.id!==t),populateCache:(a,s)=>s.data.filter(r=>r.id!==t)}),Qu=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Xu="api/branchapi/Frontoffice/visitorbookShowdata",Zu="api/branchapi/Frontoffice/purposedropdown";function ep({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),l=Xu.replace(/\?.*$/,""),{isLoading:o,data:d}=H(s&&r?[l,r,s]:null,([f,x,R])=>Sa(f,{id:x},R)),{isLoading:c,data:g}=H(s?[Zu,s]:null,([f,x])=>K(f,x)),y=i.useMemo(()=>Qu(g),[g]),p=d?.data?.[0],[m,A]=i.useState({purpose:void 0,name:"",phone:"",id_card:"",number_of_person:1,date:null,in_time:null,out_time:null,note:"",address:"",image:""});i.useEffect(()=>{p&&A({purpose:p?.purpose,name:p?.name||"",phone:p?.contact||"",id_card:p?.id_proof||"",number_of_person:p?.no_of_pepple||1,date:p?.date?te(p.date):null,in_time:p?.in_time?te(p.in_time,"h:mm a"):null,out_time:p?.out_time?te(p.out_time,"h:mm a"):null,note:p?.note||"",address:p?.address||"",image:p?.image||""})},[p]);const C=(f,x)=>{A(R=>({...R,[f]:x}))},b=`${bt()}/branchapi/frontoffice/uploadfrontofficeDocument`;return o||c?e.jsx(v,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:f=>a(f,r),children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Visitor"})}),e.jsx(v,{p:2,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Purpose",name:"purpose",allowSelectAll:!1,value:m.purpose,onChange:f=>C("purpose",f)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"name",type:"text",label:"Name",required:!0,value:m.name,onChange:f=>C("name",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"phone",type:"text",label:"Phone No.",required:!0,value:m.phone,onChange:f=>C("phone",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"id_card",type:"text",label:"ID Card",value:m.id_card,onChange:f=>C("id_card",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"number_of_person",type:"number",label:"Number of Person",value:m.number_of_person,onChange:f=>C("number_of_person",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:m.date,Desplay:"Date",id:"date",name:"date",required:!0,onChange:f=>C("date",f)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",value:m.in_time,onChange:f=>C("in_time",f),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time",value:m.in_time?m.in_time.format("h:mm a"):"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",value:m.out_time,onChange:f=>C("out_time",f),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"out_time",value:m.out_time?m.out_time.format("h:mm a"):"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note",value:m.note,onChange:f=>C("note",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(lt,{type:"text",label:"Address",name:"address",rows:3,required:!0,value:m.address,onChange:f=>C("address",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.Upload,{action:b,headers:{Authorization:s},maxCount:1,onChange:f=>{if(f.file.status==="removed"&&C("image",""),f.file.status==="done"){const x=f.file.response?.data??f.file.response?.file??"";C("image",String(x??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:m.image?"Change":"Upload"})}),e.jsx("input",{type:"hidden",name:"image",value:m.image||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; } .textDanger { color: #dc2626; }"})]})}const tp=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},ra="api/branchapi/Frontoffice/visitortablelist",ap="api/branchapi/Frontoffice/purposedropdown",np="api/branchapi/frontoffice/addvisitors",sp="api/branchapi/frontoffice/editvisitorsdata",rp="api/branchapi/frontoffice/deletevisitors",ip=`${bt()}/branchapi/frontoffice/uploadfrontofficeDocument`;function lp({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(""),[c,g]=i.useState(""),[y,p]=i.useState("03:30 PM"),m=(T,U)=>{s({page:T,rowsPerPage:Number.parseInt(U,10)})},A=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],C=i.useMemo(()=>{const T=ra.includes("?")?ra.endsWith("?")||ra.endsWith("&")?"":"&":"?";return`${ra}${T}page=${a.page}&per_page=${a.rowsPerPage}`},[ra,a.page,a.rowsPerPage]),{isLoading:b,error:f,data:x,mutate:R}=H(t?[C,t]:null,([T,U])=>K(T,U)),{isLoading:k,data:O}=H(t?[ap,t]:null,([T,U])=>K(T,U)),D=i.useMemo(()=>tp(O),[O]),_=async(T,U)=>{try{await R(Ne(T,U,t),Ge(U)),w.success("Success! Added new item.")}catch{w.error("Failed to add the new item.")}},u=async T=>{try{await R(He(rp,T,t),ze(T)),w.success("Success! Deleted item.")}catch{w.error("Failed to delete the item.")}},h=async(T,U,j)=>{try{const P=await We(T,U,t);R(P),Array.isArray(P?.data)&&R(`${ra.replace(/\?.*$/,"")}?id=${j}`,P),w.success("Success! Updated item.")}catch{w.error("Failed to update the item.")}},S=async(T,U)=>{T.preventDefault();const j=new FormData(T.target);await h(sp,j,U),T.target.reset(),d(""),l(!1)},E=async T=>{if(T.preventDefault(),!T.target?.date?.value)w.error("Select required dates"),T.target?.date?.focus(),g("textDanger");else{const U=new FormData(T.target);await _(np,U),T.target.reset(),g(""),d(""),p("03:30 PM")}},F=T=>{l(T)},q=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0},{id:"2",name:"Purpose",selector:"visitors_purpose",sortable:!0},{id:"3",name:"Phone",selector:"contact",sortable:!0},{id:"4",name:"Date",selector:"date",sortable:!0},{id:"5",name:"Address",selector:"address",sortable:!0},{id:"5",name:"In Time",selector:"in_time",sortable:!0},{id:"6",name:"Out Time",selector:"out_time",sortable:!0}],[]);return e.jsxs("div",{children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Visitor"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:E,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:D,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Purpose",name:"purpose",required:!0,allowSelectAll:!1})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"name",type:"text",label:"Name"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{pattern:"[0-9]{3}[0-9]{3}[0-9]{4}",name:"phone",type:"tel",label:"Phone No.",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"id_card",type:"text",label:"ID Card"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{defaultValue:1,name:"number_of_person",type:"number",label:"Number of Person"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:te(),Desplay:"Date",id:"date",name:"date",classnme:c,onChange:()=>g("")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.TimePicker,{defaultValue:te("2022-04-17T15:30","h:mm a"),id:"in_time",use12Hours:!0,format:"h:mm a",onChange:(T,U)=>p(U),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time",value:y,readOnly:!0})]})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(lt,{type:"text",label:"Address*",name:"address",rows:3,required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.Upload,{action:ip,headers:{Authorization:t},maxCount:1,onChange:T=>{if(T.file.status==="removed"&&d(""),T.file.status==="done"){const U=T.file.response?.data??T.file.response?.file??"";d(String(U??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:o?"Change":"Upload"})}),e.jsx("input",{type:"hidden",name:"image",value:o||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Visitor List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:m,data:{newData:x,columns:q,action:!0,ActionView:A,Loading:b,error:f,editDesign:e.jsx(ep,{data:{handleUpdate:S,token:t}}),deleteTodoMutation:u,open:r,DrawerUpdate:F,viewDetails:""}})})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const op="api/branchapi/frontoffice/generalcallsShowdata",dp=[{value:"Incoming",label:"Incoming"},{value:"Outgoing",label:"Outgoing"}];function cp({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),l=op.replace(/\?.*$/,""),{isLoading:o,data:d}=H(s&&r?[l,r,s]:null,([m,A,C])=>Sa(m,{id:A},C)),c=d?.data?.[0],[g,y]=i.useState({name:"",phone:"",description:"",date:null,next_follow_up_date:null,call_duration:"",note:"",call_type:""});i.useEffect(()=>{c&&y({name:c?.name||"",phone:c?.contact||"",description:c?.description||"",date:c?.date?te(c.date):null,next_follow_up_date:c?.follow_up_date?te(c.follow_up_date):null,call_duration:c?.call_dureation||"",note:c?.note||"",call_type:c?.call_type||""})},[c]);const p=(m,A)=>{y(C=>({...C,[m]:A}))};return o?e.jsx(v,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:m=>a(m,r),children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Call Log"})}),e.jsx(v,{p:2,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"name",type:"text",label:"Name",required:!0,value:g.name,onChange:m=>p("name",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"phone",type:"tel",label:"Phone",pattern:"[0-9]{3}[0-9]{3}[0-9]{4}",value:g.phone,onChange:m=>p("phone",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description",value:g.description,onChange:m=>p("description",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:g.date,Desplay:"Date",id:"date",name:"date",onChange:m=>p("date",m)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:g.next_follow_up_date,Desplay:"Next Follow Up Date",id:"fdate",name:"next_follow_up_date",onChange:m=>p("next_follow_up_date",m)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"call_duration",type:"text",label:"Call Duration",value:g.call_duration,onChange:m=>p("call_duration",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note",value:g.note,onChange:m=>p("note",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:dp,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Call Type",name:"call_type",required:!0,allowSelectAll:!1,value:g.call_type?{value:g.call_type,label:g.call_type}:null,onChange:m=>p("call_type",m?.value||"")})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const ia="api/branchapi/frontoffice/generalcalltablelist",up="api/branchapi/frontoffice/addgenaralcalls",pp="api/branchapi/frontoffice/editgeneralcall",mp="api/branchapi/frontoffice/deletegeneralcall",hp=[{value:"Incoming",label:"Incoming"},{value:"Outgoing",label:"Outgoing"}],fp=[{key:"all",label:"All Calls"},{key:"Incoming",label:"Incoming"},{key:"Outgoing",label:"Outgoing"}];function yp({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(""),[c,g]=i.useState(""),[y,p]=i.useState("all"),[m,A]=i.useState(""),C=i.useRef(null),b=(T,U)=>{s({page:T,rowsPerPage:Number.parseInt(U,10)})},f=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],x=i.useMemo(()=>{const T=ia.includes("?")?ia.endsWith("?")||ia.endsWith("&")?"":"&":"?",U=new URLSearchParams;return U.set("page",String(a.page)),U.set("per_page",String(a.rowsPerPage)),y!=="all"&&U.set("call_type",y),`${ia}${T}${U.toString()}`},[ia,a.page,a.rowsPerPage,y]),{isLoading:R,error:k,data:O,mutate:D}=H(t?[x,t]:null,([T,U])=>K(T,U)),_=async(T,U)=>{try{await D(Ne(T,U,t),Ge(U)),w.success("Success! Added new item.")}catch{w.error("Failed to add the new item.")}},u=async T=>{try{await D(He(mp,T,t),ze(T)),w.success("Success! Deleted item.")}catch{w.error("Failed to delete the item.")}},h=async(T,U,j)=>{try{const P=await We(T,U,t);D(P),Array.isArray(P?.data)&&D(`${ia.replace(/\?.*$/,"")}?id=${j}`,P),w.success("Success! Updated item.")}catch{w.error("Failed to update the item.")}},S=async(T,U)=>{T.preventDefault();const j=new FormData(T.target);await h(pp,j,U),T.target.reset(),d(""),l(!1)},E=async T=>{if(T.preventDefault(),!T.target?.date?.value)w.error("Select required dates"),T.target?.date?.focus(),g("textDanger");else{const U=new FormData(T.target);await _(up,U),T.target.reset(),g(""),d(""),A("")}},F=T=>{l(T)},q=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0},{id:"2",name:"Phone",selector:"contact",sortable:!0},{id:"3",name:"Description",selector:"description",sortable:!0},{id:"4",name:"Date",selector:"date",sortable:!0},{id:"5",name:"Follow Up Date",selector:"follow_up_date",sortable:!0},{id:"6",name:"Call Duration",selector:"call_dureation",sortable:!0}],[]);return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Phone Call Log"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:E,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"name",type:"text",label:"Name"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{pattern:"[0-9]{3}[0-9]{3}[0-9]{4}",name:"phone",type:"tel",label:"Phone",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:te(),Desplay:"Date",id:"date",name:"date",classnme:c,onChange:()=>g("")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",Desplay:"Next Follow Up Date",id:"fdate",name:"follow_up_date"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"call_dureation",type:"text",label:"Call Duration"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:hp,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Call Type",name:"call_type",required:!0,allowSelectAll:!1,value:m?{value:m,label:m}:null,onChange:T=>A(T?.value||"")})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Phone Call Log List"})}),e.jsxs(v,{pt:3,children:[e.jsx(n.Tabs,{activeKey:y,onChange:p,items:fp}),e.jsx(Ct,{data:{tableRef:C}}),e.jsx(Ie,{parentCallback:b,data:{newData:O,columns:q,action:!0,ActionView:f,Loading:R,error:k,editDesign:e.jsx(cp,{data:{handleUpdate:S,token:t}}),deleteTodoMutation:u,open:r,DrawerUpdate:F,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const gp="api/branchapi/frontoffice/postaldispatchreceiveShowdata";function xp({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),l=gp.replace(/\?.*$/,""),{isLoading:o,data:d}=H(s&&r?[l,r,s]:null,([m,A,C])=>Sa(m,{id:A},C)),c=d?.data?.[0],[g,y]=i.useState({to_title:"",refernce:"",address:"",note:"",from_title:"",date:null,image:""});i.useEffect(()=>{c&&y({to_title:c?.to_title||"",refernce:c?.reference_no||"",address:c?.address||"",note:c?.note||"",from_title:c?.from_title||"",date:c?.date?te(c.date):null,image:c?.image||""})},[c]);const p=(m,A)=>{y(C=>({...C,[m]:A}))};return o?e.jsx(v,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:m=>a(m,r),children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Postal Dispatch"})}),e.jsx(v,{p:2,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"title",type:"text",label:"To Title *",required:!0,value:g.to_title,onChange:m=>p("to_title",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"refernce",type:"text",label:"Reference No",value:g.refernce,onChange:m=>p("refernce",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"address",type:"text",label:"Address",required:!0,value:g.address,onChange:m=>p("address",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note",value:g.note,onChange:m=>p("note",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"from_title",type:"text",label:"From Title",required:!0,value:g.from_title,onChange:m=>p("from_title",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:g.date,Desplay:"Date",id:"date",name:"date",onChange:m=>p("date",m)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const la="api/branchapi/frontoffice/postaldispatchtablelist",bp="api/branchapi/frontoffice/addpostaldispatch",jp="api/branchapi/frontoffice/editpostaldispatch",Sp="api/branchapi/frontoffice/deletepostalreceivedispatch";function vp({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(""),[c,g]=i.useState(""),y=i.useRef(null),p=(S,E)=>{s({page:S,rowsPerPage:Number.parseInt(E,10)})},m=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],A=i.useMemo(()=>{const S=la.includes("?")?la.endsWith("?")||la.endsWith("&")?"":"&":"?";return`${la}${S}page=${a.page}&per_page=${a.rowsPerPage}`},[la,a.page,a.rowsPerPage]),{isLoading:C,error:b,data:f,mutate:x}=H(t?[A,t]:null,([S,E])=>K(S,E)),R=async(S,E)=>{try{await x(Ne(S,E,t),Ge(E)),w.success("Success! Added new item.")}catch{w.error("Failed to add the new item.")}},k=async S=>{try{await x(He(Sp,S,t),ze(S)),w.success("Success! Deleted item.")}catch{w.error("Failed to delete the item.")}},O=async(S,E,F)=>{try{const q=await We(S,E,t);x(q),Array.isArray(q?.data)&&x(`${la.replace(/\?.*$/,"")}?id=${F}`,q),w.success("Success! Updated item.")}catch{w.error("Failed to update the item.")}},D=async(S,E)=>{S.preventDefault();const F=new FormData(S.target);await O(jp,F,E),S.target.reset(),d(""),l(!1)},_=async S=>{if(S.preventDefault(),!S.target?.date?.value)w.error("Select required dates"),S.target?.date?.focus(),g("textDanger");else{const E=new FormData(S.target);await R(bp,E),S.target.reset(),g(""),d("")}},u=S=>{l(S)},h=i.useMemo(()=>[{id:"1",name:"To Title",selector:"to_title",sortable:!0},{id:"2",name:"Reference No",selector:"reference_no",sortable:!0},{id:"3",name:"Address",selector:"address",sortable:!0},{id:"4",name:"Note",selector:"note",sortable:!0},{id:"5",name:"From Title",selector:"from_title",sortable:!0},{id:"6",name:"Date",selector:"date",sortable:!0}],[]);return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Postal Dispatch"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:_,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"title",type:"text",label:"To Title *"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"refernce",type:"text",label:"Reference No"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"address",type:"text",label:"Address"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"from_title",type:"text",label:"From Title"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:te(),Desplay:"Date",id:"date",name:"date",status:c===""?"":"error",classnme:c,onChange:()=>g("")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx("input",{type:"hidden",name:"image",value:o||"",readOnly:!0})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Postal Dispatch List"})}),e.jsxs(v,{pt:3,children:[e.jsx(Ct,{data:{tableRef:y}}),e.jsx(Ie,{parentCallback:p,data:{newData:f,columns:h,action:!0,ActionView:m,Loading:C,error:b,editDesign:e.jsx(xp,{data:{handleUpdate:D,token:t}}),deleteTodoMutation:k,open:r,DrawerUpdate:u,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const wp="api/branchapi/frontoffice/postaldispatchreceiveShowdata";function _p({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),l=wp.replace(/\?.*$/,""),{isLoading:o,data:d}=H(s&&r?[l,r,s]:null,([m,A,C])=>Sa(m,{id:A},C)),c=d?.data?.[0],[g,y]=i.useState({from_title:"",refernce:"",address:"",note:"",title:"",date:null,image:""});i.useEffect(()=>{c&&y({from_title:c?.from_title||"",refernce:c?.reference_no||"",address:c?.address||"",note:c?.note||"",title:c?.to_title||"",date:c?.date?te(c.date):null,image:c?.image||""})},[c]);const p=(m,A)=>{y(C=>({...C,[m]:A}))};return o?e.jsx(v,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:m=>a(m,r),children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Postal Receive"})}),e.jsx(v,{p:2,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"from_title",type:"text",label:"From Title *",required:!0,value:g.from_title,onChange:m=>p("from_title",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"refernce",type:"text",label:"Reference No",required:!0,value:g.refernce,onChange:m=>p("refernce",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"address",type:"text",label:"Address",required:!0,value:g.address,onChange:m=>p("address",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note",value:g.note,onChange:m=>p("note",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"title",type:"text",label:"To Title",required:!0,value:g.title,onChange:m=>p("title",m.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:g.date,Desplay:"Date",id:"date",name:"date",onChange:m=>p("date",m)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const oa="api/branchapi/frontoffice/postalrecivetablelist",Cp="api/branchapi/frontoffice/addpostalrecive",Ap="api/branchapi/frontoffice/editpostalrecive",Dp="api/branchapi/frontoffice/deletepostalreceivedispatch";function Tp({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(""),[c,g]=i.useState(""),y=i.useRef(null),p=(S,E)=>{s({page:S,rowsPerPage:Number.parseInt(E,10)})},m=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],A=i.useMemo(()=>{const S=oa.includes("?")?oa.endsWith("?")||oa.endsWith("&")?"":"&":"?";return`${oa}${S}page=${a.page}&per_page=${a.rowsPerPage}`},[oa,a.page,a.rowsPerPage]),{isLoading:C,error:b,data:f,mutate:x}=H(t?[A,t]:null,([S,E])=>K(S,E)),R=async(S,E)=>{try{await x(Ne(S,E,t),Ge(E)),w.success("Success! Added new item.")}catch{w.error("Failed to add the new item.")}},k=async S=>{try{await x(He(Dp,S,t),ze(S)),w.success("Success! Deleted item.")}catch{w.error("Failed to delete the item.")}},O=async(S,E,F)=>{try{const q=await We(S,E,t);x(q),Array.isArray(q?.data)&&x(`${oa.replace(/\?.*$/,"")}?id=${F}`,q),w.success("Success! Updated item.")}catch{w.error("Failed to update the item.")}},D=async(S,E)=>{S.preventDefault();const F=new FormData(S.target);await O(Ap,F,E),S.target.reset(),d(""),l(!1)},_=async S=>{if(S.preventDefault(),!S.target?.date?.value)w.error("Select required dates"),S.target?.date?.focus(),g("textDanger");else{const E=new FormData(S.target);await R(Cp,E),S.target.reset(),g(""),d("")}},u=S=>{l(S)},h=i.useMemo(()=>[{id:"1",name:"From Title",selector:"from_title",sortable:!0},{id:"2",name:"Reference No",selector:"reference_no",sortable:!0},{id:"3",name:"Address",selector:"address",sortable:!0},{id:"4",name:"Note",selector:"note",sortable:!0},{id:"5",name:"To Title",selector:"to_title",sortable:!0},{id:"6",name:"Date",selector:"date",sortable:!0}],[]);return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Postal Receive"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:_,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"from_title",type:"text",label:"From Title *"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"refernce",type:"text",label:"Reference No"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"address",type:"text",label:"Address"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:"title",type:"text",label:"To Title"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:te(),Desplay:"Date",id:"date",name:"date",status:c===""?"":"error",classnme:c,onChange:()=>g("")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx("input",{type:"hidden",name:"image",value:o||"",readOnly:!0})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Postal Receive List"})}),e.jsxs(v,{pt:3,children:[e.jsx(Ct,{data:{tableRef:y}}),e.jsx(Ie,{parentCallback:p,data:{newData:f,columns:h,action:!0,ActionView:m,Loading:C,error:b,editDesign:e.jsx(_p,{data:{handleUpdate:D,token:t}}),deleteTodoMutation:k,open:r,DrawerUpdate:u,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const Rp="api/branchapi/frontoffice/complaintShowdata",Ip="api/branchapi/frontoffice/complainttypedropdown",kp=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function Pp({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),l=Rp.replace(/\?.*$/,""),{isLoading:o,data:d}=H(s&&r?[l,r,s]:null,([f,x,R])=>Sa(f,{id:x},R)),{isLoading:c,data:g}=H(s?[Ip,s]:null,([f,x])=>K(f,x)),y=i.useMemo(()=>kp(g).map(x=>({value:x?.value??x?.id??x?.complaint_type??"",label:x?.complaint_type??x?.label??""})),[g]),p=d?.data?.[0],[m,A]=i.useState({complain_type:"",complain_by_name:"",phone:"",date:null,description:"",action_token:"",assigned:"",note:"",file:""});i.useEffect(()=>{p&&A({complain_type:p?.complaint_type??"",complain_by_name:p?.name??"",phone:p?.contact??"",date:p?.date?te(p.date):null,description:p?.description??"",action_token:p?.action_taken??"",assigned:p?.assigned??"",note:p?.note??"",file:p?.image??""})},[p]);const C=(f,x)=>{A(R=>({...R,[f]:x}))},b=i.useMemo(()=>y.find(f=>f.value===m.complain_type)||null,[y,m.complain_type]);return o||c?e.jsx(v,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsx(v,{pt:4,pb:1,style:{width:550},children:e.jsxs("form",{onSubmit:f=>a(f,r),children:[e.jsx("input",{type:"hidden",name:"id",value:r??""}),e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Complaint"})}),e.jsx(v,{p:2,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Complain Type",name:"complain_type",allowSelectAll:!1,value:b,onChange:f=>C("complain_type",f?.value??"")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"complain_by_name",type:"text",label:"Complain By *",required:!0,value:m.complain_by_name,onChange:f=>C("complain_by_name",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"phone",type:"tel",label:"Phone",pattern:"[0-9]{10}",value:m.phone,onChange:f=>C("phone",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:m.date,Desplay:"Enquiry Date",id:"date",name:"date",onChange:f=>C("date",f)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description",value:m.description,onChange:f=>C("description",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"action_token",type:"text",label:"Action Taken",value:m.action_token,onChange:f=>C("action_token",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"assigned",type:"text",label:"Assigned",value:m.assigned,onChange:f=>C("assigned",f.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note",value:m.note,onChange:f=>C("note",f.target.value)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})]})})}const da="api/branchapi/frontoffice/complainttablelist",Op="api/branchapi/frontoffice/complainttypedropdown",Mp="api/branchapi/frontoffice/addcomplaint",Ep="api/branchapi/frontoffice/editcomplaint",$p="api/branchapi/frontoffice/deletecomplaint",Fp=[{key:"all",label:"All Complaints"},{key:"pending",label:"Pending"},{key:"resolved",label:"Resolved"}];function Up({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(""),[c,g]=i.useState(""),[y,p]=i.useState("all"),m=i.useRef(null),A=(U,j)=>{s({page:U,rowsPerPage:Number.parseInt(j,10)})},C=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],b=i.useMemo(()=>{const U=da.includes("?")?da.endsWith("?")||da.endsWith("&")?"":"&":"?",j=new URLSearchParams;return j.set("page",String(a.page)),j.set("per_page",String(a.rowsPerPage)),y!=="all"&&j.set("status",y),`${da}${U}${j.toString()}`},[da,a.page,a.rowsPerPage,y]),{isLoading:f,error:x,data:R,mutate:k}=H(t?[b,t]:null,([U,j])=>K(U,j)),{isLoading:O,data:D}=H(t?[Op,t]:null,([U,j])=>K(U,j)),_=i.useMemo(()=>{const U=D?.data??D??[];return Array.isArray(U)?U:Array.isArray(U?.data)?U.data:[]},[D]),u=async(U,j)=>{try{await k(Ne(U,j,t),Ge(j)),w.success("Success! Added new item.")}catch{w.error("Failed to add the new item.")}},h=async U=>{try{await k(He($p,U,t),ze(U)),w.success("Success! Deleted item.")}catch{w.error("Failed to delete the item.")}},S=async(U,j,P)=>{try{const I=await We(U,j,t);k(I),Array.isArray(I?.data)&&k(`${da.replace(/\?.*$/,"")}?id=${P}`,I),w.success("Success! Updated item.")}catch{w.error("Failed to update the item.")}},E=async(U,j)=>{U.preventDefault();const P=new FormData(U.target);await S(Ep,P,j),U.target.reset(),d(""),l(!1)},F=async U=>{if(U.preventDefault(),!U.target?.date?.value)w.error("Select required dates"),U.target?.date?.focus(),g("textDanger");else{const j=new FormData(U.target);await u(Mp,j),U.target.reset(),g(""),d("")}},q=U=>{l(U)},T=i.useMemo(()=>[{id:"1",name:"Complain Type",selector:"complaint_type",sortable:!0},{id:"2",name:"Name",selector:"name",sortable:!0},{id:"3",name:"Phone",selector:"contact",sortable:!0},{id:"4",name:"Date",selector:"date",sortable:!0},{id:"5",name:"Action Taken",selector:"action_taken",sortable:!0},{id:"6",name:"Assigned",selector:"assigned",sortable:!0}],[]);return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Complaint"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:F,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:_,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Complain Type",name:"complain_type",required:!0,allowSelectAll:!1})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"complain_by_name",type:"text",label:"Complain By *",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"phone",type:"tel",label:"Phone",pattern:"[0-9]{3}[0-9]{3}[0-9]{4}"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:te(),Desplay:"Complain Date",id:"date",name:"date",status:c===""?"":"error",classnme:c,onChange:()=>g("")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"action_token",type:"text",label:"Action Taken"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"assigned",type:"text",label:"Assigned"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"note",type:"text",label:"Note"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx("input",{type:"hidden",name:"file",value:o||"",readOnly:!0})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Complaint List"})}),e.jsxs(v,{pt:3,children:[e.jsx(n.Tabs,{activeKey:y,onChange:p,items:Fp}),e.jsx(Ct,{data:{tableRef:m}}),e.jsx(Ie,{parentCallback:A,data:{newData:R,columns:T,action:!0,ActionView:C,Loading:f,error:x,editDesign:e.jsx(Pp,{data:{handleUpdate:E,token:t}}),deleteTodoMutation:h,open:r,DrawerUpdate:q,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const Qr="api/branchapi/Frontoffice/purposetablelist",Np="api/branchapi/Frontoffice/complaint_typetablelist",Bp="api/branchapi/Frontoffice/sourcetablelist",Lp="api/branchapi/Frontoffice/referencetablelist",Xr="api/branchapi/frontoffice/visitorpurposeShowdata",qp="api/branchapi/frontoffice/complaintTypeShowdata",zp="api/branchapi/frontoffice/sourceShowdata",Yp="api/branchapi/frontoffice/referenceShowdata",fa=[{key:"purpose",label:"Purpose"},{key:"complainType",label:"Complain Type"},{key:"source",label:"Source"},{key:"reference",label:"Reference"}],Zr={purpose:[{id:"1",name:"Purpose",selector:"visitors_purpose",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],complainType:[{id:"1",name:"Complaint Type",selector:"complaint_type",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],source:[{id:"1",name:"Source",selector:"source",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],reference:[{id:"1",name:"Reference",selector:"reference",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}]};function Vp({token:t}){const[a,s]=i.useState("purpose"),[r,l]=i.useState({page:1,rowsPerPage:10}),[o,d]=i.useState(!1),c=i.useRef(null),g=(F,q)=>{l({page:F,rowsPerPage:Number.parseInt(q,10)})},y=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],p=()=>{switch(a){case"purpose":return Qr;case"complainType":return Np;case"source":return Bp;case"reference":return Lp;default:return Qr}},m=()=>{switch(a){case"purpose":return"api/branchapi/frontoffice/addvisitors_purpose";case"complainType":return"api/branchapi/frontoffice/addcomplaint_type";case"source":return"api/branchapi/frontoffice/addsource";case"reference":return"api/branchapi/frontoffice/addreference";default:return"api/branchapi/frontoffice/addvisitors_purpose"}},A=()=>{switch(a){case"purpose":return"api/branchapi/frontoffice/editvisitors_purpose";case"complainType":return"api/branchapi/frontoffice/editcomplaint_type";case"source":return"api/branchapi/frontoffice/editsource";case"reference":return"api/branchapi/frontoffice/editreference";default:return"api/branchapi/frontoffice/editvisitors_purpose"}},C=F=>{switch(a){case"purpose":return{url:"api/branchapi/frontoffice/deleteVisitorsPurpose",id:F};case"complainType":return{url:"api/branchapi/frontoffice/deletecomplaint_type",id:F};case"source":return{url:"api/branchapi/frontoffice/deletesource",id:F};case"reference":return{url:"api/branchapi/frontoffice/deletereference",id:F};default:return{url:"api/branchapi/frontoffice/deleteVisitorsPurpose",id:F}}},b=i.useMemo(()=>{const F=p(),q=F.includes("?")?F.endsWith("?")||F.endsWith("&")?"":"&":"?";return`${F}${q}page=${r.page}&per_page=${r.rowsPerPage}`},[a,r.page,r.rowsPerPage]),{isLoading:f,error:x,data:R,mutate:k}=H(t?[b,t]:null,([F,q])=>K(F,q)),O=async(F,q)=>{try{await k(Ne(F,q,t),Ge(q)),w.success("Success! Added new item.")}catch{w.error("Failed to add the new item.")}},D=async F=>{const{url:q,id:T}=C(F);try{await k(He(q,T,t),ze(T)),w.success("Success! Deleted item.")}catch{w.error("Failed to delete the item.")}},_=async(F,q,T)=>{try{const U=await We(F,q,t);k(U),Array.isArray(U?.data)&&k(`${p().replace(/\?.*$/,"")}?id=${T}`,U),w.success("Success! Updated item.")}catch{w.error("Failed to update the item.")}},u=async(F,q)=>{F.preventDefault();const T=new FormData(F.target),U=A();await _(U,T,q),F.target.reset(),d(!1)},h=async F=>{F.preventDefault();const q=new FormData(F.target),T=m();await O(T,q),F.target.reset()},S=F=>{d(F)},E=i.useMemo(()=>Zr[a]||Zr.purpose,[a]);return e.jsx(v,{pt:5,pb:1,children:e.jsx(n.Row,{gutter:[16,16],children:e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Setup Front Office"})}),e.jsxs(v,{p:3,children:[e.jsx(n.Tabs,{activeKey:a,onChange:F=>{s(F),l({page:1,rowsPerPage:10})},items:fa}),e.jsxs(n.Row,{gutter:[16,16],mt:3,children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsx("form",{onSubmit:h,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsxs(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:["Add ",fa.find(F=>F.key===a)?.label]})}),e.jsx(v,{p:3,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{required:!0,name:a==="reference"?"title":"name",type:"text",label:fa.find(F=>F.key===a)?.label+" *"})})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description"})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Add",color:"primary"})})})})]})})]})})}),e.jsx(n.Col,{xs:24,md:16,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsxs(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:[fa.find(F=>F.key===a)?.label," List"]})}),e.jsxs(v,{pt:3,children:[e.jsx(Ct,{data:{tableRef:c}}),e.jsx(Ie,{parentCallback:g,data:{newData:R,columns:E,action:!0,ActionView:y,Loading:f,error:x,editDesign:e.jsx(Wp,{data:{handleUpdate:u,token:t,activeTab:a}}),deleteTodoMutation:D,open:o,DrawerUpdate:S,viewDetails:""}})]})]})})]})]})]})})})})}function Wp({data:t}){const{handleUpdate:a,token:s,activeTab:r}=t||{},l=i.useContext(Tt),d=(f=>{switch(f){case"purpose":return Xr;case"complainType":return qp;case"source":return zp;case"reference":return Yp;default:return Xr}})(r).replace(/\?.*$/,""),{isLoading:c,data:g}=H(s&&l?[d,l,s]:null,([f,x,R])=>Sa(f,{id:x},R)),y=g?.data?.[0],[p,m]=i.useState({name:"",description:""});i.useEffect(()=>{y&&m({name:y?.visitors_purpose||y?.complaint_type||y?.source||y?.reference||"",description:y?.description||""})},[y]);const A=(f,x)=>{m(R=>({...R,[f]:x}))};if(c)return e.jsx(v,{pt:4,pb:1,style:{width:350,display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(n.Spin,{size:"large"})});const b={purpose:"title",complainType:"title",source:"title",reference:"title"}[r]||"name";return e.jsxs(v,{pt:4,pb:1,style:{width:350},children:[e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsxs(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:["Edit ",fa.find(f=>f.key===r)?.label]})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:f=>a(f,l),children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{type:"text",value:l,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:b,type:"text",label:fa.find(f=>f.key===r)?.label+" *",required:!0,value:p.name,onChange:f=>A("name",f.target.value)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description",value:p.description,onChange:f=>A("description",f.target.value)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})]})})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const Hp="api/branchapi/Student/studentGatePass",Ra="api/branchapi/Student/studentGatePassList";function Kp({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:25}),[r,l]=i.useState(!1),o=i.useRef(null),d=(O,D)=>{s({page:O,rowsPerPage:Number.parseInt(D,10)})},c=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],{data:g,mutate:y}=H(t?[Hp,t]:null,([O,D])=>K(O,D)),p=i.useMemo(()=>{const O=Ra.includes("?")?Ra.endsWith("?")||Ra.endsWith("&")?"":"&":"?";return`${Ra}${O}page=${a.page}&per_page=${a.rowsPerPage}`},[Ra,a.page,a.rowsPerPage]),{isLoading:m,error:A,data:C,mutate:b}=H(t?[p,t]:null,([O,D])=>K(O,D)),f=async O=>{const D="api/branchapi/frontoffice/deletevisitors";try{await b(deleteData(D,O,t),ze(O)),w.success("Success! Deleted item.")}catch{w.error("Failed to delete the item.")}},x=O=>{l(O)},R=()=>{},k=[{title:"Name",dataIndex:"lastname",key:"lastname",render:(O,D)=>`${D?.lastname||""} ${D?.firstname||""}`.trim()},{title:"Class",dataIndex:"class_name",key:"class_name",render:(O,D)=>`${D?.class_name||""}-${D?.section_name||""}`},{title:"Father Name",dataIndex:"father_name",key:"father_name"},{title:"Authorized Persons",dataIndex:"authorized_persons_fullname",key:"authorized_persons_fullname"},{title:"Relation",dataIndex:"authorized_persons_relation",key:"authorized_persons_relation"},{title:"Generated Date",dataIndex:"genrated_date_time",key:"genrated_date_time"},{title:"Return Date",dataIndex:"expected_return_date_time",key:"expected_return_date_time"},{title:"Reason",dataIndex:"reason",key:"reason"},{title:"Action",key:"action",render:(O,D)=>e.jsx(n.Tag,{color:D?.status==="Generated"?"green":"blue",children:D?.status||"Pending"})},{title:"Print",key:"print",render:(O,D)=>e.jsx(ee.PrinterOutlined,{style:{color:"#3892ee",cursor:"pointer"},onClick:()=>window.print()})}];return e.jsx(v,{pt:5,pb:1,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Today Gate Pass"})}),e.jsx(v,{pt:3,children:e.jsx(n.List,{grid:{column:4,gutter:16},dataSource:g?.data||[],style:{padding:0},renderItem:O=>e.jsx(n.List.Item,{style:{padding:0},children:e.jsx(n.Card,{size:"small",style:{marginBottom:8,width:"100%"},children:e.jsxs(v,{children:[e.jsxs(n.Typography.Text,{strong:!0,children:[O?.lastname," ",O?.firstname]}),e.jsx("br",{}),e.jsxs(n.Typography.Text,{type:"secondary",children:[O?.class_name,"-",O?.section_name]}),e.jsx("br",{}),e.jsxs(n.Typography.Text,{type:"secondary",children:["Return: ",O?.expected_return_date_time]}),e.jsx("br",{}),e.jsx(ne,{type:"button",value:"Print",color:"primary",size:"small",onClick:()=>window.print(),style:{marginTop:4}})]})})})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Gate Pass List"})}),e.jsxs(v,{pt:3,children:[e.jsx(Ct,{data:{tableRef:o}}),e.jsx(Ie,{parentCallback:d,data:{newData:C,columns:k,action:!1,ActionView:c,Loading:m,error:A,editDesign:"",deleteTodoMutation:f,open:r,DrawerUpdate:x,viewDetails:R}})]})]})})]})})}const yt=({id:t,funcName:a,disabled:s=!1})=>{const r="Data",[l,o]=i.useState(!1),d=()=>{o(!0),a(t),n.message.success(`${r} deleted successfully!`)},c=()=>{n.message.info(`Deletion of ${r} cancelled`)};return e.jsx(n.Popconfirm,{title:`Delete ${r}?`,description:`Are you sure you want to delete ${r}?`,onConfirm:d,onCancel:c,okText:"Yes",cancelText:"No",disabled:s||l,children:e.jsx(n.Button,{danger:!0,disabled:s,loading:l,icon:e.jsx(ee.DeleteOutlined,{}),size:"small"})})},ei={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Gp({token:t,sampleTemplateUrl:a=$c}){const[s,r]=i.useState({pagination:{current:1,pageSize:10}}),[l,o]=i.useState(!1),[d,c]=i.useState(null),[g,y]=i.useState(null),[p,m]=i.useState(!1),[A,C]=i.useState([]),b=`api/branchapi/Transport/routeTableList?page=${s.pagination.current}&per_page=${s.pagination.pageSize}`,f="api/branchapi/Transport/addroute",x="api/branchapi/Transport/editroute",R="api/branchapi/Transport/deleteroute",k=void 0,{isLoading:O,data:D,error:_,mutate:u}=H(t?[b,t]:null,([W,B])=>K(W,B)),h=i.useMemo(()=>!D?.data||Array.isArray(D.data)?[]:D.data?.rows||[],[D]),S=D?.data?.pagination?.total_rows||D?.pagination?.total_rows||0,E=async(W,B)=>{try{await u(Ne(W,B,t),Ge(B)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{w.error("Failed to add the new item.",{duration:1e3})}},F=W=>{W.preventDefault();const B=new FormData(W.target);E(f,B),W.target.reset()},q=(W,B)=>{r($=>({...$,pagination:{current:W,pageSize:parseInt(B,10)}}))},T=async W=>{try{await u(He(R,W,t),ze(W)),w.success("Success! Deleted item.",{duration:1e3})}catch{w.error("Failed to delete the item.",{duration:1e3})}},U=W=>{c(W),o(!0)},j=async W=>{try{const B=await We(x,W,t);u(B),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),c(null)}catch{w.error("Failed to update the item.",{duration:1e3})}},P=async W=>{W.preventDefault();const B=new FormData(W.target);B.append("id",d?.id),j(B)},I=async()=>{if(!g){w.error("Please select an Excel file to upload.",{duration:1e3});return}m(!0),C([]);try{const W=new FormData;W.append("file",g);const $=await(await fetch(`${k}`,{method:"POST",headers:{Authorization:t},body:W})).json();if($.Status==="Success"){const M=$.data?.rows||[];C(M);const L=$.data?.success_count||0,Y=$.data?.failed_count||0;w.success($.message||`Route bulk upload completed. ${L} succeeded, ${Y} failed.`,{duration:1e3}),L>0&&u()}else w.error($.message||"Failed to upload routes.",{duration:1e3})}catch(W){w.error(W?.message||"Something went wrong.",{duration:1e3})}finally{m(!1),y(null)}},N=[{title:"Route Title",dataIndex:"route_title",key:"route_title",sorter:{compare:(W,B)=>(W.route_title||"").localeCompare(B.route_title||"")}},{title:"Fare (Monthly)",dataIndex:"fare",key:"fare",sorter:{compare:(W,B)=>Number(W.fare||0)-Number(B.fare||0)}},{title:"Note",dataIndex:"note",key:"note",sorter:{compare:(W,B)=>(W.note||"").localeCompare(B.note||"")}},{title:"Action",key:"action",render:(W,B)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>U(B),style:{padding:2}}),e.jsx(yt,{id:B?.id,funcName:T})]})}],V=d?.route_title?`Edit ${d.route_title}`:"Edit Route";return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Bulk Upload Routes"})}),e.jsxs(v,{p:3,children:[e.jsxs(n.Row,{gutter:[16,16],align:"middle",children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(n.Upload,{accept:".xlsx",showUploadList:!1,beforeUpload:W=>(y(W),!1),children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),disabled:p,children:g?g.name:"Choose Excel File (.xlsx)"})})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(n.Button,{type:"primary",onClick:I,disabled:p||!g,loading:p,children:p?"Uploading...":"Upload Routes"})})})]}),A.length>0&&e.jsxs(v,{mt:3,children:[e.jsx(pe,{level:5,children:"Upload Results"}),e.jsx(n.Table,{dataSource:A.map((W,B)=>({...W,key:B})),pagination:!1,size:"small",bordered:!0,columns:[{title:"Row",dataIndex:"row",width:80},{title:"Title",dataIndex:"title"},{title:"Status",dataIndex:"status",render:W=>e.jsx("span",{style:{color:W==="Success"?"green":"red",fontWeight:500},children:W})},{title:"Message",dataIndex:"message"}]})]}),a&&e.jsx(v,{mt:2,children:e.jsx("a",{href:a,download:!0,style:{color:"#5080f8",fontSize:13,textDecoration:"none"},children:"Download sample Excel template"})})]})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Add Route"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:F,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(z,{type:"text",name:"title",label:"Title",placeholder:"Mumbai to Delhi",required:"required"})})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(z,{type:"number",name:"fare",label:"Fare (Monthly)",required:"required"})})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(z,{type:"text",name:"note",label:"Note"})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsxs(v,{children:[e.jsx(ne,{type:"submit",value:"Save",color:"primary"}),e.jsx(n.Button,{type:"text",htmlType:"reset",style:ei,children:"Cancel"})]})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Route List"})}),e.jsx(v,{p:3,children:e.jsx(Ie,{parentCallback:q,data:{newData:{data:h,pagination:{total_rows:S}},columns:N,columnstype:"antd",action:!1,Loading:O,error:_,deleteTodoMutation:T}})})]})})]}),e.jsx(n.Drawer,{open:l,title:V,placement:"right",width:420,onClose:()=>{o(!1),c(null)},children:e.jsx("form",{onSubmit:P,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(z,{type:"text",name:"title",label:"Title",defaultValue:d?.route_title||"",required:"required"}),e.jsx(z,{type:"number",name:"fare",label:"Fare (Monthly)",defaultValue:d?.fare||"",required:"required"}),e.jsx(z,{type:"text",name:"note",label:"Note",defaultValue:d?.note||""}),e.jsx("div",{style:{display:"none"},children:e.jsx(z,{type:"text",name:"no_of_vehicle",label:"Note"})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{o(!1),c(null)},style:ei,children:"Cancel"})]})]})})})]})}const ti={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Jp({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),c=`api/branchapi/Transport/vehiclesTableList?page=${a.page}&per_page=${a.rowsPerPage}`,g="api/branchapi/Transport/addvehicles",y="api/branchapi/Transport/editvehicle",p="api/branchapi/Transport/deletevehicle",{isLoading:m,data:A,error:C,mutate:b}=H(t?[c,t]:null,([S,E])=>K(S,E)),f=async(S,E)=>{try{await b(Ne(S,E,t),Ge(E)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{w.error("Failed to add the new item.",{duration:1e3})}},x=S=>{S.preventDefault();const E=new FormData(S.target);f(g,E),S.target.reset()},R=async S=>{try{await b(He(p,S,t),ze(S)),w.success("Success! Deleted item.",{duration:1e3})}catch{w.error("Failed to delete the item.",{duration:1e3})}},k=S=>{d(S),l(!0)},O=async S=>{try{await We(y,S,t),await b(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),d(null)}catch{w.error("Failed to update the item.",{duration:1e3})}},D=async S=>{S.preventDefault();const E=new FormData(S.target);E.append("id",o?.id),O(E)},_=(S,E)=>{s({page:S,rowsPerPage:parseInt(E,10)})},u=[{title:"Vehicle Number",dataIndex:"vehicle_no",key:"vehicle_no",sorter:{compare:(S,E)=>S.vehicle_no.localeCompare(E.vehicle_no)}},{title:"Vehicle Model",dataIndex:"vehicle_model",key:"vehicle_model",sorter:{compare:(S,E)=>S.vehicle_model.localeCompare(E.vehicle_model)}},{title:"Max Seating Capacity",dataIndex:"seating_capacity",key:"seating_capacity",sorter:{compare:(S,E)=>S.seating_capacity-E.seating_capacity}},{title:"Manufacture Year",dataIndex:"manufacture_year",key:"manufacture_year",sorter:{compare:(S,E)=>S.manufacture_year-E.manufacture_year}},{title:"Gps Url",key:"gps_url",sorter:{compare:(S,E)=>S.gps_url.localeCompare(E.gps_url)},render:(S,E)=>e.jsx("span",{title:E?.gps_url??"",style:{display:"inline-block",maxWidth:220,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:E?.gps_url})},{title:"Note",dataIndex:"note",key:"note",sorter:{compare:(S,E)=>S.note.localeCompare(E.note)}},{title:"Action",key:"action",render:(S,E)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>k(E),style:{padding:2}}),e.jsx(yt,{id:E?.id,funcName:R})]})}],h=o?.vehicle_no?`Edit ${o.vehicle_no}`:"Edit Vehicle";return e.jsxs("div",{children:[e.jsx(n.Drawer,{open:r,title:h,placement:"right",width:420,onClose:()=>{l(!1),d(null)},children:e.jsx("form",{onSubmit:D,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(z,{type:"text",name:"number",label:"Vehicle Number",defaultValue:o?.vehicle_no||"",required:"required"}),e.jsx(z,{type:"text",name:"model",label:"Vehicle Model",defaultValue:o?.vehicle_model||""}),e.jsx(z,{type:"number",name:"manufacture_year",label:"Manufacture Year",defaultValue:o?.manufacture_year||""}),e.jsx(z,{type:"number",name:"seating_capacity",label:"Max Seating Capacity",defaultValue:o?.seating_capacity||""}),e.jsx(z,{type:"text",name:"gps_url",label:"Gps Url",defaultValue:o?.gps_url||""}),e.jsx(z,{type:"text",name:"note",label:"Note",defaultValue:o?.note||""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},style:ti,children:"Cancel"})]})]})})}),e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(v,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Add Vehicle"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:x,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(z,{type:"text",name:"number",label:"Vehicle Number",required:"required"}),e.jsx(z,{type:"text",name:"model",label:"Vehicle Model"}),e.jsx(z,{type:"number",name:"manufacture_year",label:"Manufacture Year"}),e.jsx(z,{type:"number",name:"seating_capacity",label:"Max Seating Capacity"}),e.jsx(z,{type:"text",name:"gps_url",label:"Gps Url"}),e.jsx(z,{type:"text",name:"note",label:"Note"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Save",color:"primary"}),e.jsx(n.Button,{type:"text",htmlType:"reset",style:ti,children:"Cancel"})]})]})})})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Vehicle List"})}),e.jsx(v,{children:e.jsx(Ie,{parentCallback:_,data:{newData:A,columns:u,columnstype:"antd",action:!1,Loading:m,error:C,deleteTodoMutation:R}})})]})})]})})]})}const Qp={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},ai=({dataIndex:t,title:a,record:s,children:r,isEditable:l,...o})=>e.jsx("td",{...o,children:l?e.jsx("div",{style:{display:"flex",marginLeft:"5%"},children:r}):r});function Xp({token:t}){const[a,s]=i.useState(!1),[r,l]=i.useState({pagination:{current:1,pageSize:50}}),[o,d]=i.useState(null),[c,g]=i.useState([]),y="api/branchapi/Transport/getrouteDropdown",p="api/branchapi/Transport/getvehicleDropdown",m="api/branchapi/Transport/getchechkedVehicleData",A="api/branchapi/Transport/assignedVehicleTable",C="api/branchapi/transport/assignvehicle",b="api/branchapi/Transport/deleteassignvehicle",f=o?`${m}?route_id=${o}`:null,{isLoading:x,data:R,mutate:k}=H(t?[`${A}?page=${r.pagination.current}&per_page=${r.pagination.pageSize}`,t]:null,([$,M])=>K($,M)),{data:O}=H(t&&y?[y,t]:null,([$,M])=>K($,M)),{data:D}=H(t&&p?[p,t]:null,([$,M])=>K($,M)),_=t&&f?[f,t]:null,{isLoading:u,data:h}=H(_,([$,M])=>K($,M)),{Status:S="Failed",pagination:{total_rows:E=0}={}}=R||{},{data:F=[]}=S==="Success"?R:{},q=i.useMemo(()=>{const $=O?.data??O??[];return Array.isArray($)?$:[]},[O]),T=i.useMemo(()=>{const $=D?.data??D??[];return(Array.isArray($)?$:[]).map(L=>{if(L==null)return null;if(typeof L=="string"||typeof L=="number")return{label:String(L),value:L};const Y=L.value??L.vehicle_id??L.id??L.vehicleID,se=L.label??L.vehicle_name??L.vehicle_no??L.vehicle_number??L.name??String(Y??"");return Y==null||se===""?null:{label:String(se),value:Y}}).filter(Boolean)},[D]),U=i.useMemo(()=>{const $=h?.data??h??[];return(Array.isArray($)?$:[]).map(L=>L?.value??L?.vehicle_id??L?.id??L).filter(L=>L!=null)},[h]);i.useEffect(()=>{g(U)},[U,a]);const j=async($,M,L)=>{try{await k(Ne($,M,t),Ge(M)),f&&H.mutate(_),s(Y=>!Y),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(Y){w.error(Y?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},P=$=>{$.preventDefault();const M=new FormData;M.append("route_id",o??""),c.length?c.forEach(L=>M.append("vehicle_ids[]",L)):M.append("vehicle_ids[]",""),j(C,M)},I=$=>{l(M=>({...M,pagination:{current:$,pageSize:M.pagination.pageSize}}))},N=async $=>{try{await k(He(b,$,t),ze($)),f&&H.mutate(_),w.success("Success! Deleted item.",{duration:1e3})}catch{w.error("Failed to delete the item.",{duration:1e3})}},V=[{title:"Route",dataIndex:"route_title"},{title:"Vehicle Numbers",render:($,M,L)=>e.jsx(e.Fragment,{children:M.children.map((Y,se,X)=>e.jsx("span",{children:`${Y.vehicle_name} ${se+1===X.length?"":","}`},`${se}vehicle001`))})},{title:"Action",render:($,M,L)=>e.jsx(e.Fragment,{children:e.jsx(yt,{id:M?.route_id,funcName:N})})}],W=$=>{const M=["route_id","index"];for(let L=0;L<M.length;L++)if($[M[L]])return $[M[L]]},B=$=>{const{children:M=[]}=$||{},L=[{title:"Vehicle Name",dataIndex:"vehicle_name",onCell:Y=>({isEditable:!0})},{title:"Driver Name",dataIndex:"driver_name",onCell:Y=>({isEditable:!0})},{title:"Driver Contact",dataIndex:"driver_contact_number",onCell:Y=>({isEditable:!0})},{title:"Driver Licence",dataIndex:"Driver_licence",onCell:Y=>({isEditable:!0})},{title:"Start Time",dataIndex:"start_time",onCell:Y=>({isEditable:!0})},{title:"Drop Time",dataIndex:"drop_time",onCell:Y=>({isEditable:!0})},{title:"Type",dataIndex:"type",onCell:Y=>({isEditable:!0})}];return e.jsx("div",{style:{display:"flex",justifyContent:"center"},children:e.jsx("div",{style:{width:"95%",margin:8},children:e.jsx(n.Table,{components:{body:{cell:ai}},expandable:{childrenColumnName:"changed"},bordered:!0,size:"small",columns:L,rowKey:Y=>W(Y)+"cell01",dataSource:M,pagination:!1})})})};return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(v,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Assign Vehicle"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:P,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(220px, 320px) 1fr auto",gap:20,alignItems:"end"},children:[e.jsx("div",{children:e.jsx(Q,{options:q,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",required:!0,allowSelectAll:!1,onChange:$=>{d($?.value??null),s(M=>!M)}})}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:{display:"block",marginBottom:6,fontSize:14,fontWeight:500,color:"#222"},children:"Vehicles"}),e.jsx("div",{style:{borderBottom:"1px solid #d9d9d9",paddingBottom:8,maxHeight:140,overflow:"auto"},children:e.jsx(n.Checkbox.Group,{style:{display:"flex",flexWrap:"wrap",gap:12},options:T,value:c,onChange:$=>g($),disabled:!o||u})},`check001${a}`)]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Save",color:"primary"}),e.jsx(n.Button,{type:"text",htmlType:"button",onClick:()=>{d(null),g([]),s($=>!$)},style:Qp,children:"Cancel"})]})]})})})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Vehicle List"})}),e.jsx(v,{style:{padding:"10px 16px"},children:e.jsx(n.Table,{components:{body:{cell:ai}},columns:V,bordered:!0,rowKey:$=>W($),dataSource:Array.isArray(F)?F:[],loading:x,expandable:{expandedRowRender:B,childrenColumnName:"changed"},pagination:{current:r.pagination.current,pageSize:r.pagination.pageSize,total:E,showSizeChanger:!0,onChange:I,onShowSizeChange:($,M)=>{l(L=>({...L,pagination:{current:1,pageSize:M}}))},showTotal:($,M)=>`${M[0]}-${M[1]} of ${$} items`}})})]})})]})})]})}const ni={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},Ds=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},ca=(t,a,s)=>{if(a==null||a==="")return null;const r=t.find(l=>String(l.value)===String(a));return r||(s?{label:String(s),value:a}:{label:String(a),value:a})},Zp=()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")||"{}")?.currency_symbol??""}catch{return""}},em=t=>{if(t==null||t===""||t==="null"||t==="undefined")return"";if(Array.isArray(t))return t.filter(s=>s!=null&&s!==""&&String(s).toLowerCase()!=="null"&&String(s).toLowerCase()!=="undefined").join(", ");const a=String(t).trim();return!a||a.toLowerCase()==="null"||a.toLowerCase()==="undefined"?"":a};function tm({token:t,assignmentId:a,studentName:s,onClose:r,onSuccess:l}){const o="api/branchapi/Transport/showRouteAssignStudent",d="api/branchapi/Transport/updateTransportRoutesStudent",c="api/branchapi/Transport/getrouteDropdown",g="api/branchapi/Transport/getvehicleListByRouteIdwithCount",y="api/branchapi/Transport/getStoppageDropdown",p="api/branchapi/Transport/routeShowdata",[m,A]=i.useState(null),[C,b]=i.useState(null),[f,x]=i.useState(null),[R,k]=i.useState(te()),[O,D]=i.useState(""),[_,u]=i.useState(0),[h,S]=i.useState(0),{data:E,isLoading:F}=H(t&&a?[`${o}?id=${a}`,t]:null,([ie,Se])=>K(ie,Se)),q=i.useMemo(()=>{if(!E||E?.Status&&E.Status!=="Success")return null;const ie=E?.data??E;return Array.isArray(ie)?ie[0]??null:ie},[E]);i.useEffect(()=>{const ie=q?.fk_route_id??q?.route_id;ie!=null&&A(ie),q?.vehicle_id!=null&&b(q.vehicle_id),q?.stop_id!=null&&x(q.stop_id),k(q?.start_date?te(q.start_date):te()),D(em(q?.service_push))},[q]);const T=t&&m?`${g}?route_id=${m}`:null,U=t&&m?`${p}?id=${m}`:null,j=t&&m?`${y}?route_id=${m}`:null,{data:P}=H(t&&c?[c,t]:null,([ie,Se])=>K(ie,Se)),{data:I,isLoading:N}=H(T?[T,t]:null,([ie,Se])=>K(ie,Se)),{data:V,isLoading:W}=H(j?[j,t]:null,([ie,Se])=>K(ie,Se)),{data:B}=H(U?[U,t]:null,([ie,Se])=>K(ie,Se)),$=i.useMemo(()=>Ds(P),[P]),M=i.useMemo(()=>Ds(I),[I]),L=i.useMemo(()=>Ds(V),[V]),Y=E?.data[0]?.rootCost,se=Zp(),X=s||[q?.firstname,q?.lastname].filter(Boolean).join(" ")||"",G=(ie,Se)=>{switch(Se){case"route_id":A(ie?.value??null),b(null),x(null),u(Ee=>Ee+1),S(Ee=>Ee+1);break;case"vehicle_id":b(ie?.value??null),x(null),S(Ee=>Ee+1);break;case"stop_id":x(ie?.value??null);break}},J=async ie=>{if(ie.preventDefault(),!m||!C||!f){w.error("Please select Route, Vehicle and Stop",{duration:1200});return}const Se=new FormData;Se.append("id",String(a)),Se.append("student_id",String(q?.fk_student_id??q?.student_id??"")),Se.append("fk_route_id",String(m)),Se.append("vehicle_id",String(C)),Se.append("stop_id",String(f)),Se.append("rootCost",String(Y??"")),Se.append("start_date",R?.isValid?.()?R.format("YYYY-MM-DD"):te().format("YYYY-MM-DD")),Se.append("puse_service",String(O??""));try{await We(d,Se,t),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l?.(),r?.()}catch(Ee){w.error(Ee?.message??"Failed to update the item.",{duration:1e3})}};if(F||!(q&&!F&&(!m||!N&&!W)))return e.jsx("div",{style:{display:"flex",justifyContent:"center",padding:48},children:e.jsx(n.Spin,{})});if(!q)return e.jsxs("div",{style:{padding:"8px 0"},children:[e.jsx("p",{style:{color:"#666",fontSize:14,marginBottom:16},children:"Unable to load assignment details. Please try again."}),e.jsx(n.Button,{type:"text",onClick:r,style:ni,children:"Close"})]});const de=q.fk_route_id??q.route_id,Ce=ca($,de,q.route_title),le=ca(M,q.vehicle_id,q.vehicle_name??q.vehicle_no),oe=ca(L,q.stop_id,q.stop_name??q.stoppage_name);return e.jsx("form",{onSubmit:J,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(z,{type:"text",name:"title",label:"Student",defaultValue:X,readOnly:!0}),e.jsx("input",{type:"hidden",name:"student_id",value:q.fk_student_id??q.student_id??""}),e.jsx(Q,{options:$,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",required:!0,allowSelectAll:!1,value:ca($,m,Ce?.label)??null,onChange:ie=>G(ie,"route_id")}),e.jsx(Q,{options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",required:!0,allowSelectAll:!1,value:ca(M,C,le?.label)??null,onChange:ie=>G(ie,"vehicle_id")},`edit-vehicle-${_}`),e.jsx(Q,{options:L,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Stop",required:!0,allowSelectAll:!1,value:ca(L,f,oe?.label)??null,onChange:ie=>G(ie,"stop_id")},`edit-stop-${h}`),e.jsx(z,{type:"text",label:"Route Cost",value:Y!=null?`${se}${Y}`:"",readOnly:!0}),e.jsx("input",{type:"hidden",name:"rootCost",value:Y??""}),e.jsx(Ue,{Desplay:"Start Date",placement:"bottomRight",format:"YYYY-MM-DD",allowClear:!1,value:R,onChange:ie=>k(ie)}),e.jsx(z,{type:"text",label:"Pause Service",value:O,onChange:ie=>D(ie?.target?.value??""),placeholder:"e.g. 01, 02, 03"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginTop:4},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:r,style:ni,children:"Cancel"})]})]})},`edit-${a}-${_}`)}const si={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},am=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Ia=t=>am(t),nm=t=>t||"",sm=()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")||"{}")?.currency_symbol??""}catch{return""}},rm=t=>{const a=String(t??"Drawer").trim().toLowerCase().replace(/\s+/g,"");return a==="page"||a==="sendpage"?"page":"drawer"},im=(t,a)=>{const s=a||"/TransportDashboard/EditAssignStudentTransport?id={id}",r=t?.id??"",l=encodeURIComponent(String(r));if(s.includes("{id}"))return s.replaceAll("{id}",l);if(s.includes(":id"))return s.replace(":id",l);try{const d=new URL(s,"http://localhost");if(d.searchParams.has("id"))return d.searchParams.set("id",String(r)),`${d.pathname}${d.search}${d.hash}`}catch{}const o=s.includes("?")?"&":"?";return`${s}${o}id=${l}`};function lm({token:t,editType:a,onNavigate:s,editPagePath:r,sampleTemplateUrl:l=Fc}){const d=rm(a)==="drawer",c="api/branchapi/academy/classdropdownlist",g="api/branchapi/academy/sectionoftheClass",y="api/branchapi/Transport/routeStudentList",p="api/branchapi/Transport/getrouteDropdown",m="api/branchapi/Transport/getvehicleListByRouteIdwithCount",A="api/branchapi/Transport/getStoppageDropdown",C="api/branchapi/Transport/routeShowdata",b="api/branchapi/Transport/assignTransportRoutesStudent",f="api/branchapi/transport/removeStudentTransport",x="api/branchapi/transport/assignTransportRoutesStudentBulk",[R,k]=i.useState(null),[O,D]=i.useState(!1),[_,u]=i.useState(!1),[h,S]=i.useState(null),[E,F]=i.useState(null),[q,T]=i.useState(null),[U,j]=i.useState(null),[P,I]=i.useState(!1),[N,V]=i.useState(!1),[W,B]=i.useState({page:1,rowsPerPage:50}),[$,M]=i.useState(null),[L,Y]=i.useState(!1),[se,X]=i.useState(null),[G,J]=i.useState(null),[re,de]=i.useState(null),[Ce,le]=i.useState(null),[oe,ie]=i.useState(null),[Se,Ee]=i.useState(null),[Xe,be]=i.useState(null),[ve,Oe]=i.useState(te()),[Ye,Be]=i.useState(""),[Le,Ze]=i.useState(null),[at,fe]=i.useState(!1),[je,xe]=i.useState([]),ae=(ge,De)=>{const tt=ge?.value??null;switch(De){case"class_id":de(tt),le(null),M(tt?`${g}?class_id=${encodeURIComponent(String(tt))}`:null),D(Ot=>!Ot);break;case"route_id":ie(tt),Ee(null),be(null),J(tt),F(tt?`${m}?route_id=${encodeURIComponent(String(tt))}`:null),T(tt?`${C}?id=${encodeURIComponent(String(tt))}`:null),j(null),I(Ot=>!Ot),V(Ot=>!Ot);break;case"vehicle_id":Ee(tt),be(null),j(oe?`${A}?route_id=${encodeURIComponent(String(oe))}`:null),V(Ot=>!Ot);break;case"stop_id":be(tt);break}},he=ge=>{if(d){S(ge),u(!0);return}const De=im(ge,r);if(typeof s=="function"){s(De,ge);return}typeof window<"u"&&De&&window.location.assign(De)},ye=()=>{u(!1),S(null)},ke=h?`Edit — ${h.firstname??""} ${h.lastname??""}`.trim():"Edit Student Transport",{data:Pe}=H(t&&c?[c,t]:null,([ge,De])=>K(ge,De)),{data:ue}=H(t&&$?[$,t]:null,([ge,De])=>K(ge,De)),{data:we}=H(t&&E?[E,t]:null,([ge,De])=>K(ge,De)),{data:Ve}=H(t&&U?[U,t]:null,([ge,De])=>K(ge,De)),{data:dt}=H(t&&q?[q,t]:null,([ge,De])=>K(ge,De)),{data:Ft}=H(t&&p?[p,t]:null,([ge,De])=>K(ge,De)),Pt=t&&R?`${R}&page=${W.page}&per_page=${W.rowsPerPage}`:null,{isLoading:me,error:Ae,data:ut,mutate:vt}=H(Pt?[Pt,t]:null,([ge,De])=>K(ge,De)),cn=i.useMemo(()=>Ia(Pe),[Pe]),un=i.useMemo(()=>Ia(ue),[ue]),pn=i.useMemo(()=>Ia(we),[we]),mn=i.useMemo(()=>Ia(Ve),[Ve]),hn=i.useMemo(()=>Ia(Ft),[Ft]),ce=dt?.data?.[0]?.fare??dt?.data?.fare??dt?.fare??dt?.data?.data?.[0]?.fare??dt?.data?.data?.fare;i.useEffect(()=>{ce==null||ce===""||Be(String(ce))},[ce]);const _e=async ge=>{try{await vt(He(f,ge,t),ze(ge)),w.success("Success! Deleted item.",{duration:1e3})}catch{w.error("Failed to delete the item.",{duration:1e3})}},qe=async()=>{if(!Le){w.error("Please select an Excel file to upload.",{duration:1e3});return}fe(!0),xe([]);try{const ge=new FormData;ge.append("file",Le);const tt=await(await fetch(`${x}`,{method:"POST",headers:{Authorization:t},body:ge})).json();if(tt.Status==="Success"){const Ot=tt.data?.rows||[];xe(Ot);const hr=tt.data?.success_count||0,Oo=tt.data?.failed_count||0;w.success(tt.message||`Transport bulk upload completed. ${hr} succeeded, ${Oo} failed.`,{duration:1e3}),hr>0&&vt()}else w.error(tt.message||"Failed to upload student transport assignments.",{duration:1e3})}catch(ge){w.error(ge?.message||"Something went wrong.",{duration:1e3})}finally{fe(!1),Ze(null)}},et=[{title:"Route Status",key:"route_status",render:(ge,De)=>De.fk_route_id?e.jsx("span",{children:De.route_title}):e.jsx("span",{children:"Not Assigned"})},{title:"Vehicle Assign Date",dataIndex:"start_date",key:"start_date",render:(ge,De)=>nm(De.start_date)},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Roll No",dataIndex:"roll_no",key:"roll_no"},{title:"Name",key:"name",render:(ge,De)=>`${De.firstname} ${De.lastname}`},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Mobileno",dataIndex:"mobileno",key:"mobileno"},{title:"Action",key:"action",render:(ge,De)=>e.jsx("div",{style:{display:"flex",alignItems:"center",gap:8},children:De.fk_route_id?e.jsxs(e.Fragment,{children:[e.jsx(yt,{id:De?.id,funcName:_e}),e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>he(De),style:{padding:2}})]}):e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.PlusOutlined,{}),onClick:()=>ms(De.student_id),style:{padding:2}})})}],ct=async(ge,De)=>{try{await vt(Ne(ge,De,t),Ge(De)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),Y(!1),hs()}catch{w.error("Failed to add the new item.",{duration:1e3})}},gt=ge=>{if(ge.preventDefault(),!re||!Ce){w.error("Please select Class and Section",{duration:1200});return}k(`${y}?cID=${encodeURIComponent(String(re))}&sID=${encodeURIComponent(String(Ce))}`),B(De=>({...De,page:1}))},ps=(ge,De)=>{B({page:ge,rowsPerPage:parseInt(De,10)})},ms=ge=>{X(ge),Y(!0)},_a=ge=>{if(ge.preventDefault(),!se){w.error("Student is required",{duration:1200});return}if(!oe||!Se||!Xe){w.error("Please select Route, Vehicle and Stop",{duration:1300});return}const De=new FormData;De.append("student_id",String(se)),De.append("fk_route_id",String(oe)),De.append("vehicle_id",String(Se)),De.append("stop_id",String(Xe)),De.append("start_date",ve?.isValid?.()?ve.format("YYYY-MM-DD"):te().format("YYYY-MM-DD")),De.append("rootCost",String(Ye??"")),ct(b,De)},hs=()=>{Y(!1),F(null),T(null),j(null),J(null),ie(null),Ee(null),be(null),Oe(te()),Be(""),I(ge=>!ge),V(ge=>!ge)},Po=sm();return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Bulk Assign Students to Transport"})}),e.jsxs(v,{p:3,children:[e.jsxs(n.Row,{gutter:[16,16],align:"middle",children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(n.Upload,{accept:".xlsx",showUploadList:!1,beforeUpload:ge=>(Ze(ge),!1),children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),disabled:at,children:Le?Le.name:"Choose Excel File (.xlsx)"})})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(n.Button,{type:"primary",onClick:qe,disabled:at||!Le,loading:at,children:at?"Uploading...":"Upload Students"})})})]}),l&&e.jsx(v,{mt:2,children:e.jsx("a",{href:l,download:!0,style:{color:"#5080f8",fontSize:13,textDecoration:"none"},children:"Download sample Excel template"})}),je.length>0&&e.jsxs(v,{mt:3,children:[e.jsx(pe,{level:5,children:"Upload Results"}),e.jsx(n.Table,{dataSource:je.map((ge,De)=>({...ge,key:De})),pagination:!1,size:"small",bordered:!0,columns:[{title:"Row",dataIndex:"row",width:80},{title:"Student ID",dataIndex:"student_id"},{title:"Status",dataIndex:"status",render:ge=>e.jsx("span",{style:{color:ge==="Success"?"green":"red",fontWeight:500},children:ge})},{title:"Message",dataIndex:"message"}]})]})]})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Search Students"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:gt,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(Q,{options:cn,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",onChange:ge=>ae(ge,"class_id"),required:!0,allowSelectAll:!1,value:cn.find(ge=>String(ge.value)===String(re))??null})})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(Q,{options:un,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",allowSelectAll:!1,required:!0,value:un.find(ge=>String(ge.value)===String(Ce))??null,onChange:ge=>le(ge?.value??null)},`section1${O}`)})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsxs(v,{display:"flex",alignItems:"center",height:"100%",mt:2,children:[e.jsx(ne,{type:"submit",value:"Search",color:"primary"}),e.jsx(n.Button,{type:"text",htmlType:"button",onClick:()=>{k(null),M(null),de(null),le(null),D(ge=>!ge)},style:si,children:"Cancel"})]})})]})})})]})}),R&&e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(v,{p:3,children:e.jsx(Ie,{parentCallback:ps,data:{newData:ut,columns:et,columnstype:"antd",action:!1,Loading:me,error:Ae,deleteTodoMutation:_e,pageController:W}})})]})})]}),e.jsx(n.Drawer,{open:_,title:ke,placement:"right",width:420,destroyOnClose:!0,onClose:ye,children:h?.id&&e.jsx(tm,{token:t,assignmentId:h.id,studentName:`${h.firstname??""} ${h.lastname??""}`.trim(),onClose:ye,onSuccess:()=>vt()})}),e.jsx(n.Modal,{open:L,title:"Assign Student to Transport",onCancel:hs,footer:null,width:640,destroyOnClose:!0,children:e.jsx("form",{onSubmit:_a,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:hn,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",required:!0,allowSelectAll:!1,value:hn.find(ge=>String(ge.value)===String(oe))??null,onChange:ge=>ae(ge,"route_id")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:pn,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",required:!0,allowSelectAll:!1,value:pn.find(ge=>String(ge.value)===String(Se))??null,onChange:ge=>ae(ge,"vehicle_id")},`vehicle001${P}`)})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:mn,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Stop",required:!0,allowSelectAll:!1,value:mn.find(ge=>String(ge.value)===String(Xe))??null,onChange:ge=>ae(ge,"stop_id")},`stop001${N}`)})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{Desplay:"Start Date",placement:"bottomRight",format:"YYYY-MM-DD",value:ve,onChange:ge=>Oe(ge)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{type:"text",name:"rootCost",label:"Route Cost",value:Ye,onChange:ge=>Be(ge?.target?.value??"")})})}),e.jsx(n.Col,{xs:24,children:e.jsxs(v,{display:"flex",alignItems:"center",gap:12,children:[e.jsx(ne,{type:"submit",value:String(Ye??"").trim()?`${Po}${Ye} — Assign`:"Assign",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:hs,style:si,children:"Cancel"})]})})]})})})]})}const ri={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},xn={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"};function om({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:50}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c,g]=i.useState(""),[y,p]=i.useState(""),[m,A]=i.useState(""),[C,b]=i.useState(!1),f=`api/branchapi/Transport/getdriverTable?page=${a.page}&per_page=${a.rowsPerPage}`,x="api/branchapi/Transport/add_driver",R="api/branchapi/Transport/edit_driver",k="api/branchapi/Transport/deletedriver",O="api/branchapi/staff/uploadDocuments",D=i.useMemo(()=>String(O).startsWith("http")?O:`${bt()??""}${String(O).replace(/^\/+/,"")}`,[O]),_=bt()??"",{isLoading:u,data:h,error:S,mutate:E}=H(t?[f,t]:null,([W,B])=>K(W,B)),F=async(W,B)=>{try{await Ne(W,B,t),await E(),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),g("")}catch($){w.error($?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},q=W=>{W.preventDefault();const B=new FormData(W.target);F(x,B),W.target.reset()},T=async W=>{try{await E(He(k,W,t),ze(W)),w.success("Success! Deleted item.",{duration:1e3})}catch{w.error("Failed to delete the item.",{duration:1e3})}},U=W=>{d(W),g(W?.image??""),l(!0)},j=async W=>{try{await We(R,W,t),await E(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),d(null),g("")}catch(B){w.error(B?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},P=W=>{W.preventDefault();const B=new FormData(W.target);B.append("id",o?.id??""),j(B)},I=(W,B)=>{s({page:W,rowsPerPage:parseInt(B,10)})},N=[{title:"Driver Name",dataIndex:"name",key:"name",sorter:{compare:(W,B)=>String(W?.name??"").localeCompare(String(B?.name??""))}},{title:"Driver Licence",dataIndex:"Driver_licence",key:"Driver_licence",sorter:{compare:(W,B)=>String(W?.Driver_licence??"").localeCompare(String(B?.Driver_licence??""))}},{title:"Contact",dataIndex:"contact_number",key:"contact_number",sorter:{compare:(W,B)=>Number(W?.contact_number??0)-Number(B?.contact_number??0)}},{title:"Address",dataIndex:"address",key:"address",sorter:{compare:(W,B)=>String(W?.address??"").localeCompare(String(B?.address??""))}},{title:"Image",key:"image",width:100,render:(W,B)=>{const $=B?.image?`${_}staff/document/${B.image}`:"";return $?e.jsx("div",{style:{display:"flex",justifyContent:"center"},children:e.jsx(n.Image,{width:80,src:$,preview:{visible:!1,onVisibleChange:()=>{b(!0),p($),A(B?.name??"Driver")}}})}):null}},{title:"Action",key:"action",render:(W,B)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>U(B),style:{padding:2}}),e.jsx(yt,{id:B?.id,funcName:T})]})}],V=o?.name?`Edit ${o.name}`:"Edit Driver";return e.jsxs("div",{children:[e.jsx(n.Drawer,{open:r,title:V,placement:"right",width:420,destroyOnClose:!0,onClose:()=>{l(!1),d(null),g("")},children:e.jsx("form",{onSubmit:P,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(z,{type:"text",name:"name",label:"Driver Name",defaultValue:o?.name??"",required:"required"}),e.jsx(z,{type:"text",name:"Driver_licence",label:"Driver Licence",defaultValue:o?.Driver_licence??"",required:"required"}),e.jsx(z,{type:"number",name:"contact_number",label:"Driver Contact",defaultValue:o?.contact_number??"",required:"required"}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:xn,children:"Address"}),e.jsx(n.Input.TextArea,{name:"address",defaultValue:o?.address??"",rows:2,style:{width:"100%",border:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",paddingLeft:0,paddingRight:0}})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:xn,children:"Image"}),e.jsx(n.Upload,{maxCount:1,action:D,headers:t?{Authorization:t}:void 0,onChange:W=>{if(W?.file?.status!=="done")return;const B=W?.file?.response,$=B?.data??B?.filename??B?.file??B?.path??"";$&&g(String($))},children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),disabled:!D,children:"Upload"})}),e.jsx("input",{type:"hidden",name:"file",value:c})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null),g("")},style:ri,children:"Cancel"})]})]})})}),e.jsx(n.Modal,{zIndex:9999,open:C,title:m,footer:null,onCancel:()=>b(!1),children:e.jsx("img",{alt:"preview",style:{width:"100%"},src:y})}),e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(v,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Add Driver"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:q,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(z,{type:"text",name:"name",label:"Driver Name",required:"required"}),e.jsx(z,{type:"text",name:"Driver_licence",label:"Driver Licence",required:"required"}),e.jsx(z,{type:"number",name:"contact_number",label:"Driver Contact",required:"required"}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:xn,children:"Address"}),e.jsx(n.Input.TextArea,{name:"address",rows:2,style:{width:"100%",border:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",paddingLeft:0,paddingRight:0}})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:xn,children:"Image"}),e.jsx(n.Upload,{maxCount:1,action:D,headers:t?{Authorization:t}:void 0,onChange:W=>{if(W?.file?.status!=="done")return;const B=W?.file?.response,$=B?.data??B?.filename??B?.file??B?.path??"";$&&g(String($))},children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),disabled:!D,children:"Upload"})}),e.jsx("input",{type:"hidden",name:"file",value:c})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Save",color:"primary"}),e.jsx(n.Button,{type:"text",htmlType:"reset",onClick:()=>g(""),style:ri,children:"Cancel"})]})]})})})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Driver List"})}),e.jsx(v,{children:e.jsx(Ie,{parentCallback:I,data:{newData:h,columns:N,columnstype:"antd",action:!1,Loading:u,error:S,deleteTodoMutation:T}})})]})})]})})]})}const ii={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},ua={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},bn={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},li=[{label:"Pick",value:"pick"},{label:"Drop",value:"drop"}],jn=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function dm({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:50}),[r,l]=i.useState(!1),[o,d]=i.useState(!1),[c,g]=i.useState(null),[y,p]=i.useState(null),[m,A]=i.useState(null),[C,b]=i.useState(null),[f,x]=i.useState(te()),[R,k]=i.useState(te()),[O,D]=i.useState("pick"),[_,u]=i.useState(!1),[h,S]=i.useState(null),[E,F]=i.useState(null),[q,T]=i.useState(!1),[U,j]=i.useState(null),[P,I]=i.useState(null),[N,V]=i.useState(null),[W,B]=i.useState(null),[$,M]=i.useState(te()),[L,Y]=i.useState(te()),[se,X]=i.useState("pick"),G=`api/branchapi/Transport/assignRouteTimeList?page=${a.page}&per_page=${a.rowsPerPage}`,J="api/branchapi/Transport/assignRouteTime",re="api/branchapi/Transport/editAssignRouteTime",de="api/branchapi/Transport/deleteAssignRouteTime",Ce="api/branchapi/Transport/driverDropdown",le="api/branchapi/transport/routeTimetableShowdata",oe="api/branchapi/Transport/getrouteDropdown",ie="api/branchapi/Transport/getvehicleDropdown",{isLoading:Se,data:Ee,error:Xe,mutate:be}=H(t?[G,t]:null,([me,Ae])=>K(me,Ae)),{data:ve}=H(t&&oe?[oe,t]:null,([me,Ae])=>K(me,Ae)),{data:Oe}=H(t&&Ce?[Ce,t]:null,([me,Ae])=>K(me,Ae)),Ye=i.useMemo(()=>c?`${ie}?route_id=${c}`:null,[c,ie]),{data:Be}=H(t&&Ye?[Ye,t]:null,([me,Ae])=>K(me,Ae)),Le=i.useMemo(()=>jn(ve),[ve]),Ze=i.useMemo(()=>jn(Oe),[Oe]),at=i.useMemo(()=>jn(Be),[Be]),fe=(me,Ae)=>{s({page:me,rowsPerPage:parseInt(Ae,10)})},je=async me=>{me.preventDefault();const Ae=new FormData(me.target);Ae.set("route_id",y?.value??c??""),Ae.set("driver_id",m?.value??""),Ae.set("vehicle_id",C?.value??""),Ae.set("start_time",f?f.format("h:mm a"):""),Ae.set("drop_time",R?R.format("h:mm a"):""),Ae.set("type",O);try{await Ne(J,Ae,t),await be(),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),me.target.reset(),g(null),p(null),A(null),b(null),d(ut=>!ut),x(te()),k(te()),D("pick"),l(ut=>!ut)}catch(ut){w.error(ut?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},xe=async me=>{try{await He(de,me,t),await be(),w.success("Success! Deleted item.",{duration:1e3})}catch(Ae){w.error(Ae?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},ae=me=>{S(me),u(!0);const Ae=me?.id??me?.route_time_id??me?.routeId??null;F(Ae);const ut=me?.route_id??me?.routeId??me?.fk_route_id;j(ut??null),I(Le.find(vt=>vt?.value===(ut??me?.route_id))??null),V(Ze.find(vt=>vt?.value===(me?.driver_id??me?.driverId))??null),B(null),T(vt=>!vt),M(me?.start_time?te(me.start_time,["h:mm a","HH:mm"]):te()),Y(me?.drop_time?te(me.drop_time,["h:mm a","HH:mm"]):te()),X(me?.type??"pick")},he=i.useMemo(()=>{if(!E)return null;const me=String(le).includes("?")?"&":"?";return`${le}${me}id=${encodeURIComponent(String(E))}`},[E,le]),{data:ye,isLoading:ke}=H(t&&he?[he,t]:null,([me,Ae])=>K(me,Ae)),Pe=i.useMemo(()=>{const me=ye?.data??ye;return Array.isArray(me)?me[0]??null:Array.isArray(me?.data)?me.data[0]??null:me??null},[ye]),ue=i.useMemo(()=>U?`${ie}?route_id=${U}`:null,[U,ie]),{data:we}=H(t&&ue?[ue,t]:null,([me,Ae])=>K(me,Ae)),Ve=i.useMemo(()=>jn(we),[we]);i.useEffect(()=>{if(!Pe)return;const me=Pe?.route_id??Pe?.fk_route_id??Pe?.routeId;j(me??null),I(Le.find(Ae=>Ae?.value===me)??null),V(Ze.find(Ae=>Ae?.value===Pe?.driver_id)??null),B(null),M(Pe?.start_time?te(Pe.start_time,["h:mm a","HH:mm"]):te()),Y(Pe?.drop_time?te(Pe.drop_time,["h:mm a","HH:mm"]):te()),X(Pe?.type??"pick"),T(Ae=>!Ae)},[Ze,Pe,Le]),i.useEffect(()=>{if(!Pe)return;const me=Pe?.vehicle_id??Pe?.vehicleId;me&&B(Ve.find(Ae=>Ae?.value===me)??null)},[Pe,Ve]);const dt=async me=>{if(me.preventDefault(),!E)return;const Ae=new FormData(me.target);Ae.set("id",String(E)),Ae.set("route_id",P?.value??U??""),Ae.set("driver_id",N?.value??""),Ae.set("vehicle_id",W?.value??""),Ae.set("start_time",$?$.format("h:mm a"):""),Ae.set("drop_time",L?L.format("h:mm a"):""),Ae.set("type",se);try{await We(re,Ae,t),await be(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),u(!1),S(null)}catch(ut){w.error(ut?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},Ft=[{title:"Route Name",dataIndex:"route_title",key:"route_title"},{title:"Driver Name",dataIndex:"driver_name",key:"driver_name"},{title:"Vehicle Name",dataIndex:"vehicle_name",key:"vehicle_name"},{title:"Start Time",dataIndex:"start_time",key:"start_time"},{title:"End Time",dataIndex:"drop_time",key:"drop_time"},{title:"Type",dataIndex:"type",key:"type"},{title:"Action",key:"action",render:(me,Ae)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>ae(Ae),style:{padding:2}}),e.jsx(yt,{id:Ae?.id??Ae?.routeId??Ae?.route_time_id,funcName:xe})]})}],Pt=h?.route_title?`Edit ${h.route_title}`:"Edit Route Time";return e.jsxs("div",{children:[e.jsx(n.Drawer,{open:_,title:Pt,placement:"right",width:420,destroyOnClose:!0,onClose:()=>{u(!1),S(null),F(null),j(null),I(null),V(null),B(null)},children:e.jsx("form",{onSubmit:dt,children:e.jsxs("div",{style:{display:"grid",gap:20,opacity:ke?.6:1},children:[e.jsx(Q,{options:Le,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",required:!0,allowSelectAll:!1,value:P,onChange:me=>{j(me?.value??null),I(me??null),B(null),T(Ae=>!Ae)}}),e.jsx(Q,{options:Ze,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Driver",name:"driver_id",required:!0,allowSelectAll:!1,value:N,onChange:me=>V(me??null)}),e.jsx(Q,{options:Ve,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",name:"vehicle_id",required:!0,allowSelectAll:!1,value:W,onChange:me=>B(me??null)},`edit-vehicle-${q}`),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:ua,children:"Start Time"}),e.jsx(n.TimePicker,{value:$,onChange:me=>M(me),use12Hours:!0,format:"h:mm a",allowClear:!1,style:bn})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:ua,children:"Drop Time"}),e.jsx(n.TimePicker,{value:L,onChange:me=>Y(me),use12Hours:!0,format:"h:mm a",allowClear:!1,style:bn})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:ua,children:"Type"}),e.jsx("div",{style:{borderBottom:"1px solid #d9d9d9",paddingBottom:6},children:e.jsx(n.Radio.Group,{options:li,optionType:"button",buttonStyle:"solid",value:se,onChange:me=>X(me.target.value)})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{u(!1),S(null)},style:ii,children:"Cancel"})]})]})})}),e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(v,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Route Time Table"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:je,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:Le,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",value:y,onChange:me=>{g(me?.value??null),p(me??null),b(null),d(Ae=>!Ae)},allowSelectAll:!1,required:!0}),e.jsx(Q,{options:Ze,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Driver",name:"driver_id",value:m,onChange:me=>A(me??null),allowSelectAll:!1,required:!0}),e.jsx(Q,{options:at,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",name:"vehicle_id",value:C,onChange:me=>b(me??null),allowSelectAll:!1,required:!0},`vehicle-${o}`),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:ua,children:"Start Time"}),e.jsx(n.TimePicker,{value:f,onChange:me=>x(me),use12Hours:!0,format:"h:mm a",allowClear:!1,style:bn})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:ua,children:"Drop Time"}),e.jsx(n.TimePicker,{value:R,onChange:me=>k(me),use12Hours:!0,format:"h:mm a",allowClear:!1,style:bn})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:ua,children:"Type"}),e.jsx("div",{style:{borderBottom:"1px solid #d9d9d9",paddingBottom:6},children:e.jsx(n.Radio.Group,{options:li,optionType:"button",buttonStyle:"solid",value:O,onChange:me=>D(me.target.value)})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Add",color:"primary"}),e.jsx(n.Button,{type:"text",htmlType:"reset",onClick:()=>{g(null),p(null),A(null),b(null),d(me=>!me),x(te()),k(te()),D("pick"),l(me=>!me)},style:ii,children:"Cancel"})]})]})},`form-${r}`)})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Route Time List"})}),e.jsx(v,{children:e.jsx(Ie,{parentCallback:fe,data:{newData:Ee,columns:Ft,columnstype:"antd",action:!1,Loading:Se,error:Xe,deleteTodoMutation:xe}})})]})})]})})]})}const cm={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},oi={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},di={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},ci=({dataIndex:t,title:a,record:s,children:r,isEditable:l,...o})=>e.jsx("td",{...o,children:l?e.jsx("div",{style:{display:"flex",marginLeft:"5%"},children:r}):r});let ui=2;function um({token:t}){const[a,s]=i.useState([]),[r,l]=i.useState(null),[o,d]=i.useState([]),[c,g]=i.useState({pagination:{current:1,pageSize:50}}),{isLoading:y,data:p,mutate:m}=H(t?[`api/branchapi/transport/getrouteStoppageData?page=${c.pagination.current}&per_page=${c.pagination.pageSize}`,t]:null,([j,P])=>K(j,P)),{Status:A="Failed",pagination:{total_rows:C=0}={}}=p||{},{data:b=[]}=A==="Success"?p:{},{data:f}=H(t?["api/branchapi/Transport/getrouteDropdown",t]:null,([j,P])=>K(j,P)),x=i.useMemo(()=>{const j=f?.data??f??[];if(Array.isArray(j))return j;if(j&&typeof j=="object"){if(Array.isArray(j?.data))return j.data;if(Array.isArray(j?.data?.data))return j.data.data}return[]},[f]),{data:R}=H(t&&r?["api/branchapi/transport/getrouteStoppageData?route_id="+r,t]:null,([j,P])=>K(j,P)),{Status:k="Failed"}=R||{},O=async(j,P)=>{try{await m(Ne(j,P,t),Ge(P)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{w.error("Failed to add the new item.",{duration:1e3})}},D=j=>j?typeof j=="string"?j:j?.isValid?.()?j.format("h:mm a"):"":"",_=(j,P=[])=>{const I=(Array.isArray(j)?j:[]).map(W=>({id:W?.id??"",name:String(W?.stop_name??W?.name??"").trim(),pickTime:D(W?.pickup_time??W?.pickTime??W?.pickupTime),drop_time:D(W?.drop_time??W?.dropTime)})),N=I.filter(W=>W?.id!=null&&String(W.id).trim()!==""),V=I.filter(W=>!(W?.id!=null&&String(W.id).trim()!==""));return{route_id:r??"",edit_stoppage:N,add_stoppage:V,delete_stoppage:Array.isArray(P)?P:[]}},u=j=>{j.preventDefault();const P="/api/branchapi/transport/addstoppageToRoute",I=_(a,o);O(P,I)},h=()=>{s(j=>[...Array.isArray(j)?j:[],{idKey:ui++,stop_name:"",pickup_time:te().format("h:mm a"),drop_time:te().format("h:mm a")}])},S=j=>{if(a.length===1)return;const P=a[j];P?.id!=null&&String(P.id).trim()!==""&&!P?.idKey&&d(I=>{const N=Array.isArray(I)?I:[];return N.some(W=>String(W)===String(P.id))?N:[...N,P.id]}),s(I=>{const N=[...I];return N.splice(j,1),N})},E=j=>{g(P=>({...P,pagination:{current:j,pageSize:P.pagination.pageSize}}))},F=async j=>{const P="/api/branchapi/Transport/deletevehicle";try{await m(He(P,j,t),ze(j)),w.success("Success! Deleted item.",{duration:1e3})}catch{w.error("Failed to delete the item.",{duration:1e3})}};i.useEffect(()=>{if(k==="Success"){const j=Array.isArray(R?.data)?R.data:[];j.length>0?(s(j),d([])):r&&(s([{idKey:ui++,stop_name:"",pickup_time:te().format("h:mm a"),drop_time:te().format("h:mm a")}]),d([]))}},[k,R,r]);const q=j=>{const{children:P=[]}=j||{},I=[{title:"Stop Name",dataIndex:"stop_name",onCell:N=>({isEditable:!0})},{title:"Pick Time",dataIndex:"pickup_time",onCell:N=>({isEditable:!0})},{title:"Drop Name",dataIndex:"drop_time",onCell:N=>({isEditable:!0})}];return e.jsx("div",{style:{display:"flex",justifyContent:"center"},children:e.jsx("div",{style:{width:"95%",margin:8},children:e.jsx(n.Table,{components:{body:{cell:ci}},expandable:{childrenColumnName:"changed"},bordered:!0,columns:I,rowKey:N=>T(N)+"cell01",dataSource:P,pagination:!1})})})},T=j=>{const P=["id","index"];for(let I=0;I<P.length;I++)if(j[P[I]])return j[P[I]]},U=[{title:"Route",dataIndex:"route_title"},{title:"Stoppages",render:(j,P,I)=>e.jsx(e.Fragment,{children:(Array.isArray(P.children)?P.children:[]).map((N,V,W)=>e.jsx("span",{children:`${N.stop_name} ${V+1===W.length?"":","}`},`${V}vehicle001`))})},{title:"Action",render:(j,P,I)=>e.jsx(e.Fragment,{children:e.jsx(yt,{id:P?.route_id,funcName:F})})}];return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(v,{pt:5,pb:1,children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Route Time Table"})}),e.jsx(v,{px:3,pb:2,children:e.jsxs("form",{onSubmit:u,children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx("div",{children:e.jsx(Q,{options:x,value:x.find(j=>String(j.value)===String(r))??null,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",onChange:j=>{l(j?.value??null),s([]),d([])},allowSelectAll:!1,required:!0})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-start",gap:12},children:r&&e.jsx("button",{type:"button",style:{padding:2,border:"none",background:"transparent",cursor:"pointer",marginBottom:8},title:"Add Row",onClick:h,children:e.jsx(ee.PlusCircleOutlined,{style:{fontSize:24,color:"#28a745"}})})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:[e.jsx(ne,{type:"submit",value:"Add",color:"primary"}),e.jsx(n.Button,{type:"text",htmlType:"button",onClick:()=>{l(null),s([]),d([])},style:cm,children:"Cancel"})]})]}),e.jsx("div",{style:{marginTop:20},children:a.length>0&&a.map((j,P)=>{const I=j.pickup_time?te(j.pickup_time,"h:mm a"):null,N=j.drop_time?te(j.drop_time,"h:mm a"):null;return e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr)) auto",gap:16,alignItems:"end",marginBottom:12},children:[e.jsxs("div",{children:[e.jsx(z,{value:j.stop_name??"",type:"text",name:`stoppage[${P}][name]`,label:"Place Name*",required:"required",onChange:V=>{const W=V?.target?.value??"";s(B=>{const $=[...B];return $[P]={...$[P]??{},stop_name:W},$})}}),j?.id!=null&&String(j.id).trim()!==""&&e.jsx("input",{type:"hidden",name:`stoppage[${P}][id]`,value:String(j.id)})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:oi,children:"Pick Time"}),e.jsx(n.TimePicker,{value:I,use12Hours:!0,format:"h:mm a",name:`stoppage[${P}][pickTime]`,allowClear:!1,style:di,onChange:V=>{const W=V?V.format("h:mm a"):"";s(B=>{const $=[...B];return $[P]={...$[P]??{},pickup_time:W},$})}})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:oi,children:"Drop Time"}),e.jsx(n.TimePicker,{value:N,use12Hours:!0,format:"h:mm a",name:`stoppage[${P}][drop_time]`,allowClear:!1,style:di,onChange:V=>{const W=V?V.format("h:mm a"):"";s(B=>{const $=[...B];return $[P]={...$[P]??{},drop_time:W},$})}})]}),e.jsx("div",{style:{marginBottom:8},children:a.length>1&&e.jsx("button",{type:"button",style:{padding:2,border:"none",background:"transparent",cursor:"pointer"},onClick:()=>S(P),children:e.jsx(ee.MinusCircleOutlined,{style:{fontSize:20,color:"#dc3545"}})})})]},j.idKey?j.idKey+"exp":j.id+"exp")})})]})}),e.jsx(v,{mx:2,mt:1,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Stoppage List"})}),e.jsx(v,{style:{padding:"10px 16px"},children:e.jsx(n.Table,{components:{body:{cell:ci}},columns:U,bordered:!0,size:"small",rowKey:j=>T(j),dataSource:b,loading:y,expandable:{expandedRowRender:q,childrenColumnName:"changed"},pagination:{current:c.pagination.current,pageSize:c.pagination.pageSize,total:C,showSizeChanger:!0,onChange:E,onShowSizeChange:(j,P)=>{g(I=>({...I,pagination:{current:1,pageSize:P}}))},showTotal:(j,P)=>`${P[0]}-${P[1]} of ${j} items`}})})]})]})}const{Step:Sn}=n.Steps;function pm({token:t}){const[a,s]=i.useState(0),[r,l]=i.useState(void 0),[o,d]=i.useState(void 0),[c,g]=i.useState(!1),[y,p]=i.useState(null),[m,A]=i.useState(!1),[C,b]=i.useState(!1),[f,x]=i.useState(!1),[R,k]=i.useState([]),[O,D]=i.useState(null),[_,u]=i.useState(null),[h,S]=i.useState(!1),{isLoading:E,data:F}=H(t?[tn,t]:null,([M,L])=>K(M,L)),{isLoading:q,data:T}=H(h?[h,t]:null,([M,L])=>K(M,L)),{data:U}=H(c?[c,t]:null,([M,L])=>K(M,L)),j=i.useMemo(()=>[{title:"Excel Row",dataIndex:"row",width:90,render:M=>M??"-"},{title:"Student Name",dataIndex:"student_name_system",render:M=>M?e.jsx("span",{style:{color:"#d97706"},children:M}):"-"},{title:"Route",dataIndex:"route",render:M=>M||"-"},{title:"Vehicle",dataIndex:"vehicle",render:M=>M||"-"},{title:"Stop",dataIndex:"stop",render:M=>M||"-"},{title:"Start Date",dataIndex:"start_date",render:M=>M||"-"},{title:"Transport Fee",dataIndex:"transport_fee",render:M=>M??"-"},{title:"Status",dataIndex:"status",width:110,render:M=>{const Y={Valid:"success",Invalid:"error",Duplicate:"warning",Imported:"success",Skipped:"warning",Failed:"error"}[M]||"default";return e.jsx("span",{style:{color:Y,fontWeight:500},children:M})}},{title:"Message",dataIndex:"message",render:M=>M?e.jsx("span",{style:{color:"#dc2626"},children:M}):"-"}],[]),P=()=>{p(null),A(!1),b(!1),x(!1),k([]),D(null),u(null),l(void 0),d(void 0),g(!1),s(0)},I=async()=>{try{const M=await xu({class_id:r?.value,section_id:o?.value},t),L=window.URL.createObjectURL(M),Y=document.createElement("a");Y.href=L,Y.download="transport-bulk-template.xlsx",document.body.appendChild(Y),Y.click(),document.body.removeChild(Y),window.URL.revokeObjectURL(L),w.success("Template downloaded.",{duration:1e3})}catch(M){w.error(M?.message||"Failed to download template.",{duration:1e3})}},N=async()=>{if(!y){w.error("Please select an Excel file to upload.",{duration:1e3});return}b(!0),k([]),D(null),u(null);try{const M=await bu(y,t);if(M.Status!=="Success"){w.error(M.msg||"Validation failed.",{duration:1e3}),b(!1);return}D(M.data?.summary||null),k(M.data?.rows||[]),s(2),w.success(M.msg||"Validation complete.",{duration:1e3})}catch(M){w.error(M?.message||"Validation failed.",{duration:1e3})}finally{b(!1)}},V=async()=>{if(!R.length){w.error("No rows provided to import.",{duration:1e3});return}x(!0),u(null);try{const M=await ju(R,t,"skip");if(M.Status!=="Success"){w.error(M.msg||"Import failed.",{duration:1e3}),x(!1);return}u(M.data||null),s(3),w.success(M.msg||"Import completed.",{duration:1e3})}catch(M){w.error(M?.message||"Import failed.",{duration:1e3})}finally{x(!1)}},W=async M=>{if(!M||!M.length){w.error("No rows provided.",{duration:1e3});return}try{const L=await Su(M,t),Y=window.URL.createObjectURL(L),se=document.createElement("a");se.href=Y,se.download="transport-bulk-error-report.xlsx",document.body.appendChild(se),se.click(),document.body.removeChild(se),window.URL.revokeObjectURL(Y),w.success("Error report downloaded.",{duration:1e3})}catch(L){w.error(L?.message||"Failed to download error report.",{duration:1e3})}},B=i.useMemo(()=>R.length?(_?_.rows:R).filter(L=>!["Valid","Imported"].includes(L.status)):[],[R,_]),$={background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"};return e.jsx(v,{pt:5,pb:1,children:e.jsx(n.Row,{gutter:[16,16],children:e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:$,children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Transport / Bulk Upload"})}),e.jsxs(v,{p:3,children:[e.jsxs(n.Steps,{current:a,style:{marginBottom:16},children:[e.jsx(Sn,{title:"Download Template"}),e.jsx(Sn,{title:"Upload & Validate"}),e.jsx(Sn,{title:"Review"}),e.jsx(Sn,{title:"Import Result"})]}),a===0&&e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:4,children:e.jsx(v,{children:e.jsx(Q,{label:"Class",options:Array.isArray(F)?F:[],value:r,onChange:M=>{l(M),M?g(`${an}?class_id=${M.value}`):(d(void 0),g(!1))},showSearch:!0,allowClear:!0})})}),e.jsx(n.Col,{xs:24,md:4,children:e.jsx(v,{children:e.jsx(Q,{label:"Section",options:Array.isArray(U)?U:[],value:o,onChange:d,showSearch:!0,allowClear:!0})})}),e.jsx(n.Col,{xs:24,md:4,style:{marginTop:20},children:e.jsx(v,{children:e.jsx(n.Button,{type:"primary",onClick:I,block:!0,children:"Download Excel Template"})})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{mt:1,children:e.jsx(n.Button,{type:"primary",onClick:()=>s(1),children:"Next: Upload Excel"})})})]}),a===1&&e.jsxs(n.Row,{gutter:[16,16],align:"middle",children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsxs(v,{children:[e.jsx(n.Upload,{accept:".xlsx",showUploadList:!1,beforeUpload:M=>(p(M),!1),children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),block:!0,disabled:m||C,children:y?y.name:"Choose Excel File (.xlsx)"})}),y&&e.jsxs(v,{mt:.5,display:"flex",alignItems:"center",gap:1,children:[e.jsxs(pe,{level:6,color:"textSecondary",children:[(y.size/1024).toFixed(1)," KB"]}),e.jsx(n.Button,{size:"small",danger:!0,onClick:()=>p(null),children:"Remove"})]})]})}),e.jsx(n.Col,{xs:24,md:3,children:e.jsx(v,{children:e.jsx(ne,{type:"button",value:C?"Validating...":"Validate & Preview",color:"primary",onClick:N,disabled:C||!y})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Button,{type:"text",size:"small",onClick:()=>{P(),s(0)},children:"Back"})})]}),a===2&&e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsx(pe,{level:6,color:"textSecondary",children:"Total"}),e.jsx(pe,{level:4,children:O?.total??R.length})]})})}),e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsx(pe,{level:6,color:"textSecondary",children:"Valid"}),e.jsx(pe,{level:4,style:{color:"#52c41a"},children:O?.valid??0})]})})}),e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsx(pe,{level:6,color:"textSecondary",children:"Invalid"}),e.jsx(pe,{level:4,style:{color:"#ff4d4f"},children:O?.invalid??0})]})})}),e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsx(pe,{level:6,color:"textSecondary",children:"Duplicate"}),e.jsx(pe,{level:4,style:{color:"#faad14"},children:O?.duplicate??0})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{style:{maxHeight:400,overflow:"auto",width:"100%"},children:e.jsx(n.Table,{dataSource:R.map((M,L)=>({...M,key:`${M.row}-${L}`})),columns:j,size:"small",bordered:!0,scroll:{x:!0},pagination:{pageSize:10,showSizeChanger:!0,showTotal:(M,L)=>`${L[0]}-${L[1]} of ${M} items`}})})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Row,{gutter:[8,8],align:"middle",children:[e.jsx(n.Col,{children:e.jsx(ne,{type:"button",value:f?"Importing...":"Import Valid Rows",color:"primary",onClick:V,disabled:f})}),e.jsx(n.Col,{children:e.jsx(n.Button,{size:"small",onClick:()=>W(B),disabled:!B.length,children:"Download Error Report"})}),e.jsx(n.Col,{children:e.jsx(n.Button,{type:"text",size:"small",onClick:()=>{P(),s(1)},children:"Upload Another File"})})]})})]}),a===3&&e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsxs(pe,{level:6,color:"textSecondary",children:["Total "," "]}),e.jsx(pe,{level:4,children:_?.total??0})]})})}),e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsxs(pe,{level:6,color:"textSecondary",children:["Imported "," "]}),e.jsx(pe,{level:4,style:{color:"#52c41a"},children:_?.imported??0})]})})}),e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsxs(pe,{level:6,color:"textSecondary",children:["Skipped "," "]}),e.jsx(pe,{level:4,style:{color:"#faad14"},children:_?.skipped??0})]})})}),e.jsx(n.Col,{xs:6,md:3,children:e.jsx(n.Card,{children:e.jsxs(v,{p:1.5,children:[e.jsxs(pe,{level:6,color:"textSecondary",children:["Failed "," "]}),e.jsx(pe,{level:4,style:{color:"#ff4d4f"},children:_?.failed??0})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{style:{maxHeight:400,overflow:"auto",width:"100%"},children:e.jsx(n.Table,{dataSource:(_?.rows||[]).map((M,L)=>({...M,key:`${M.row}-${L}`})),columns:j,size:"small",bordered:!0,scroll:{x:!0},pagination:{pageSize:10,showSizeChanger:!0,showTotal:(M,L)=>`${L[0]}-${L[1]} of ${M} items`}})})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Row,{gutter:[8,8],align:"middle",children:[e.jsx(n.Col,{children:e.jsx(n.Button,{size:"small",onClick:()=>W(B),disabled:!B.length,children:"Download Error Report"})}),e.jsx(n.Col,{children:e.jsx(n.Button,{type:"primary",size:"small",onClick:P,children:"Upload Another File"})})]})})]})]})]})})})})}const mm=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},so=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},pi=(t,a,s)=>{const r=`${t||""}`.trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;const l=a?.fk_branchID??so(s),o=r.startsWith("/")?r.slice(1):r;return mm(Ke(),`uploads/school_${l}/student/homework/${o}`)},mi={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},ka=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function hm({token:t}){const[a,s]=i.useState("api/branchapi/homeworks/gethomeworklistByClassSectionBranch?"),[r,l]=i.useState({page:1,rowsPerPage:10}),[o,d]=i.useState(null),[c,g]=i.useState(null),[y,p]=i.useState(null),[m,A]=i.useState(null),[C,b]=i.useState(!1),[f,x]=i.useState(null),[R,k]=i.useState(null),[O,D]=i.useState(null),[_,u]=i.useState(null),[h,S]=i.useState(null),[E,F]=i.useState(null),[q,T]=i.useState(!1),[U,j]=i.useState(""),[P,I]=i.useState(""),[N,V]=i.useState(""),[W,B]=i.useState(!1),$=(ue,we)=>{const Ve=ue?.value??null;switch(we){case"class_id":d(Ve),g(null),p(null);break;case"section_id":g(Ve);break;case"subject_id":p(Ve);break}},{data:M}=H(t?["api/branchapi/academy/classdropdownlist",t]:null,([ue,we])=>K(ue,we)),{data:L}=H(t&&h?[h,t]:null,([ue,we])=>K(ue,we)),{data:Y}=H(t&&E?[E,t]:null,([ue,we])=>K(ue,we)),se=o?`api/branchapi/academy/sectionoftheClass?class_id=${o}`:null,{data:X}=H(t&&se?[se,t]:null,([ue,we])=>K(ue,we)),G=o?`api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${o}`:null,{data:J}=H(t&&G?[G,t]:null,([ue,we])=>K(ue,we)),re=i.useMemo(()=>ka(M),[M]),de=i.useMemo(()=>ka(L),[L]),Ce=i.useMemo(()=>ka(Y),[Y]),le=i.useMemo(()=>ka(X),[X]),oe=i.useMemo(()=>ka(J),[J]),ie=t&&a?`${a}class_id=${o||""}&subject_id=${y||""}&section_id=${c||""}&date=${m?.format("YYYY-MM-DD")||""}&page=${r.page}&per_page=${r.rowsPerPage}`:null,{isLoading:Se,error:Ee,data:Xe,mutate:be}=H(ie?[ie,t]:null,([ue,we])=>K(ue,we)),ve=async(ue,we)=>{try{await be(Ne(ue,we,t),Ge(we)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),at()}catch(Ve){console.error(Ve),w.error("Failed to add the new item.",{duration:1e3})}},Oe=async ue=>{try{await be(He("api/student/Homework/deleteHomework",ue,t),ze(ue)),w.success("Success! Deleted item.",{duration:1e3})}catch(we){console.error(we),w.error("Failed to delete the item.",{duration:1e3})}},Ye=async ue=>{try{const we=await We("api/student/Homework/updateHomework",ue,t);be(we),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),at()}catch(we){console.error(we),w.error("Failed to update the item.",{duration:1e3})}},Be=ue=>{ue.preventDefault();const we=new FormData(ue.target),Ve=we.get("class_id")||o,dt=we.get("section_id")||c,Ft=we.get("subject_id")||y,Pt=m?.format("YYYY-MM-DD");s(`api/branchapi/homeworks/gethomeworklistByClassSectionBranch?class_id=${Ve||""}&subject_id=${Ft||""}&section_id=${dt||""}${Pt?`&date=${Pt}`:""}&`),l(me=>({...me,page:1}))},Le=ue=>{ue.preventDefault();const we=new FormData(ue.target);ve("api/branchapi/homeworks/addHomework",we),V("")},Ze=async(ue,we)=>{ue.preventDefault();const Ve=new FormData(ue.target);Ve.append("id",we),B(!0);try{await Ye(Ve)}finally{B(!1)}},at=()=>{b(!1),x(null),k(null),D(null),u(null),S(null),F(null),V("")},fe=ue=>{x(ue);const we=ue?.class_id??ue?.classId??null,Ve=ue?.section_id??ue?.sectionId??null,dt=ue?.subject_id??ue?.subjectId??null;k(we),D(Ve),u(dt),we?(S(`api/branchapi/academy/sectionoftheClass?class_id=${we}`),F(`api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${we}`)):(S(null),F(null)),V(ue?.file||ue?.document||""),b(!0)},je=ue=>{const we=ue?.value??null;k(we),D(null),u(null),we?(S(`api/branchapi/academy/sectionoftheClass?class_id=${we}`),F(`api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${we}`)):(S(null),F(null))},xe=ue=>{D(ue?.value??null)},ae=ue=>{u(ue?.value??null)},he=(ue,we)=>{l({page:ue,rowsPerPage:parseInt(we,10)})},ye=()=>{T(!1),j(""),I("")},ke=(ue,we)=>{if(!ue){w.error("No document found.",{duration:1e3});return}j(ue),I(we||"Document"),T(!0)},Pe=[{title:"Date",dataIndex:"homework_date",key:"homework_date"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Title",dataIndex:"title",key:"title"},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0},{title:"Submission Date",dataIndex:"submit_date",key:"submit_date"},{title:"Staff Name",dataIndex:"staff_name",key:"staff_name"},{title:"Subject",dataIndex:"subject",key:"subject"},{title:"Document",key:"document",render:(ue,we)=>{const Ve=we?.document||we?.file||"";if(!Ve)return e.jsx("span",{style:{color:"#999",fontSize:12},children:"Not Uploaded"});const dt=pi(Ve,we,t);return e.jsx("a",{style:{color:"#5080f8",cursor:"pointer"},onClick:()=>ke(dt,Ve),children:"View"})}},{title:"Action",key:"action",render:(ue,we)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>fe(we),style:{padding:2}}),e.jsx(yt,{id:we?.id,funcName:Oe})]})}];return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Search Homework"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:Be,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{options:re,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",placeholder:"Class",allowSelectAll:!1,value:re.find(ue=>String(ue.value)===String(o))??null,onChange:ue=>$(ue,"class_id")})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{options:le,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",placeholder:"Section",allowSelectAll:!1,value:le.find(ue=>String(ue.value)===String(c))??null,onChange:ue=>$(ue,"section_id")})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{options:oe,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subject",name:"subject_id",placeholder:"Subject",allowSelectAll:!1,value:oe.find(ue=>String(ue.value)===String(y))??null,onChange:ue=>$(ue,"subject_id")})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Ue,{Desplay:"Date",format:"YYYY-MM-DD",allowClear:!1,value:m,onChange:ue=>A(ue)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsxs(v,{children:[e.jsx(ne,{type:"submit",value:"Search",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{s("api/branchapi/homeworks/gethomeworklistByClassSectionBranch?"),d(null),g(null),p(null),A(null)},style:mi,children:"Cancel"})]})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Homework List"})}),e.jsx(v,{p:3,children:e.jsx(Ie,{parentCallback:he,data:{newData:Xe,columns:Pe,columnstype:"antd",action:!1,Loading:Se,error:Ee,deleteTodoMutation:Oe,pageController:r}})})]})})]}),e.jsx(n.Drawer,{open:C,title:f?"Edit Homework":"Add Homework",placement:"right",width:600,destroyOnClose:!0,onClose:at,children:e.jsx("form",{onSubmit:f?ue=>Ze(ue,f.id):Le,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:re,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",required:!0,allowSelectAll:!1,placeholder:"Select Class",value:re.find(ue=>String(ue.value)===String(R))??null,onChange:je})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:de,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",required:!0,allowSelectAll:!1,placeholder:R?"Select Section":"Select Class First",value:de.find(ue=>String(ue.value)===String(O))??null,onChange:xe,isDisabled:!R})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{options:Ce,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subject",name:"sub_id",required:!0,allowSelectAll:!1,placeholder:R?"Select Subject":"Select Class First",value:Ce.find(ue=>String(ue.value)===String(_))??null,onChange:ae,isDisabled:!R})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:f?.homew_date?te(f?.homew_date):te(),Desplay:"From",name:"homew_date"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:f?.submission_date?te(f?.submission_date):te(),Desplay:"Deadline",name:"submission_date"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{type:"text",label:"Title",name:"title",defaultValue:f?.title||"",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(lt,{type:"text",label:"Description",name:"description",defaultValue:f?.description||"",rows:3,required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.Upload,{action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${so(t)}/student/homework`},headers:{Authorization:t},maxCount:1,onChange:ue=>{if(ue.file.status==="removed"&&V(""),ue.file.status==="done"){const we=ue.file.response?.data??ue.file.response?.file??"";V(String(we??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:N?"Change":"Upload"})}),N&&f&&e.jsx("a",{href:pi(N,f,t),target:"_blank",rel:"noreferrer",style:{display:"block",marginTop:8,fontSize:12,color:"#1677ff",textDecoration:"underline"},children:"View existing document"}),e.jsx("input",{type:"hidden",name:"file",value:N||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsxs(v,{children:[e.jsx(ne,{type:"submit",value:W?"Saving...":"Save",color:"primary",disabled:W}),e.jsx(n.Button,{type:"text",onClick:at,style:mi,children:"Cancel"})]})})})})]})})}),e.jsx(n.Modal,{open:q,onCancel:ye,footer:null,width:900,closable:!0,children:e.jsxs(v,{p:3,children:[e.jsx(v,{mb:2,children:e.jsx(pe,{level:5,children:P||"View Document"})}),U?U.match(/\.pdf(\?|#|$)/i)?e.jsx("iframe",{src:U,title:P||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:U,alt:P||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(pe,{children:"No document found"})]})}),e.jsx(v,{style:{position:"fixed",bottom:24,right:24,zIndex:1e3},children:e.jsx(n.Button,{type:"primary",size:"large",onClick:()=>{x(null),k(null),D(null),u(null),S(null),F(null),V(""),b(!0)},style:{borderRadius:"50%",width:56,height:56,boxShadow:"0 4px 12px rgba(0,0,0,0.15)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:24},children:"+"})})]})}const Ts=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function fm({token:t}){const[a,s]=i.useState(!1),[r,l]=i.useState(null),[o,d]=i.useState(null),[c,g]=i.useState({page:1,rowsPerPage:10}),[y,p]=i.useState(!1),[m,A]=i.useState(""),[C,b]=i.useState(""),[f,x]=i.useState({label:"",value:""}),[R,k]=i.useState({label:"",value:""}),[O,D]=i.useState({label:"",value:""}),[_,u]=i.useState(!1),[h,S]=i.useState(!1),{data:E}=H(t?["api/branchapi/academy/classdropdownlist",t]:null,([X,G])=>K(X,G)),{data:F}=H(t&&a?[a,t]:null,([X,G])=>K(X,G)),{data:q}=H(t&&(r||!0)?[r||"api/branchapi/academy/subjecttableList",t]:null,([X,G])=>K(X,G)),T=i.useMemo(()=>Ts(E),[E]),U=i.useMemo(()=>Ts(F),[F]),j=i.useMemo(()=>Ts(q),[q]),P=t&&o?`${o}page=${c.page}&per_page=${c.rowsPerPage}`:null,{isLoading:I,error:N,data:V,mutate:W}=H(P?[P,t]:null,([X,G])=>K(X,G)),B=(X,G)=>{switch(G){case"class_id":x(X||{label:"",value:""}),k({label:"",value:""}),D({label:"",value:""}),l(`/api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${X?.value??""}`),s(`/api/branchapi/academy/sectionoftheClass?class_id=${X?.value??""}`),u(J=>!J),S(J=>!J);break;case"section_id":k(X||{label:"",value:""});break;case"subject_id":D(X||{label:"",value:""});break}},$=async X=>{X.preventDefault();const G="/api/branchapi/homeworks/gethomeworklistByClassSectionBranch",J=new URLSearchParams;f.value&&J.append("class_id",String(f.value)),R.value&&J.append("section_id",String(R.value)),O.value&&J.append("subject_id",String(O.value));const re=J.toString(),de=re?`${G}?${re}&`:`${G}?`;g(Ce=>({...Ce,page:1})),d(de),await W()},M=(X,G)=>{g({page:X,rowsPerPage:parseInt(G,10)})},L=()=>{p(!1),A(""),b("")},Y=(X,G)=>{A(X),b(G||"Document"),p(!0)},se=[{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Subject",dataIndex:"subject",key:"subject"},{title:"Assign By",dataIndex:"staff_name",key:"staff_name"},{title:"Title",dataIndex:"title",key:"title"},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0},{title:"Submission",dataIndex:"total_submission",key:"total_submission"},{title:"View Document",key:"document",render:(X,G)=>e.jsx("a",{style:{color:"#5080f8",cursor:"pointer"},onClick:()=>Y(G.document_url,G.document),children:"View"})}];return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Submission Details"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:$,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",placeholder:"Class",allowSelectAll:!1,value:T.find(X=>String(X.value)===String(f.value))??null,onChange:X=>B(X,"class_id")})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{options:U,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",placeholder:"Section",allowSelectAll:!1,value:U.find(X=>String(X.value)===String(R.value))??null,onChange:X=>k(X||{label:"",value:""})},`sections1${_}`)})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{options:j,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subject",name:"subject_id",placeholder:"Subject",allowSelectAll:!1,value:j.find(X=>String(X.value)===String(O.value))??null,onChange:X=>D(X||{label:"",value:""})},`subjects1${h}`)})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{display:"flex",alignItems:"center",height:"100%",mt:2,children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})})]})})})]})}),o&&e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Students List"})}),e.jsx(v,{p:3,children:e.jsx(Ie,{parentCallback:M,data:{newData:V,columns:se,columnstype:"antd",action:!1,Loading:I,error:N,pageController:c}})})]})})]}),e.jsx(n.Modal,{open:y,onClose:L,footer:null,width:900,children:e.jsxs(v,{p:3,children:[e.jsxs(v,{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2,children:[e.jsx(pe,{level:5,children:C||"View Document"}),e.jsx(ne,{type:"button",value:"Close",color:"primary",onClick:L})]}),m?m.match(/\.pdf(\?|#|$)/i)?e.jsx("iframe",{src:m,title:C||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:m,alt:C||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(pe,{children:"No document found"})]})})]})}const ym=(t,a)=>{const s=String(t??"").replace(/\/+$/,""),r=String(a).replace(/^\/+/,"");return`${s}/${r}`};function gm({token:t,sampleFileUrl:a}){const s=t??localStorage.getItem("authToken")??"",[r,l]=i.useState(null),[o,d]=i.useState(null),[c,g]=i.useState(null),[y,p]=i.useState(null),[m,A]=i.useState(null),[C,b]=i.useState(null),[f,x]=i.useState(null),R="api/branchapi/library/bookCategorydropdown",k="api/branchapi/academy/classdropdownlist",O="api/branchapi/Academy/getClassSubjectdropdown",D="api/branchapi/library/addBook",_="api/branchapi/library/uploadcsv",{data:u}=H(s?[R,s]:null,([P,I])=>K(P,I)),{data:h}=H(s&&k?[k,s]:null,([P,I])=>K(P,I)),{data:S}=H(s&&O?[O,s]:null,([P,I])=>K(P,I)),E=i.useMemo(()=>ym(bt(),_),[_]),F=async P=>{P.preventDefault();const I=new FormData(P.target);I.set("cat_id",m?.value??""),I.set("class_id",C?.value??""),I.set("subject_id",f?.value??"");try{await Ne(D,I,s),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),P.target.reset(),A(null),b(null),x(null)}catch(N){w.error(N?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},q=async P=>{if(P.preventDefault(),!r){w.error("Please select a CSV file.",{duration:1e3});return}const I=new FormData;I.append("file",r),I.append("cat_id",o?.value??""),I.append("class_id",c?.value??""),I.append("subject_id",y?.value??"");try{const N=await Je.post(E,I,{headers:{Authorization:s,"Content-type":"multipart/form-data"}});N?.data?.Status==="Failed"?w.error(String(N?.data?.msg??"Upload failed."),{duration:1e3}):(w.success(String(N?.data?.msg??"Uploaded."),{duration:1e3,icon:"🚀"}),l(null),P.target.reset(),d(null),g(null),p(null))}catch(N){w.error(N?.response?.data?.msg??"Upload failed.",{duration:1e3})}},T=()=>["title,author,publisher,quantity,price,fine,subject_id,barcode,class_id",...["Advanced Chemistry,Rahul Mondal,RM PUBLISHER,10,210,20,1,,1","Advanced Chemistry,Rahul Mondal,RM PUBLISHER,10,210,20,1,123321,1"]].join(`
60
- `),U=()=>{if(a)return a;const P=bt();return P?`${P.replace(/\/+$/,"")}/books.csv`:"/books.csv"},j=()=>{const P=U();fetch(P).then(I=>{if(!I.ok)throw new Error("Sample file not found");const N=I.headers.get("content-type")||"";return!N.includes("csv")&&!N.includes("text/plain")&&!N.includes("application/octet-stream")?I.text().then(V=>{if(V.trim().startsWith("<")||V.includes("<!doctype")||V.includes("<html"))throw new Error("Sample file URL returned HTML. Host the CSV at a public URL and pass it via sampleFileUrl prop.");return new Blob([V],{type:"text/csv"})}):I.blob()}).then(I=>{const N=window.URL.createObjectURL(I),V=document.createElement("a");V.href=N,V.download="books.csv",V.click(),window.URL.revokeObjectURL(N)}).catch(()=>{const I=T(),N=new Blob([I],{type:"text/csv"}),V=window.URL.createObjectURL(N),W=document.createElement("a");W.href=V,W.download="books.csv",W.click(),window.URL.revokeObjectURL(V)})};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Book in Bulk"}),extra:e.jsx(n.Button,{type:"link",icon:e.jsx(ee.DownloadOutlined,{}),onClick:j,children:"Download Sample"}),children:[e.jsx(n.Divider,{children:"Information"}),e.jsx(n.Typography.Paragraph,{style:{marginBottom:16},children:"1. Your CSV data should be in the format below. The first line of your CSV file should be the column headers as in the table example. Also make sure that your file is UTF-8 to avoid unnecessary encoding problems."}),e.jsx("form",{onSubmit:q,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:u,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",allowSelectAll:!1,name:"cat_id",required:!0,value:o,onChange:P=>d(P??null)}),e.jsx(Q,{options:h,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,value:c,onChange:P=>g(P??null)}),e.jsx(Q,{options:S,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subjects",name:"subject_id",allowSelectAll:!1,value:y,onChange:P=>p(P??null)}),e.jsx(z,{type:"file",label:"Upload CSV/Excel",name:"csv",accept:".csv,.xlsx,.xls",onChange:P=>l(P.target.files?.[0]??null),required:!0}),e.jsx(ne,{type:"submit",value:"Save",color:"primary"})]})})]}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Book"}),children:e.jsx("form",{onSubmit:F,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(z,{type:"text",label:"Book Name",name:"title",required:!0}),e.jsx(z,{type:"text",label:"Author",name:"author",required:!0}),e.jsx(z,{type:"text",label:"Publication",name:"publisher"}),e.jsx(z,{type:"number",label:"Qty",name:"quantity",required:!0}),e.jsx(z,{type:"number",label:"Book Price",name:"price",required:!0}),e.jsx(z,{type:"number",label:"Fine Per Day",name:"fine",required:!0}),e.jsx(z,{type:"text",label:"Barcode",name:"barcode"}),e.jsx(Q,{options:u,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",allowSelectAll:!1,name:"cat_id",required:!0,value:m,onChange:P=>A(P??null)}),e.jsx(Q,{options:h,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,value:C,onChange:P=>b(P??null)}),e.jsx(Q,{options:S,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subjects",name:"subject_id",allowSelectAll:!1,value:f,onChange:P=>x(P??null)}),e.jsx(ne,{type:"submit",value:"Save",color:"primary"})]})})})]})}const Rs={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Is=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function xm({token:t}){const a=t??localStorage.getItem("authToken")??"",[s,r]=i.useState([]),[l,o]=i.useState([]),d=i.useRef(),c={selectedRowKeys:s,onChange:(J,re)=>{r(J),o(re)}},g=ea.useReactToPrint({contentRef:d,documentTitle:"Book Barcodes"}),y=()=>{if(!(typeof window>"u")){if(!l.length){w.error("Select at least one book to print.",{duration:1e3});return}if(!d.current){w.error("Nothing to print.",{duration:1e3});return}g?.()}},[p,m]=i.useState(!1),[A,C]=i.useState(null),[b,f]=i.useState(null),[x,R]=i.useState(null),[k,O]=i.useState(null),[D,_]=i.useState({page:1,rowsPerPage:10}),u=(J,re)=>{_({page:J,rowsPerPage:parseInt(re,10)})},h="api/branchapi/library/booktable",S="api/branchapi/library/deletebooks",E="api/branchapi/library/editbook",F=`${h}?page=${D.page}&per_page=${D.rowsPerPage}`,{isLoading:q,error:T,data:U,mutate:j}=H(a?[F,a]:null,([J,re])=>K(J,re)),P="api/branchapi/library/bookCategorydropdown",I="api/branchapi/academy/classdropdownlist",N="api/branchapi/Academy/getClassSubjectdropdown",{data:V}=H(a?[P,a]:null,([J,re])=>K(J,re)),{data:W}=H(a&&I?[I,a]:null,([J,re])=>K(J,re)),{data:B}=H(a&&N?[N,a]:null,([J,re])=>K(J,re)),$=i.useMemo(()=>Is(V),[V]),M=i.useMemo(()=>Is(W),[W]),L=i.useMemo(()=>Is(B),[B]),Y=async J=>{try{await He(S,J,a),await j(),w.success("Success! Deleted item.",{duration:1e3})}catch(re){w.error(re?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},se=J=>{C(J??null);const re=J?.cat_id??J?.fk_cat_id??J?.category_id,de=J?.class_id??J?.fk_class_id,Ce=J?.subject_id??J?.fk_subject_id;f($.find(le=>le?.value===re)??null),R(M.find(le=>le?.value===de)??null),O(L.find(le=>le?.value===Ce)??null),m(!0)},X=async J=>{J.preventDefault();const re=A?.id??A?.book_id??A?._id;if(!re)return;const de=new FormData(J.target);de.set("id",String(re)),de.set("cat_id",b?.value??""),de.set("class_id",x?.value??""),de.set("subject_id",k?.value??"");try{await We(E,de,a),await j(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),m(!1),C(null)}catch(Ce){w.error(Ce?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},G=i.useMemo(()=>[{title:"Name",dataIndex:"book_title",key:"book_title",width:220,ellipsis:!0,fixed:"left"},{title:"Barcode",dataIndex:"barcode",key:"barcode",width:140,responsive:["sm"]},{title:"Publisher",dataIndex:"publish",key:"publish",width:160,responsive:["lg"]},{title:"Author",dataIndex:"author",key:"author",width:160,responsive:["lg"]},{title:"Class",dataIndex:"class_name",key:"class_name",width:140,responsive:["xl"]},{title:"Subject",dataIndex:"subject_name",key:"subject_name",width:160,responsive:["xl"]},{title:"Avl Qty",dataIndex:"available_qty",key:"available_qty",width:90},{title:"Book Price",dataIndex:"perunitcost",key:"perunitcost",width:120,responsive:["xl"]},{title:"Fine Amount",dataIndex:"fine_amount",key:"fine_amount",width:120,responsive:["xl"]},{title:"Category",dataIndex:"cat_name",key:"cat_name",width:160,responsive:["xl"]},{title:"Action",key:"action",width:140,fixed:"right",render:(J,re)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>se(re),style:{padding:2}}),e.jsx(n.Button,{type:"text",size:"small",danger:!0,onClick:()=>Y(re?.id??re?.book_id??re?._id),style:{padding:"2px 6px"},children:"Delete"})]})}],[$,M,Y,L]);return e.jsxs("div",{style:{},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{open:p,title:"Edit Book",placement:"right",width:520,destroyOnClose:!0,onClose:()=>{m(!1),C(null)},children:e.jsx("form",{onSubmit:X,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(z,{label:"Book Name",name:"title",defaultValue:A?.book_title??"",required:!0}),e.jsx(z,{label:"Author",name:"author",defaultValue:A?.author??"",required:!0}),e.jsx(z,{label:"Publication",name:"publish",defaultValue:A?.publish??""}),e.jsx(z,{label:"Qty",name:"quantity",type:"number",defaultValue:A?.quantity??""}),e.jsx(z,{label:"Book Price",name:"perunitcost",type:"number",defaultValue:A?.perunitcost??""}),e.jsx(z,{label:"Fine Amount",name:"fine_amount",type:"number",defaultValue:A?.fine_amount??""}),e.jsx(z,{label:"Barcode",name:"barcode",defaultValue:A?.barcode??""}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:Rs,children:"Category"}),e.jsx(Q,{options:$,value:b,onChange:J=>f(J??null),name:"cat_id"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:Rs,children:"Class"}),e.jsx(Q,{options:M,value:x,onChange:J=>R(J??null),name:"class_id"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:Rs,children:"Subject"}),e.jsx(Q,{options:L,value:k,onChange:J=>O(J??null),name:"subject_id"})]}),e.jsxs("div",{style:{display:"flex",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{m(!1),C(null)},children:"Cancel"})]})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Book List"}),extra:l.length>0?e.jsxs(n.Button,{type:"primary",onClick:y,children:["Print Barcode (",l.length,")"]}):null,children:e.jsx(Ie,{parentCallback:u,data:{newData:U,columns:G,columnstype:"antd",action:!1,Loading:q,error:T,rowSelection:c}})}),e.jsx("div",{style:{position:"fixed",left:-1e4,top:0,width:0,height:0,overflow:"hidden"},children:e.jsx("div",{ref:d,style:{padding:"20px"},children:e.jsx("div",{style:{display:"flex",flexWrap:"wrap",justifyContent:"flex-start"},children:l.map((J,re)=>e.jsxs("div",{style:{margin:"10px",textAlign:"center",border:"1px dashed black",padding:"10px",borderRadius:"5px",width:"fit-content"},children:[e.jsx("div",{style:{fontSize:"12px",fontWeight:"bold",maxWidth:"200px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:J.book_title}),e.jsx(gl,{value:J.barcode?String(J.barcode):String(J.id),format:"CODE128",width:1.5,height:50,fontSize:12,displayValue:!0})]},re))})})})]})}const bm=(t,a)=>{const s=String(t??"").replace(/\/+$/,""),r=String(a).replace(/^\/+/,"");return`${s}/${r}`},Ut=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},vn=t=>te(t).add(1,"month").format("YYYY-MM-DD"),jm=i.forwardRef(({token:t,onReturn:a},s)=>{const r=t??localStorage.getItem("authToken")??"",[l,o]=i.useState("issue"),d=l==="return",[c,g]=i.useState(!1),[y,p]=i.useState(!1),[m,A]=i.useState(null),[C,b]=i.useState([]),[f,x]=i.useState([]),[R,k]=i.useState([]),[O,D]=i.useState(0),[_,u]=i.useState(!1),[h,S]=i.useState(null),[E,F]=i.useState(null),[q,T]=i.useState(null),[U,j]=i.useState(!1),[P,I]=i.useState("Cash"),[N,V]=i.useState(""),[W,B]=i.useState(""),[$,M]=i.useState(0),[L,Y]=i.useState("NO_FINE"),se=i.useRef(null),[X]=n.Form.useForm(),[G]=n.Form.useForm(),J="api/branchapi/library/bookCategorydropdown",re="api/branchapi/academy/classdropdownlist",de="api/branchapi/Academy/getClassSubjectdropdown",{data:Ce}=H(r?[J,r]:null,([ce,_e])=>K(ce,_e)),{data:le}=H(r&&re?[re,r]:null,([ce,_e])=>K(ce,_e)),{data:oe}=H(r&&de?[de,r]:null,([ce,_e])=>K(ce,_e)),ie=i.useMemo(()=>Ut(Ce),[Ce]),Se=i.useMemo(()=>Ut(le),[le]),Ee=i.useMemo(()=>Ut(oe),[oe]),Xe="api/branchapi/library/studentsearchByNameID",be="api/branchapi/library/booksearchBybookname",ve="api/branchapi/library/issuedBookList",Oe="api/branchapi/library/issueLibrarybook",Ye="api/branchapi/library/returnedLibrarybook",{trigger:Be,data:Le}=rt(Xe,(ce,_e)=>Qt(ce,_e,r)),{trigger:Ze,data:at}=rt(be,(ce,_e)=>Qt(ce,_e,r)),{trigger:fe,data:je}=rt(ve,(ce,_e)=>Qt(ce,_e,r)),{trigger:xe}=rt(d?Ye:Oe,(ce,_e)=>ss(ce,_e,r)),ae=i.useMemo(()=>Ut(Le),[Le]),he=i.useMemo(()=>Ut(at),[at]),ye=i.useMemo(()=>Ut(je),[je]),ke=ce=>{const _e=vn(te());b(qe=>qe.some(et=>String(et?.id)===String(ce?.id))?qe:[...qe,{...ce,return_date:ce?.return_date?ce.return_date:_e}])},Pe=async()=>{console.log("Reloading IssueReturn..."),w.success("Success",{duration:1e3}),x([]),k([]),D(0),Y("FINE_PAY_LATER"),await fe({id:m?.student_id})};i.useImperativeHandle(s,()=>({reloadPayLater:Pe}));const ue=ce=>{b(_e=>_e.filter(qe=>String(qe?.id)!==String(ce)))},we=async ce=>{if(r){if(!ce){A(null);return}c||await Be({id:ce})}},Ve=async({search:ce})=>{if(!r||!c)return;const _e=await Be({id:ce}),qe=Ut(_e);qe.length===1&&(A(qe[0]),await fe({id:qe[0]?.student_id}),X.resetFields())},dt=async(ce,_e)=>{A(_e??null),b([]),x([]),k([]),D(0),Y("NO_FINE"),M(0),_e?.student_id&&await fe({id:_e.student_id}),X.resetFields()},Ft=async ce=>{r&&ce&&(y||await Ze({book:ce}))},Pt=async({search_book:ce})=>{if(!r||!y)return;const _e=await Ze({book:ce,catID:h?.value??"",sID:q?.value??"",cID:E?.value??""}),qe=Ut(_e);qe.length&&(ke(qe[0]),G.resetFields())},me=(ce,_e)=>{ke(_e),G.resetFields()},Ae=async()=>{if(!m?.member_id){w.error("Select a student first.",{duration:1e3});return}if(!C.length){w.error("Select at least one book.",{duration:1e3});return}const ce=await xe({member_id:m.member_id,fine:!1,books:C});ce?.Status==="Success"&&(w.success(String(ce?.msg??"Success"),{duration:1e3}),b([]),A(null),x([]),k([]),D(0))},ut=async()=>{if(!m?.member_id){w.error("Select a student first.",{duration:1e3});return}if(!R.length){w.error("Select at least one book to return.",{duration:1e3});return}if(Number(O)>0){Y("FINE_PAID"),j(!0);return}const ce=await xe({member_id:m.member_id,collection_type:"NO_FINE",amount:0,books:JSON.stringify(R)});ce?.Status==="Success"?(w.success(String(ce?.msg??"Success"),{duration:1e3}),x([]),k([]),D(0),await fe({id:m?.student_id})):w.error(String(ce?.msg??"Failed"),{duration:1e3})},vt=async()=>{if(!m?.member_id)return;const ce=Math.max(0,Number(O)-Number($||0)),_e={member_id:m.member_id,collection_type:L,amount:L==="FINE_PAID"?ce:0,payment_type:P,notes:N,attchement:W,discount:$||0,books:JSON.stringify(R)},qe=await xe(_e);j(!1),qe?.Status==="Success"?(w.success(String(qe?.msg??"Success"),{duration:1e3}),x([]),k([]),D(0),M(0),V(""),B(""),Y("NO_FINE"),await fe({id:m?.student_id})):w.error(String(qe?.msg??"Failed"),{duration:1e3})},cn=async()=>{if(!m?.member_id){w.error("Select a student first.",{duration:1e3});return}if(!R.length){w.error("Select at least one book to return.",{duration:1e3});return}const ce={member_id:m.member_id,collection_type:"FINE_PAY_LATER",amount:0,books:JSON.stringify(R)};a(ce)},un=i.useMemo(()=>bm(bt(),"api/branchapi/frontoffice/uploadfrontofficeDocument"),[]),pn=[{title:"Book",dataIndex:"book_title",key:"book_title",width:220,ellipsis:!0,fixed:"left"},{title:"Author",dataIndex:"author",key:"author",width:180,responsive:["lg"]},{title:"Return Date",key:"return_date",width:160,render:(ce,_e)=>e.jsx(Ue,{defaultValue:te(_e?.return_date||te().add(30,"day")),Desplay:"",format:"YYYY-MM-DD",allowClear:!1,onChange:(qe,et)=>{b(ct=>ct.map(gt=>String(gt?.id)===String(_e?.id)?{...gt,return_date:et}:gt))}})},{title:"Action",key:"action",width:120,fixed:"right",render:(ce,_e)=>e.jsx(n.Button,{type:"text",danger:!0,onClick:()=>ue(_e?.id),children:"Remove"})}],mn={selectedRowKeys:f,onChange:(ce,_e)=>{x(ce),k(_e);const qe=(_e??[]).reduce((et,ct)=>et+Number(ct?.totalfine??0),0);D(qe)},onSelect:(ce,_e,qe)=>{if(_e){const et=qe.map(ct=>({...ct,return_date:ct?.return_date?ct.return_date:vn(ct?.issue_date||te())}));k(et)}},onSelectAll:(ce,_e)=>{if(ce){const qe=_e.map(et=>({...et,return_date:et?.return_date?et.return_date:vn(et?.issue_date||te())}));k(qe)}}},hn=[{title:"Book",dataIndex:"book_title",key:"book_title",width:220,ellipsis:!0,fixed:"left"},{title:"Barcode",dataIndex:"barcode",key:"barcode",width:140,responsive:["sm"]},{title:"Issue Date",dataIndex:"issue_date",key:"issue_date",width:140,responsive:["lg"]},{title:"Return Date",key:"return_date",width:160,render:(ce,_e)=>{const et=R.find(gt=>String(gt?.id)===String(_e?.id))?.return_date||_e?.return_date,ct=vn(_e?.issue_date||te());return e.jsx(Ue,{defaultValue:te(et||ct),Desplay:"",format:"YYYY-MM-DD",allowClear:!1,onChange:(gt,ps)=>{k(ms=>ms.map(_a=>String(_a?.id)===String(_e?.id)?{..._a,return_date:ps}:_a))}})}},{title:"Days",key:"days",width:100,render:(ce,_e)=>{const et=R.find(gt=>String(gt?.id)===String(_e?.id))?.return_date||_e?.return_date,ct=_e?.issue_date;if(ct&&et){const gt=te(et).diff(te(ct),"day");return gt>=0?gt:0}return"-"}},{title:"Due Date",dataIndex:"due_date",key:"due_date",width:140,responsive:["lg"]},{title:"Fine",dataIndex:"totalfine",key:"totalfine",width:120,fixed:"right",render:ce=>e.jsxs("span",{children:["₹ ",ce]})}];return e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:U,onCancel:()=>j(!1),footer:null,title:"Payment Options",destroyOnClose:!0,children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsx(n.Radio.Group,{value:P,onChange:ce=>I(ce.target.value),options:[{label:"Cash",value:"Cash"},{label:"UPI",value:"UPI"},{label:"DD",value:"DD"},{label:"Bank",value:"Bank"},{label:"Internet Banking",value:"Internet Banking"},{label:"Cheque",value:"Cheque"}]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",children:"Note"}),e.jsx(n.Input.TextArea,{rows:3,value:N,onChange:ce=>V(ce.target.value)})]}),e.jsxs("div",{style:{display:"grid",gap:8},children:[e.jsx("label",{className:"labelfont",children:"Image Attachment"}),e.jsx(n.Upload,{action:un,headers:{Authorization:r},maxCount:1,onChange:ce=>{if(ce.file.status==="done"){const _e=ce.file.response?.data??ce.file.response?.file??"";B(String(_e??""))}},children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),children:"Upload"})})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",children:"Discount"}),e.jsx(n.Input,{type:"number",value:$,onChange:ce=>M(ce.target.value),placeholder:"0"})]}),e.jsxs(n.Button,{type:"primary",onClick:vt,children:["Collect ₹",Math.max(0,Number(O)-Number($||0))]}),e.jsx(n.Button,{onClick:()=>j(!1),children:"Cancel"})]})}),e.jsxs(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Issue / Return"}),children:[e.jsxs(n.Row,{gutter:[16,16],align:"middle",children:[e.jsx(n.Col,{xs:24,md:10,children:e.jsx(n.Radio.Group,{value:l,onChange:ce=>{const _e=ce.target.value;o(_e),b([]),x([]),k([]),D(0),Y("NO_FINE"),M(0)},options:[{label:"Issue",value:"issue"},{label:"Return",value:"return"},{label:"Renewal",value:"Renewal"}],optionType:"button",buttonStyle:"solid"})}),e.jsx(n.Col,{xs:24,md:14,children:e.jsx(n.Form,{form:X,onFinish:Ve,layout:"vertical",children:e.jsx(n.Form.Item,{name:"search",label:"Search Student",children:e.jsx(n.Space.Compact,{style:{width:"100%"},children:c?e.jsx(n.Input,{autoFocus:!0,addonBefore:e.jsxs(n.Space,{children:[e.jsx(ee.BarcodeOutlined,{}),e.jsx(n.Checkbox,{checked:c,onChange:ce=>g(ce.target.checked)})]}),placeholder:"Scan barcode",allowClear:!0}):e.jsx(n.AutoComplete,{options:ae,onSelect:dt,onSearch:we,style:{width:"100%"},allowClear:!0,children:e.jsx(n.Input,{addonBefore:e.jsxs(n.Space,{children:[e.jsx(ee.BarcodeOutlined,{}),e.jsx(n.Checkbox,{checked:c,onChange:ce=>g(ce.target.checked)})]}),placeholder:"Type student name / id",allowClear:!0})})})})})})]}),m?e.jsxs(e.Fragment,{children:[e.jsx(n.Divider,{}),e.jsxs(n.Row,{gutter:[12,12],children:[e.jsxs(n.Col,{xs:24,md:8,children:[e.jsx(n.Typography.Text,{strong:!0,children:"Name:"})," ",m?.value??""]}),e.jsxs(n.Col,{xs:24,md:8,children:[e.jsx(n.Typography.Text,{strong:!0,children:"Card No:"})," ",m?.library_card_no??""]}),e.jsxs(n.Col,{xs:24,md:8,children:[e.jsx(n.Typography.Text,{strong:!0,children:"Member ID:"})," ",m?.member_id??""]})]})]}):null,e.jsx(n.Divider,{}),d?e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{width:"100%",overflowX:"auto"},children:e.jsx("div",{style:{minWidth:760},children:e.jsx(n.Table,{dataSource:ye,columns:hn,rowSelection:mn,pagination:!1,rowKey:ce=>ce?.id??ce?.issue_id??ce?.barcode??Math.random(),scroll:{x:"max-content"},size:"small"})})}),e.jsx(n.Divider,{}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",gap:12,flexWrap:"wrap"},children:[e.jsxs(n.Typography.Text,{strong:!0,children:["Total Fine: ₹",O]}),e.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap"},children:[e.jsx(n.Button,{type:"primary",onClick:ut,disabled:!R.length,children:O>0?`Pay Now ₹ ${Math.max(0,Number(O)-Number($||0))}`:"Return Selected"}),O>0?e.jsx(n.Button,{onClick:cn,disabled:!R.length,children:"Pay Later"}):null]})]})]}):e.jsxs(e.Fragment,{children:[e.jsxs(n.Row,{gutter:[16,16],align:"middle",children:[e.jsx(n.Col,{xs:24,md:18,children:e.jsx(n.Form,{form:G,onFinish:Pt,layout:"vertical",children:e.jsx(n.Form.Item,{name:"search_book",label:"Search Book",children:e.jsx(n.Space.Compact,{style:{width:"100%"},children:y?e.jsx(n.Input,{autoFocus:!0,disabled:!m,addonBefore:e.jsxs(n.Space,{children:[e.jsx(ee.BarcodeOutlined,{}),e.jsx(n.Checkbox,{checked:y,onChange:ce=>p(ce.target.checked)})]}),placeholder:"Scan barcode",allowClear:!0}):e.jsx(n.AutoComplete,{disabled:!m,options:he,onSelect:me,onSearch:Ft,style:{width:"100%"},allowClear:!0,children:e.jsx(n.Input,{addonBefore:e.jsxs(n.Space,{children:[e.jsx(ee.BarcodeOutlined,{}),e.jsx(n.Checkbox,{checked:y,onChange:ce=>p(ce.target.checked)})]}),placeholder:"Type book name",allowClear:!0})})})})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(n.Button,{style:{width:"100%"},icon:e.jsx(ee.FilterOutlined,{}),onClick:()=>u(!0),children:"Filter"})})]}),e.jsx(n.Drawer,{open:_,onClose:()=>u(!1),title:"Filter",placement:"right",width:380,destroyOnClose:!0,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(Q,{label:"Category",options:ie,value:h,onChange:ce=>S(ce??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"cat_id"}),e.jsx(Q,{label:"Class",options:Se,value:E,onChange:ce=>F(ce??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"class_id"}),e.jsx(Q,{label:"Subjects",options:Ee,value:q,onChange:ce=>T(ce??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"subject_id"}),e.jsx(n.Button,{type:"primary",onClick:()=>u(!1),children:"Apply"})]})}),e.jsx(n.Divider,{}),e.jsx("div",{style:{width:"100%",overflowX:"auto"},children:e.jsx("div",{style:{minWidth:720},children:e.jsx(n.Table,{dataSource:C,columns:pn,pagination:!1,rowKey:ce=>ce?.id??ce?.book_id??ce?.barcode??Math.random(),scroll:{x:"max-content"},size:"small"})})}),e.jsx(n.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Issue",onClick:Ae})})]})]}),e.jsx("div",{ref:se,style:{position:"fixed",left:-1e4,top:0,width:0,height:0,overflow:"hidden"}})]})}),hi=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function Sm({token:t}){const a=t??localStorage.getItem("authToken")??"",[s,r]=i.useState({page:1,rowsPerPage:10}),[l,o]=i.useState(null),[d,c]=i.useState(null),[g,y]=i.useState(!1),[p,m]=i.useState(!1),[A,C]=i.useState(null),[b,f]=i.useState(!1),x="api/branchapi/academy/classdropdownlist",R="api/branchapi/academy/sectionoftheClass",k="api/branchapi/library/studenttableForLibrary",O="api/branchapi/library/addmembershipforStudent",D="api/branchapi/library/removemembershipforStudent",_=i.useMemo(()=>{if(!l?.value)return null;const B=R.includes("?")?"&":"?";return`${R}${B}class_id=${encodeURIComponent(String(l.value))}`},[R,l?.value]),u=i.useMemo(()=>{if(!l?.value||!d?.value)return null;const B=k.includes("?")?"&":"?";return`${k}${B}cID=${encodeURIComponent(String(l.value))}&sID=${encodeURIComponent(String(d.value))}&page=${s.page}&per_page=${s.rowsPerPage}`},[s.page,s.rowsPerPage,l?.value,d?.value,k]),{data:h}=H(a&&x?[x,a]:null,([B,$])=>K(B,$)),{data:S}=H(a&&_?[_,a]:null,([B,$])=>K(B,$)),{isLoading:E,error:F,data:q,mutate:T}=H(a&&u?[u,a]:null,([B,$])=>K(B,$)),U=i.useMemo(()=>hi(h),[h]),j=i.useMemo(()=>hi(S),[S]),P=(B,$)=>{r({page:B,rowsPerPage:parseInt($,10)})},I=B=>{const $=B?.id??B?.student_id??B?.member_id;C($??null),m(!0),f(M=>!M)},N=async B=>{if(B.preventDefault(),!A)return;const $=new FormData(B.target);$.set("id",String(A));try{await Ne(O,$,a),w.success("Success! Added member.",{duration:1e3,icon:"🎉"}),m(!1),C(null),await T()}catch(M){w.error(M?.response?.data?.msg??"Failed to add the member.",{duration:1e3})}},V=async B=>{try{await He(D,B,a),w.success("Success! Removed member.",{duration:1e3}),await T()}catch($){w.error($?.response?.data?.msg??"Failed to remove member.",{duration:1e3})}},W=i.useMemo(()=>[{title:"Library Card No",dataIndex:"library_card_no",key:"library_card_no",width:180,ellipsis:!0,fixed:"left"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:140,responsive:["sm"]},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:90,responsive:["lg"]},{title:"First Name",dataIndex:"firstname",key:"firstname",width:140,responsive:["sm"]},{title:"Last Name",dataIndex:"lastname",key:"lastname",width:140,responsive:["lg"]},{title:"Class",dataIndex:"class",key:"class",width:120,responsive:["xl"]},{title:"Section",dataIndex:"section",key:"section",width:120,responsive:["xl"]},{title:"Mobile",dataIndex:"mobileno",key:"mobileno",width:140,responsive:["lg"]},{title:"Action",key:"action",width:80,fixed:"right",render:(B,$)=>(console.log("data______________",$),e.jsx("div",{style:{display:"flex",gap:8,alignItems:"center"},children:$?.library_card_no==null?e.jsx(n.Button,{type:"primary",size:"small",icon:e.jsx(ee.UserAddOutlined,{}),onClick:()=>I($)}):e.jsx(n.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(ee.DeleteOutlined,{}),onClick:()=>V($?.id??$?.student_id??$?.member_id)})}))}],[V]);return e.jsxs("div",{style:{},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:p,title:"Add Member",onCancel:()=>{m(!1),C(null)},footer:null,destroyOnClose:!0,children:e.jsx("form",{onSubmit:N,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(z,{type:"text",label:"Library Card Number",name:"library_num",required:!0}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Add",color:"primary"})})]})},`add-${b}`)}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Student"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(Q,{options:U,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",value:l,onChange:B=>{o(B??null),c(null),y($=>!$)},name:"class_id",required:!0,allowSelectAll:!1}),e.jsx(Q,{options:j,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",value:d,onChange:B=>c(B??null),allowSelectAll:!1,name:"section_id",required:!0},`section-${g}`),e.jsx(ne,{type:"submit",value:"Search",color:"primary",onClick:()=>{if(!l?.value||!d?.value){w.error("Select class and section.",{duration:1e3});return}r(B=>({...B,page:1}))}})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Students"}),children:e.jsx(Ie,{parentCallback:P,data:{newData:q,columns:W,columnstype:"antd",action:!1,Loading:E,error:F}})})]})}function vm({token:t}){const a=t??localStorage.getItem("authToken")??"",[s,r]=i.useState({page:1,rowsPerPage:10}),[l]=n.Form.useForm(),[o]=n.Form.useForm(),[d,c]=i.useState(!1),[g,y]=i.useState(null),p="api/branchapi/library/BookCategorytable",m="api/branchapi/library/addBookCategory",A="api/branchapi/library/editBookCategory",C="api/branchapi/library/deleteBookCategory",b=i.useMemo(()=>{const F=p.includes("?")?"&":"?";return`${p}${F}page=${s.page}&per_page=${s.rowsPerPage}`},[p,s.page,s.rowsPerPage]),{isLoading:f,error:x,data:R,mutate:k}=H(a&&b?[b,a]:null,([F,q])=>K(F,q)),O=(F,q)=>{r({page:F,rowsPerPage:parseInt(q,10)})},D=async F=>{const q=new FormData;q.set("title",F?.title??"");try{await Ne(m,q,a),w.success("Success! Added new category.",{duration:1e3,icon:"🎉"}),l.resetFields(),await k()}catch(T){w.error(T?.response?.data?.msg??T?.message??"Failed to add category.",{duration:1e3})}},_=F=>{y(F??null),o.setFieldsValue({title:F?.name??""}),c(!0)},u=()=>{c(!1),y(null),o.resetFields()},h=async F=>{const q=g?.id??g?.category_id??g?.cat_id;if(!q){w.error("Missing category id.",{duration:1e3});return}const T=new FormData;T.set("id",String(q)),T.set("title",F?.title??"");try{await We(A,T,a),w.success("Success! Updated category.",{duration:1e3,icon:"🚀"}),u(),await k()}catch(U){w.error(U?.response?.data?.msg??U?.message??"Failed to update category.",{duration:1e3})}},S=async F=>{const q=F?.id??F?.category_id??F?.cat_id;if(!q){w.error("Missing category id.",{duration:1e3});return}try{await He(C,q,a),w.success("Success! Deleted category.",{duration:1e3}),await k()}catch(T){w.error(T?.response?.data?.msg??T?.message??"Failed to delete category.",{duration:1e3})}},E=i.useMemo(()=>[{title:"Category Name",dataIndex:"name",key:"name",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(F,q)=>e.jsxs(n.Space,{size:6,children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>_(q)}),e.jsx(n.Popconfirm,{title:"Remove category?",okText:"Yes",cancelText:"No",onConfirm:()=>S(q),children:e.jsx(n.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[S]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:d,title:"Edit Category",onCancel:u,footer:null,destroyOnClose:!0,children:e.jsxs(n.Form,{form:o,layout:"vertical",onFinish:h,children:[e.jsx(n.Form.Item,{label:"Name",name:"title",rules:[{required:!0,message:"Enter category name"}],children:e.jsx(n.Input,{placeholder:"Enter category name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(n.Button,{onClick:u,children:"Cancel"}),e.jsx(ne,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,lg:8,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Category"}),children:e.jsxs(n.Form,{form:l,layout:"vertical",onFinish:D,children:[e.jsx(n.Form.Item,{label:"Name",name:"title",rules:[{required:!0,message:"Enter category name"}],children:e.jsx(n.Input,{placeholder:"Enter category name"})}),e.jsx(ne,{type:"submit",value:"Add",color:"primary"})]})})}),e.jsx(n.Col,{xs:24,lg:16,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Category List"}),children:e.jsx(Ie,{parentCallback:O,data:{newData:R,columns:E,columnstype:"antd",action:!1,Loading:f,error:x}})})})]})]})}const ks=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function wm({token:t}){const[a,s]=i.useState([te().format("YYYY-MM-DD"),te().format("YYYY-MM-DD")]),[r,l]=i.useState(null),[o,d]=i.useState(null),[c,g]=i.useState(null),[y,p]=i.useState(!1),[m,A]=i.useState(!1),C="api/branchapi/academy/classdropdownlist",b="api/branchapi/academy/sectionoftheClass",f="api/branchapi/library/memberDropdown",x="api/report/libraryReport/libraryReport",R=i.useMemo(()=>{if(!r?.value)return null;const I=b.includes("?")?"&":"?";return`${b}${I}class_id=${encodeURIComponent(String(r.value))}`},[b,r?.value]),k=i.useMemo(()=>{if(!r?.value)return null;const I=f.includes("?")?"&":"?",N=`${f}${I}class=${encodeURIComponent(String(r.value))}`;return o?.value?`${N}&section=${encodeURIComponent(String(o.value))}`:N},[f,r?.value,o?.value]),{isLoading:O,error:D,data:_,mutate:u}=H(t&&C?[C,t]:null,([I,N])=>K(I,N)),{data:h}=H(t&&R?[R,t]:null,([I,N])=>K(I,N)),{data:S}=H(t&&k?[k,t]:null,([I,N])=>K(I,N)),E=i.useMemo(()=>ks(_),[_]),F=i.useMemo(()=>ks(h),[h]),q=i.useMemo(()=>ks(S),[S]),{trigger:T,data:U}=rt(x,(I,N)=>nr(I,N,t));i.useEffect(()=>{(async()=>{A(!0);try{await T({duration:a})}finally{A(!1)}})()},[]);const j=async()=>{A(!0);try{await T({duration:a,class:r?.value??"",section:o?.value??"",student_id:c?.value??""})}finally{A(!1)}},P=[{title:"Name",dataIndex:"full_name",render:(I,N)=>e.jsx(n.Typography.Text,{style:{fontSize:12},children:N?.full_name??""})},{title:"Roll No",dataIndex:"roll_no",render:(I,N)=>e.jsx(n.Typography.Text,{style:{fontSize:12},children:N?.roll_no??""})},{title:"Class",dataIndex:"Class",key:"Class",render:(I,N)=>e.jsxs(n.Typography.Text,{style:{fontSize:12},children:[N?.class??"","(",N?.section??"",")"]})},{title:"Book",dataIndex:"book_title",render:(I,N)=>e.jsx(n.Typography.Text,{style:{fontSize:12},children:N?.book_title??""})},{title:"Issue Date",key:"date",render:(I,N,V)=>e.jsx(n.Typography.Text,{style:{fontSize:12},children:N?.issue_date??""})},{title:"Due Return Date",key:"date",render:(I,N,V)=>e.jsx(n.Tag,{color:"orange",children:N?.return_date??""})},{title:"Return Date",key:"date",render:(I,N,V)=>N?.retured_by_user?e.jsx(n.Tag,{color:"green",children:N?.retured_by_user??""}):null},{title:"Return Status",key:"date",render:(I,N,V)=>String(N?.is_returned??"")==="1"?e.jsx(n.Tag,{color:"green",children:"Return"}):e.jsx(n.Tag,{color:"red",children:"Not Return"})},{title:"Fine",key:"amount",dataIndex:"late_fine",render:(I,N,V)=>{const W=N?.late_fine?Number(N.late_fine):0;return W?e.jsx(n.Typography.Text,{style:{fontSize:12,color:"#cf1322"},children:W}):null}}];return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Library Monthly Report"}),style:{borderRadius:16},children:[e.jsxs(n.Row,{gutter:[16,16],align:"bottom",children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",children:"Duration"}),e.jsx(n.DatePicker.RangePicker,{style:{width:"100%"},value:[te(a[0],"YYYY-MM-DD"),te(a[1],"YYYY-MM-DD")],format:"YYYY-MM-DD",onChange:(I,N)=>{Array.isArray(N)&&N.length===2&&s([N[0],N[1]])}})]})}),e.jsx(n.Col,{xs:24,md:5,children:e.jsx(Q,{options:E,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Classes",name:"class_id",value:r,onChange:I=>{l(I??null),d(null),g(null),p(N=>!N)},allowSelectAll:!1})}),e.jsx(n.Col,{xs:24,md:5,children:e.jsx(Q,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",value:o,onChange:I=>{d(I??null),g(null)},allowSelectAll:!1},`section1${y}`)}),e.jsx(n.Col,{xs:24,md:5,children:e.jsx(Q,{options:q,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Student",name:"student",value:c,onChange:I=>g(I??null),allowSelectAll:!1})}),e.jsx(n.Col,{xs:24,md:1,children:e.jsx(n.Button,{type:"primary",icon:e.jsx(ee.SearchOutlined,{}),onClick:j,style:{width:"100%"},children:"Search"})})]}),e.jsx("div",{style:{marginTop:16},children:e.jsx(n.Table,{columns:P,pagination:!1,dataSource:Array.isArray(U?.data)?U.data:[],size:"small",rowKey:(I,N)=>I?.id??I?.issue_id??I?.fees_receipt_id??N,loading:m,scroll:{x:"max-content"},summary:I=>{const N=I.reduce((W,B)=>W+Number(B?.late_fine??0),0),V=I.reduce((W,B)=>W+Number(B?.is_returned??0),0);return e.jsxs(n.Table.Summary.Row,{children:[e.jsx(n.Table.Summary.Cell,{colSpan:4,children:e.jsxs("span",{style:{fontWeight:700},children:["Total Book: ",I.length]})}),e.jsx(n.Table.Summary.Cell,{colSpan:2,children:e.jsxs("span",{style:{fontWeight:700},children:["Not Return: ",Number(I.length-V)]})}),e.jsx(n.Table.Summary.Cell,{colSpan:2,children:e.jsxs("span",{style:{fontWeight:700},children:["Return: ",V]})}),e.jsx(n.Table.Summary.Cell,{colSpan:1,children:e.jsxs("span",{style:{fontWeight:700},children:["Total Fine:",N.toLocaleString("en-IN")]})})]})}})})]})]})}const fi=[{label:"Today",value:"Today"},{label:"Yesterday",value:"Yesterday"},{label:"This Week",value:"This Week"},{label:"This Month",value:"This Month"},{label:"Last Month",value:"Last Month"},{label:"This Year",value:"This Year"},{label:"Custom",value:"Custom"}],yi=[{key:"renewalHistory",label:"Renewal History"},{key:"renewalFineReport",label:"Renewal + Fine"},{key:"currentlyRenewedBooks",label:"Currently Renewed"},{key:"upcomingRenewalDue",label:"Upcoming Due"},{key:"overdueRenewalReport",label:"Overdue"},{key:"renewalLimitReport",label:"Renewal Limit"},{key:"renewalStatusReport",label:"Renewal Status"},{key:"studentWiseReport",label:"Student-wise"},{key:"bookWiseReport",label:"Book-wise"},{key:"classWiseReport",label:"Class-wise"},{key:"staffWiseReport",label:"Staff-wise"},{key:"renewalStatisticsByDate",label:"Statistics by Date"}];function _m({token:t}){const a=t??localStorage.getItem("authToken")??"",[s,r]=i.useState("renewalHistory"),[l,o]=i.useState("This Month"),[d,c]=i.useState(""),[g,y]=i.useState(""),[p,m]=i.useState(7),[A,C]=i.useState(1),[b,f]=i.useState(20),[x,R]=i.useState(""),[k,O]=i.useState("DESC"),D=i.useRef(null),_=N=>{const V=new URLSearchParams;return["renewalHistory","renewalFineReport","studentWiseReport","bookWiseReport","classWiseReport","staffWiseReport","renewalStatisticsByDate"].includes(s)&&(V.set("date_range",l),l==="Custom"&&d&&g&&(V.set("from_date",d),V.set("to_date",g))),["renewalHistory","renewalFineReport","currentlyRenewedBooks","upcomingRenewalDue","overdueRenewalReport","renewalLimitReport","renewalStatusReport","studentWiseReport","bookWiseReport","classWiseReport","staffWiseReport"].includes(s)&&(V.set("page",String(A)),V.set("per_page",String(b))),s==="upcomingRenewalDue"&&V.set("days_ahead",String(p)),x&&V.set("sort_by",x),k&&V.set("sort_dir",k),`${N}?${V.toString()}`},u=i.useMemo(()=>{switch(s){case"renewalHistory":return _(_c);case"renewalFineReport":return _(Cc);case"currentlyRenewedBooks":return _(Ac);case"upcomingRenewalDue":return _(Dc);case"overdueRenewalReport":return _(Tc);case"renewalLimitReport":return _(Rc);case"renewalStatusReport":return _(Ic);case"studentWiseReport":return _(kc);case"bookWiseReport":return _(Pc);case"classWiseReport":return _(Oc);case"staffWiseReport":return _(Mc);case"renewalStatisticsByDate":return _(Ec);default:return null}},[s,l,d,g,p,A,b]),{data:h,isLoading:S}=H(a?[u,a]:null,([N,V])=>K(N,V)),E=h?.data||{},F=E?.rows||[],q=E?.pagination||{},T=N=>{r(N),C(1),f(20)},U=()=>{C(1)},j=()=>{switch(s){case"renewalHistory":case"renewalFineReport":return[{title:"Renewal ID",dataIndex:"renewal_id",key:"renewal_id"},{title:"Student",dataIndex:"student_name",key:"student_name"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Book",dataIndex:"book_title",key:"book_title"},{title:"Author",dataIndex:"author",key:"author"},{title:"Barcode",dataIndex:"barcode",key:"barcode"},{title:"Renewal No",dataIndex:"renewal_no",key:"renewal_no"},{title:"Old Due Date",dataIndex:"old_due_date",key:"old_due_date"},{title:"New Due Date",dataIndex:"new_due_date",key:"new_due_date"},{title:"Renewal Date",dataIndex:"renewal_date",key:"renewal_date"},{title:"Status",dataIndex:"status",key:"status",render:N=>e.jsx(n.Tag,{color:N==="renewed"?"green":"red",children:N})},{title:"Fine Amount",dataIndex:"fine_amount",key:"fine_amount",render:N=>N??"-"},{title:"Paid Amount",dataIndex:"paid_amount",key:"paid_amount",render:N=>N??"-"},{title:"Due Amount",dataIndex:"due_amount",key:"due_amount",render:N=>N??"-"},{title:"Fine Status",dataIndex:"fine_payment_status",key:"fine_payment_status",render:N=>N?e.jsx(n.Tag,{color:N==="paid"?"green":N==="partial"?"orange":"red",children:N}):"-"}];case"currentlyRenewedBooks":case"upcomingRenewalDue":case"overdueRenewalReport":case"renewalLimitReport":case"renewalStatusReport":return[{title:"Student",dataIndex:"student_name",key:"student_name"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Book",dataIndex:"book_title",key:"book_title"},{title:"Author",dataIndex:"author",key:"author"},{title:"Barcode",dataIndex:"barcode",key:"barcode"},{title:"Due Date",dataIndex:"return_date",key:"return_date"},{title:"Renewal Count",dataIndex:"renewal_count",key:"renewal_count"},{title:"Max Renewal",dataIndex:"maximum_renewal",key:"maximum_renewal"},{title:"Days Remaining",dataIndex:"days_remaining",key:"days_remaining",render:N=>N??"-"},{title:"Overdue Days",dataIndex:"overdue_days",key:"overdue_days",render:N=>N??"-"},{title:"Fine",dataIndex:"fine_amount",key:"fine_amount",render:N=>N??"-"},{title:"Due",dataIndex:"due_amount",key:"due_amount",render:N=>N??"-"},{title:"Can Renew",dataIndex:"can_renew",key:"can_renew",render:N=>e.jsx(n.Tag,{color:N?"green":"red",children:N?"Yes":"No"})},{title:"Reasons",dataIndex:"reasons",key:"reasons",render:N=>Array.isArray(N)?N.join("; "):"-"}];case"studentWiseReport":return[{title:"Student ID",dataIndex:"student_id",key:"student_id"},{title:"Student Name",dataIndex:"student_name",key:"student_name"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Books",dataIndex:"unique_books_renewed",key:"unique_books_renewed"},{title:"First Renewal",dataIndex:"first_renewal_date",key:"first_renewal_date"},{title:"Last Renewal",dataIndex:"last_renewal_date",key:"last_renewal_date"}];case"bookWiseReport":return[{title:"Book ID",dataIndex:"book_id",key:"book_id"},{title:"Title",dataIndex:"book_title",key:"book_title"},{title:"Author",dataIndex:"author",key:"author"},{title:"Barcode",dataIndex:"barcode",key:"barcode"},{title:"Category",dataIndex:"category",key:"category"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"}];case"classWiseReport":return[{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"}];case"staffWiseReport":return[{title:"Staff",dataIndex:"renewed_by",key:"renewed_by"},{title:"Staff Name",dataIndex:"staff_name",key:"staff_name"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"},{title:"Unique Books",dataIndex:"unique_books",key:"unique_books"}];case"renewalStatisticsByDate":return[{title:"Period",dataIndex:"period",key:"period"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"},{title:"Unique Books",dataIndex:"unique_books",key:"unique_books"}];default:return[]}},P=["renewalHistory","renewalFineReport","studentWiseReport","bookWiseReport","classWiseReport","staffWiseReport","renewalStatisticsByDate"].includes(s),I=i.useMemo(()=>j(),[s]);return e.jsx(v,{pt:5,pb:1,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,padding:"4px 8px",color:"#fff",display:"inline-block"}}),e.jsxs(v,{p:3,children:[e.jsxs(n.Row,{gutter:[16,16],mb:3,children:[P&&e.jsxs(e.Fragment,{children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(Q,{options:fi,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Date Range",allowSelectAll:!1,value:fi.find(N=>N.value===l)||null,onChange:N=>o(N?.value||"This Month")})}),l==="Custom"&&e.jsxs(e.Fragment,{children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(Ue,{Desplay:"From Date",format:"YYYY-MM-DD",onChange:N=>c(N?N.format("YYYY-MM-DD"):"")})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(Ue,{Desplay:"To Date",format:"YYYY-MM-DD",onChange:N=>y(N?N.format("YYYY-MM-DD"):"")})})]})]}),s==="upcomingRenewalDue"&&e.jsx(n.Col,{xs:24,md:6,children:e.jsx(Q,{options:[{label:"7 Days",value:7},{label:"14 Days",value:14},{label:"30 Days",value:30}],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Days Ahead",allowSelectAll:!1,value:{label:p+" Days",value:p},onChange:N=>m(N?.value||7)})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{display:"flex",alignItems:"center",height:"100%",mt:2,children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:U})})})]}),e.jsx(n.Tabs,{activeKey:s,onChange:T,items:yi})]})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:yi.find(N=>N.key===s)?.label||"Report"})}),e.jsxs(v,{p:3,children:[e.jsx(Ct,{data:{tableRef:D}}),S?e.jsx(v,{py:8,textAlign:"center",children:e.jsx(n.Typography.Text,{type:"secondary",children:"Loading report data..."})}):e.jsx(n.Table,{size:"small",dataSource:F,columns:I,loading:S,pagination:!1,bordered:!0,rowKey:N=>N.renewal_id||N.id||JSON.stringify(N),ref:D}),F.length>0&&e.jsx(n.Pagination,{current:A,pageSize:b,total:q.total_rows||F.length,onChange:(N,V)=>{C(N),f(V)},showSizeChanger:!0,showQuickJumper:!0,pageSizeOptions:[10,20,50,100],style:{marginTop:16,textAlign:"right"}})]})]})})]})})}const rs=t=>t??localStorage.getItem("authToken")??"",Cm=(t,a)=>{const s=String(t??""),r=String(a);return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},Qe={upload:"api/branchapi/frontoffice/uploadfrontofficeDocument",academy:{classes:"api/branchapi/academy/classdropdownlist",sections:"api/branchapi/academy/sectionoftheClass"},student:{dropdown:"api/branchapi/student/studentDropdown"},vendor:{list:"api/accounts/vendor/vendorTable",add:"api/accounts/vendor/addvendor",edit:"api/accounts/vendor/editVendor",remove:"api/accounts/vendor/removecategory",dropdown:"api/accounts/vendor/vendorlist"},category:{list:"api/accounts/category/fetchcategorytable",add:"api/accounts/category/addcategory",edit:"api/accounts/category/editcategory",remove:"api/accounts/category/removecategory",dropdown:"api/accounts/category/categoryDropdown"},subCategory:{list:"api/accounts/category/fetchsubcategorytable",add:"api/accounts/category/addsubcategory",edit:"api/accounts/category/editsubcategory",remove:"api/accounts/category/removesubcategory",dropdown:"api/accounts/category/subcategoryDropdown"},unit:{list:"api/accounts/category/fetchunit",add:"api/accounts/category/addunit",edit:"api/accounts/category/editunit",remove:"api/accounts/category/removeunit",dropdown:"api/accounts/category/unitDropdown"},product:{list:"api/accounts/product/fetchproducttable",add:"api/accounts/product/addproduct",edit:"api/accounts/product/editproduct",remove:"api/accounts/product/removeproduct",dropdown:"api/accounts/product/productdropdown",search:"api/accounts/product/searchproductbyNameandBarcode",addStock:"api/accounts/product/addStock",sellProduct:"api/accounts/product/sellproduct",sellReports:"api/accounts/product/getstoreSellReports"},report:{stock:"api/report/StoreReport/stock_report"}},Am=()=>Cm(bt(),Qe.upload),Dm=async({baseUrl:t,page:a=1,perPage:s=10},r)=>{const l=t.includes("?")?"&":"?",o=`${t}${l}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(s))}`;return K(o,rs(r))},nn=async(t,a,s)=>Ne(t,a,rs(s)),va=async(t,a,s)=>We(t,a,rs(s)),sn=async(t,a,s)=>He(t,a,rs(s)),Tm=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",xa=({token:t,value:a,onChange:s})=>{const r=i.useMemo(()=>{if(t)return{Authorization:t}},[t]);return e.jsx(n.Upload,{maxCount:1,action:Am(),headers:r,onChange:l=>{if(l?.file?.status==="done"){const o=Tm(l?.file?.response);o&&s?.(o)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:"Upload"})})},$n=Qe.vendor,rn=({baseUrl:t,page:a=1,perPage:s=10,token:r})=>H(r&&t?[t,a,s,r]:null,([o,d,c,g])=>Dm({baseUrl:o,page:d,perPage:c},g)),Rm=({token:t,page:a=1,perPage:s=10})=>rn({baseUrl:$n.list,page:a,perPage:s,token:t}),Im={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},gi=[{name:"name",label:"Name*",required:!0,type:"text"},{name:"email",label:"Email*",required:!0,type:"text"},{name:"address",label:"Address*",required:!0,type:"text"},{name:"phone",label:"Phone*",required:!0,type:"number"},{name:"business_name",label:"Brand Name*",required:!0,type:"text"},{name:"acc_number",label:"Account Number",required:!1,type:"text"},{name:"ifsc_code",label:"IFSC Code",required:!1,type:"text"},{name:"acc_holder_name",label:"Account Holder Name",required:!1,type:"text"},{name:"gst_number",label:"GST Number",required:!1,type:"text"},{name:"cin_num",label:"CIN Number",required:!1,type:"text"},{name:"upi_id",label:"UPI ID",required:!1,type:"text"}];function km({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c,g]=i.useState(""),{isLoading:y,error:p,data:m,mutate:A}=Rm({token:t,page:a.page,perPage:a.rowsPerPage}),C=async D=>{try{await A(nn($n.add,D,t),Ge(D)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(_){w.error(_?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},b=D=>{D.preventDefault();const _=new FormData(D.target);c&&_.set("image",c),C(_),D.target.reset(),g("")},f=(D,_)=>{s({page:D,rowsPerPage:parseInt(_,10)})},x=async D=>{try{await A(sn($n.remove,D,t),ze(D)),w.success("Success! Deleted item.",{duration:1e3})}catch(_){w.error(_?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},R=D=>{d(D),l(!0),g("")},k=async D=>{D.preventDefault();const _=new FormData(D.target);_.set("id",String(o?.id??"")),c&&_.set("image",c);try{await va($n.edit,_,t),await A(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),d(null),g("")}catch(u){w.error(u?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},O=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0},{title:"Email",dataIndex:"email",key:"email",ellipsis:!0,responsive:["md"]},{title:"Address",dataIndex:"address",key:"address",ellipsis:!0,responsive:["lg"]},{title:"Phone",dataIndex:"phone",key:"phone",ellipsis:!0,responsive:["md"]},{title:"Branch Name",dataIndex:"business_name",key:"business_name",ellipsis:!0,responsive:["lg"]},{title:"Account Holder",dataIndex:"acc_holder_name",key:"acc_holder_name",ellipsis:!0,responsive:["xl"]},{title:"Account Number",dataIndex:"acc_number",key:"acc_number",ellipsis:!0,responsive:["xl"]},{title:"UPI ID",dataIndex:"upi_id",key:"upi_id",ellipsis:!0,responsive:["xl"]},{title:"Action",key:"action",width:100,fixed:"right",render:(D,_)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>R(_),style:{padding:2}}),e.jsx(yt,{id:_?.id,funcName:x})]})}],[x]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{open:r,title:o?.name?`Edit ${o.name}`:"Edit Vendor",placement:"right",width:520,onClose:()=>{l(!1),d(null),g("")},children:e.jsx("form",{onSubmit:k,children:e.jsxs("div",{style:{display:"grid",gap:14},children:[gi.map(D=>e.jsx(z,{type:D.type,name:D.name,label:D.label,defaultValue:o?.[D.name]??"",required:D.required?"required":void 0},D.name)),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(xa,{token:t,value:c,onChange:g})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null),g("")},style:Im,children:"Cancel"})]})]})})}),e.jsxs(v,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Add Vendor"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:b,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:16,alignItems:"end"},children:[gi.map(D=>e.jsx(z,{type:D.type,name:D.name,label:D.label,required:D.required?"required":void 0},D.name)),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(xa,{token:t,value:c,onChange:g})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Add Vendor",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Vendors List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:f,data:{newData:m,columns:O,columnstype:"antd",action:!1,Loading:y,error:p}})})]})]})]})}const Pm=({token:t})=>e.jsx(km,{token:t}),Fn=Qe.product,xi=Qe.vendor.dropdown,bi=Qe.category.dropdown,Om=Qe.subCategory.dropdown,ji=Qe.unit.dropdown,ro=({token:t,page:a=1,perPage:s=10})=>rn({baseUrl:Fn.list,page:a,perPage:s,token:t}),Mm=({token:t})=>H(t&&xi?[xi,t]:null,([s,r])=>K(s,r)),Em=({token:t})=>H(t&&bi?[bi,t]:null,([s,r])=>K(s,r)),$m=({token:t})=>H(t&&ji?[ji,t]:null,([s,r])=>K(s,r)),Fm=({token:t,categoryId:a})=>{const s=t&&a?`${Om}?category_id=${encodeURIComponent(String(a))}`:null;return H(s?[s,t]:null,([l,o])=>K(l,o))},wn=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},Um={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Nm({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c,g]=i.useState(""),[y,p]=i.useState(""),[m,A]=i.useState(""),[C,b]=i.useState(""),[f,x]=i.useState(""),{isLoading:R,error:k,data:O,mutate:D}=ro({token:t,page:a.page,perPage:a.rowsPerPage}),{data:_}=Mm({token:t}),{data:u}=Em({token:t}),{data:h}=$m({token:t}),{data:S}=Fm({token:t,categoryId:y}),E=i.useMemo(()=>wn(_),[_]),F=i.useMemo(()=>wn(u),[u]),q=i.useMemo(()=>wn(h),[h]),T=i.useMemo(()=>wn(S),[S]),U=async B=>{try{await D(nn(Fn.add,B,t),Ge(B)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch($){w.error($?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},j=B=>{B.preventDefault();const $=new FormData(B.target);y&&$.set("fk_categoryID",String(y)),m&&$.set("fk_sub_categoryID",String(m)),C&&$.set("vendor_id",String(C)),f&&$.set("unit",String(f)),c&&$.set("image",c),U($),B.target.reset(),g(""),p(""),A(""),b(""),x("")},P=(B,$)=>{s({page:B,rowsPerPage:parseInt($,10)})},I=async B=>{try{await D(sn(Fn.remove,B,t),ze(B)),w.success("Success! Deleted item.",{duration:1e3})}catch($){w.error($?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},N=B=>{d(B),l(!0),g(""),p(B?.fk_categoryID??B?.category_id??""),A(B?.fk_sub_categoryID??B?.sub_category_id??""),b(B?.vendor_id??""),x(B?.unit??B?.unit_id??"")},V=async B=>{B.preventDefault();const $=new FormData(B.target);$.set("id",String(o?.id??"")),y&&$.set("fk_categoryID",String(y)),m&&$.set("fk_sub_categoryID",String(m)),C&&$.set("vendor_id",String(C)),f&&$.set("unit",String(f)),c&&$.set("image",c);try{await va(Fn.edit,$,t),await D(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),d(null),g("")}catch(M){w.error(M?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},W=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,fixed:"left",width:180},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,responsive:["lg"]},{title:"Category",dataIndex:"storecategory",key:"storecategory",ellipsis:!0,responsive:["md"]},{title:"Quantity",dataIndex:"quantity",key:"quantity",ellipsis:!0,width:100,responsive:["md"]},{title:"Unit",dataIndex:"unit_name",key:"unit_name",ellipsis:!0,width:120,responsive:["md"]},{title:"Price",dataIndex:"price",key:"price",ellipsis:!0,width:100,responsive:["md"]},{title:"Barcode",dataIndex:"barcode",key:"barcode",ellipsis:!0,responsive:["xl"]},{title:"Hsn Code",dataIndex:"hsn_code",key:"hsn_code",ellipsis:!0,responsive:["xl"]},{title:"Action",key:"action",width:100,fixed:"right",render:(B,$)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>N($),style:{padding:2}}),e.jsx(yt,{id:$?.id,funcName:I})]})}],[I]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{open:r,title:o?.name?`Edit ${o.name}`:"Edit Product",placement:"right",width:520,onClose:()=>{l(!1),d(null),g("")},children:e.jsx("form",{onSubmit:V,children:e.jsxs("div",{style:{display:"grid",gap:14},children:[e.jsx(z,{type:"text",name:"name",label:"Product Name*",defaultValue:o?.name??"",required:"required"}),e.jsx(Q,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category*",name:"fk_categoryID",allowSelectAll:!1,required:!0,onChange:B=>{const $=B?.value??"";p($),A("")},defaultValue:y?F.find(B=>String(B?.value)===String(y)):null}),e.jsx(Q,{options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"SubCategory",name:"fk_sub_categoryID",allowSelectAll:!1,onChange:B=>A(B?.value??""),defaultValue:m?T.find(B=>String(B?.value)===String(m)):null}),e.jsx(z,{type:"text",name:"barcode",label:"Barcode",defaultValue:o?.barcode??""}),e.jsx(Q,{options:q,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Unit*",name:"unit",allowSelectAll:!1,required:!0,onChange:B=>x(B?.value??""),defaultValue:f?q.find(B=>String(B?.value)===String(f)):null}),e.jsx(z,{type:"number",name:"quantity",label:"Quantity*",defaultValue:o?.quantity??"",required:"required"}),e.jsx(z,{type:"number",name:"price",label:"Price*",defaultValue:o?.price??"",required:"required"}),e.jsx(Q,{options:E,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vendor*",name:"vendor_id",allowSelectAll:!1,required:!0,onChange:B=>b(B?.value??""),defaultValue:C?E.find(B=>String(B?.value)===String(C)):null}),e.jsx(z,{type:"number",name:"hsn_code",label:"Hsn Code",defaultValue:o?.hsn_code??""}),e.jsx(lt,{type:"text",label:"Description",name:"description",rows:3,defaultValue:o?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(xa,{token:t,value:c,onChange:g})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null),g("")},style:Um,children:"Cancel"})]})]})})}),e.jsxs(v,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Add Product"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:j,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(z,{type:"text",name:"name",label:"Product Name*",required:"required"}),e.jsx(Q,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category*",name:"fk_categoryID",allowSelectAll:!1,required:!0,onChange:B=>{const $=B?.value??"";p($),A("")}}),e.jsx(Q,{options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"SubCategory",name:"fk_sub_categoryID",allowSelectAll:!1,onChange:B=>A(B?.value??"")},`subcat_${y}`),e.jsx(z,{type:"text",name:"barcode",label:"Barcode"}),e.jsx(Q,{options:q,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Unit*",name:"unit",allowSelectAll:!1,required:!0,onChange:B=>x(B?.value??"")}),e.jsx(z,{type:"number",name:"quantity",label:"Quantity*",required:"required"}),e.jsx(z,{type:"number",name:"price",label:"Price*",required:"required"}),e.jsx(Q,{options:E,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vendor*",name:"vendor_id",allowSelectAll:!1,required:!0,onChange:B=>b(B?.value??"")}),e.jsx(z,{type:"number",name:"hsn_code",label:"Hsn Code"}),e.jsx(lt,{type:"text",label:"Description",name:"description",rows:3}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(xa,{token:t,value:c,onChange:g})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Add Product",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Products List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:P,data:{newData:O,columns:W,columnstype:"antd",action:!1,Loading:R,error:k}})})]})]})]})}const Bm=({token:t})=>e.jsx(Nm,{token:t}),Un=Qe.category,Lm=({token:t,page:a=1,perPage:s=10})=>rn({baseUrl:Un.list,page:a,perPage:s,token:t}),qm={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function zm({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),{isLoading:c,error:g,data:y,mutate:p}=Lm({token:t,page:a.page,perPage:a.rowsPerPage}),m=async k=>{try{await p(nn(Un.add,k,t),Ge(k)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(O){w.error(O?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},A=k=>{k.preventDefault();const O=new FormData(k.target);m(O),k.target.reset()},C=(k,O)=>{s({page:k,rowsPerPage:parseInt(O,10)})},b=async k=>{try{await p(sn(Un.remove,k,t),ze(k)),w.success("Success! Deleted item.",{duration:1e3})}catch(O){w.error(O?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},f=k=>{d(k),l(!0)},x=async k=>{k.preventDefault();const O=new FormData(k.target);O.set("id",String(o?.id??""));try{await va(Un.edit,O,t),await p(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),d(null)}catch(D){w.error(D?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},R=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,sorter:{compare:(k,O)=>String(k?.name??"").localeCompare(String(O?.name??""))}},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,sorter:{compare:(k,O)=>String(k?.description??"").localeCompare(String(O?.description??""))}},{title:"Action",key:"action",width:100,fixed:"right",render:(k,O)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>f(O),style:{padding:2}}),e.jsx(yt,{id:O?.id,funcName:b})]})}],[b]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{open:r,title:o?.name?`Edit ${o.name}`:"Edit Category",placement:"right",width:420,onClose:()=>{l(!1),d(null)},children:e.jsx("form",{onSubmit:x,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(z,{type:"text",name:"name",label:"Name",defaultValue:o?.name??"",required:"required"}),e.jsx(z,{type:"text",name:"description",label:"Description",defaultValue:o?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},style:qm,children:"Cancel"})]})]})})}),e.jsxs(v,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Add Category"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:A,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(z,{type:"text",name:"name",label:"Name*",required:"required"}),e.jsx(z,{type:"text",name:"description",label:"Description"}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Category List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:C,data:{newData:y,columns:R,columnstype:"antd",action:!1,Loading:c,error:g}})})]})]})]})}const Ym=({token:t})=>e.jsx(zm,{token:t}),Nn=Qe.subCategory,Si=Qe.category.dropdown,Vm=({token:t,page:a=1,perPage:s=10})=>rn({baseUrl:Nn.list,page:a,perPage:s,token:t}),Wm=({token:t})=>H(t&&Si?[Si,t]:null,([s,r])=>K(s,r)),Hm=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},Km={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Gm({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c,g]=i.useState(""),{isLoading:y,error:p,data:m,mutate:A}=Vm({token:t,page:a.page,perPage:a.rowsPerPage}),{data:C}=Wm({token:t}),b=i.useMemo(()=>Hm(C),[C]),f=async u=>{try{await A(nn(Nn.add,u,t),Ge(u)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(h){w.error(h?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},x=u=>{u.preventDefault();const h=new FormData(u.target);h.set("status","active"),h.set("img",c||""),f(h),u.target.reset(),g("")},R=(u,h)=>{s({page:u,rowsPerPage:parseInt(h,10)})},k=async u=>{try{await A(sn(Nn.remove,u,t),ze(u)),w.success("Success! Deleted item.",{duration:1e3})}catch(h){w.error(h?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},O=u=>{d(u),l(!0)},D=async u=>{u.preventDefault();const h=new FormData(u.target);h.set("id",String(o?.id??"")),c&&h.set("img",c);try{await va(Nn.edit,h,t),await A(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),d(null),g("")}catch(S){w.error(S?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},_=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,sorter:{compare:(u,h)=>String(u?.name??"").localeCompare(String(h?.name??""))}},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,sorter:{compare:(u,h)=>String(u?.description??"").localeCompare(String(h?.description??""))}},{title:"Action",key:"action",width:100,fixed:"right",render:(u,h)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>O(h),style:{padding:2}}),e.jsx(yt,{id:h?.id,funcName:k})]})}],[k]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{open:r,title:o?.name?`Edit ${o.name}`:"Edit Sub Category",placement:"right",width:420,onClose:()=>{l(!1),d(null),g("")},children:e.jsx("form",{onSubmit:D,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",name:"category_id",defaultValue:o?.category_id?b.find(u=>String(u?.value)===String(o.category_id)):null,allowSelectAll:!1,required:!0}),e.jsx(z,{type:"text",name:"name",label:"Name*",defaultValue:o?.name??"",required:"required"}),e.jsx(z,{type:"text",name:"description",label:"Description",defaultValue:o?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(xa,{token:t,value:c,onChange:g})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null),g("")},style:Km,children:"Cancel"})]})]})})}),e.jsxs(v,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Add Sub Category"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:x,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",name:"category_id",allowSelectAll:!1,required:!0}),e.jsx(z,{type:"text",name:"name",label:"Name*",required:"required"}),e.jsx(z,{type:"text",name:"description",label:"Description"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(xa,{token:t,value:c,onChange:g})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Sub Category List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:R,data:{newData:m,columns:_,columnstype:"antd",action:!1,Loading:y,error:p}})})]})]})]})}const Jm=({token:t})=>e.jsx(Gm,{token:t}),Ps=Qe.product,Qm=Qe.academy.classes,Xm=Qe.academy.sections,Zm=Qe.student.dropdown;function Pa(t){const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]}function _n(t,a){const s=Math.trunc(Number(t)||1),r=Math.max(1,s);return!Number.isFinite(Number(a))||Number(a)<=0?r:Math.min(r,Math.trunc(Number(a)))}function pt(t){return String(t??"")}function eh({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(""),[o,d]=i.useState(""),[c,g]=i.useState(!1),[y,p]=i.useState(""),[m,A]=i.useState([]),[C,b]=i.useState({}),[f,x]=i.useState({}),[R,k]=i.useState(!1),[O,D]=i.useState(""),[_,u]=i.useState(0),[h,S]=i.useState(""),[E,F]=i.useState(te()),[q,T]=i.useState([]),U={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},j=!!(a&&r&&o),{data:P}=H(t?[Qm,t]:null,([fe,je])=>K(fe,je)),I=i.useMemo(()=>Pa(P),[P]),N=t&&a?`${Xm}?class_id=${encodeURIComponent(String(a))}`:null,{data:V}=H(N?[N,t]:null,([fe,je])=>K(fe,je)),W=i.useMemo(()=>Pa(V),[V]),B=t&&a&&r?`${Zm}?class=${encodeURIComponent(String(a))}&section=${encodeURIComponent(String(r))}`:null,{data:$}=H(B?[B,t]:null,([fe,je])=>K(fe,je)),M=i.useMemo(()=>Pa($),[$]),L=j?`${Ps.list}?page=1&per_page=10000`:null,{data:Y,isLoading:se}=H(t&&L?[L,t]:null,([fe,je])=>K(fe,je),{revalidateOnFocus:!1}),X=i.useMemo(()=>Pa(Y),[Y]),G=i.useMemo(()=>{const fe=new Map;return(Array.isArray(X)?X:[]).forEach(je=>{fe.set(pt(je?.id),je)}),fe},[X]),J=i.useMemo(()=>{const fe=Object.entries(f||{});return fe.length===0?[]:fe.map(([je,xe])=>{const ae=G.get(pt(je));return ae?{id:ae?.id,name:ae?.name,barcode:ae?.barcode,stock:Number(ae?.quantity||0),price:Number(ae?.price||0),quantity:_n(xe,Number(ae?.quantity||0))}:null}).filter(Boolean)},[f,G]),re=i.useMemo(()=>new Set(J.map(fe=>pt(fe?.id))),[J]),de=i.useMemo(()=>(Array.isArray(J)?J:[]).reduce((je,xe)=>je+Number(xe?.price||0)*Number(xe?.quantity||1),0),[J]),Ce=i.useMemo(()=>{const fe=Number(_||0);return!Number.isFinite(fe)||fe<=0?0:Math.min(fe,de)},[_,de]),le=i.useMemo(()=>Math.max(0,de-Ce),[Ce,de]),oe=i.useMemo(()=>(Array.isArray(X)?X:[]).slice(0,30).map(fe=>({value:pt(fe?.id),label:`${fe?.name??""}${fe?.barcode?` • ${fe.barcode}`:""}${fe?.quantity!==void 0&&fe?.quantity!==null?` • Stock: ${fe.quantity}`:""}`,product:fe})),[X]),{trigger:ie}=rt(t&&j?Ps.search:null,(fe,{arg:je})=>Qt(fe,{arg:je},t));i.useEffect(()=>{if(!j){A([]);return}const fe=String(y||"").trim();if(fe.length<2){A(oe);return}let je=!0;const xe=setTimeout(async()=>{let ae=[];try{if(ie){const ye=await ie({search:fe});ae=Pa(ye)}}catch{ae=[]}if(!Array.isArray(ae)||ae.length===0){const ye=fe.toLowerCase();ae=(Array.isArray(X)?X:[]).filter(ke=>{const Pe=String(ke?.name??"").toLowerCase(),ue=String(ke?.barcode??"").toLowerCase();return Pe.includes(ye)||ue.includes(ye)}).slice(0,30)}const he=ae.slice(0,30).map(ye=>({value:pt(ye?.id),label:`${ye?.name??""}${ye?.barcode?` • ${ye.barcode}`:""}${ye?.quantity!==void 0&&ye?.quantity!==null?` • Stock: ${ye.quantity}`:""}`,product:ye}));je&&A(he)},250);return()=>{je=!1,clearTimeout(xe)}},[oe,j,ie,X,y]),i.useEffect(()=>{x({}),b({}),p(""),A([]),k(!1),D(""),u(0),S(""),F(te()),T([])},[a,r,o]);const Se=i.useCallback((fe,je=1)=>{const xe=fe?.id;if(!xe)return;const ae=Number(fe?.quantity||0);if(ae<=0){w.error("Out of stock.",{duration:1e3});return}const he=_n(je,ae);x(ye=>{const ke=ye||{};return Object.prototype.hasOwnProperty.call(ke,pt(xe))?(w.error("Product already added.",{duration:1e3}),ke):{...ke,[pt(xe)]:he}})},[x]),Ee=i.useCallback((fe,je,xe)=>{x(ae=>{const he=ae||{},ye=pt(fe);return Object.prototype.hasOwnProperty.call(he,ye)?{...he,[ye]:_n(je,xe)}:he})},[]),Xe=i.useCallback(fe=>{x(je=>{const xe=je||{},ae=pt(fe);if(!Object.prototype.hasOwnProperty.call(xe,ae))return xe;const he={...xe};return delete he[ae],he})},[]),be=i.useCallback((fe,je,xe)=>{b(ae=>({...ae||{},[pt(fe)]:_n(je,xe)}))},[]),ve=i.useCallback((fe,je)=>{je?.product&&Se(je.product,1),p(""),A(oe)},[Se,oe]),Oe=i.useCallback(fe=>{if(fe.key!=="Enter")return;fe.preventDefault();const je=Array.isArray(m)&&m.length>0?m[0]:null;if(je?.product){Se(je.product,1),p(""),A(oe);return}const xe=String(y||"").trim().toLowerCase();if(xe.length===0)return;const ae=(Array.isArray(X)?X:[]).find(he=>{const ye=String(he?.name??"").toLowerCase(),ke=String(he?.barcode??"").toLowerCase();return ye.includes(xe)||ke.includes(xe)});ae&&(Se(ae,1),p(""),A(oe))},[Se,oe,X,m,y]),Ye=()=>{if(!t){w.error("Missing token.",{duration:1e3});return}if(!a){w.error("Select class.",{duration:1e3});return}if(!r){w.error("Select section.",{duration:1e3});return}if(!o){w.error("Select student.",{duration:1e3});return}if(!J||J.length===0){w.error("Add at least one product.",{duration:1e3});return}k(!0)},{trigger:Be,isMutating:Le}=rt(t?Ps.sellProduct:null,(fe,{arg:je})=>ss(fe,{arg:je},t)),Ze=async()=>{if(!O){w.error("Select payment type.",{duration:1e3});return}const fe=(Array.isArray(J)?J:[]).map(xe=>({id:xe?.id,quantity:Number(xe?.quantity||1),price:Number(xe?.price||0),total_price:Number(xe?.total_price||0),fk_vendor_id:xe?.fk_vendor_id||"",fk_categoryID:xe?.fk_categoryID||"",name:xe?.name||"",class_id:xe?.class_id||"",fk_sub_categoryID:xe?.fk_sub_categoryID||"",description:xe?.description||"",min_quantity:Number(xe?.min_quantity||0),storecategory:Number(xe?.storecategory||0),barcode:xe?.barcode||""})),je={amount:de,class:a,section:r,student_id:o,payment_type:O,discount:Ce,notes:h||"",receipt_date:E?te(E).format("YYYY-MM-DD"):"",product:JSON.stringify(fe),total_payable_amount:de,attchement:q[0]?.originFileObj||""};try{const ae=Array.isArray(q)&&q.length>0&&q[0]?.originFileObj?(()=>{const ye=new FormData;return Object.entries(je).forEach(([ke,Pe])=>{if(ke==="products"){ye.append("product",JSON.stringify(Pe));return}ye.append(ke,String(Pe??""))}),ye.append("attachment",q[0].originFileObj),ye})():je,he=await Be(ae);he?.Status==="Success"?(w.success("Success! Product sold.",{duration:1e3}),k(!1),x({}),b({}),p(""),A(oe),D(""),u(0),S(""),F(te()),T([])):w.error(he?.msg??"Failed to submit.",{duration:1e3})}catch{w.error("Failed to submit.",{duration:1e3})}},at=i.useMemo(()=>[{title:"Product Name",dataIndex:"name",key:"name",ellipsis:!0},{title:"Barcode",dataIndex:"barcode",key:"barcode",width:160},{title:"Stock",dataIndex:"quantity",key:"quantity",width:110},{title:"Price",dataIndex:"price",key:"price",width:120},{title:"Quantity",key:"quantity",width:160,render:(fe,je)=>{const xe=pt(je?.id),ae=Number(je?.quantity||0),he=re.has(xe),ye=(he?f?.[xe]:C?.[xe])??1;return e.jsx(n.InputNumber,{min:1,max:Number.isFinite(ae)&&ae>0?ae:void 0,value:ye,onChange:ke=>{he?Ee(xe,ke,ae):be(xe,ke,ae)},disabled:ae<=0})}},{title:"Amount",key:"amount",width:140,render:(fe,je)=>{const xe=pt(je?.id),ae=(re.has(xe)?f?.[xe]:C?.[xe])??1;return Number(je?.price||0)*Number(ae||1)}},{title:"Action",key:"action",width:120,render:(fe,je)=>{const xe=pt(je?.id),ae=Number(je?.quantity||0),he=re.has(xe),ye=(he?f?.[xe]:C?.[xe])??1;return he?e.jsx(n.Button,{type:"text",danger:!0,size:"small",icon:e.jsx(ee.DeleteOutlined,{}),onClick:()=>Xe(xe),style:{padding:2}}):e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.PlusOutlined,{}),disabled:ae<=0,onClick:()=>Se(je,ye),style:{padding:2}})}}],[Se,re,f,C,Xe,be,Ee]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(v,{pt:5,pb:2,children:[e.jsxs(v,{style:{padding:"12px 16px"},children:[e.jsx(v,{children:"Sell Product"}),e.jsx(n.Card,{style:{borderRadius:16},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(Q,{options:I,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",placeholder:"Class",allowSelectAll:!1,required:!0,onChange:fe=>{const je=fe?.value??"";s(je),l(""),d(""),g(xe=>!xe)}}),e.jsx(Q,{options:W,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",placeholder:"Section",allowSelectAll:!1,required:!0,onChange:fe=>{const je=fe?.value??"";l(je),d("")}},`section_${c}`),e.jsx(Q,{options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Student",name:"student_id",placeholder:"Student",allowSelectAll:!1,required:!0,onChange:fe=>d(fe?.value??"")})]})})]}),e.jsx("div",{style:{padding:"0 16px"},children:e.jsxs(n.Card,{style:{borderRadius:16,marginTop:12},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(260px, 520px) 1fr",gap:12,alignItems:"center",marginBottom:12},children:[e.jsx(v,{style:{marginTop:12},children:"Product Section"}),e.jsx(n.AutoComplete,{value:y,options:m,onSearch:p,onFocus:()=>{j&&String(y||"").trim().length<2&&A(oe)},onSelect:ve,disabled:!j,children:e.jsx(n.Input,{placeholder:"Search by product name or barcode",onKeyDown:Oe,allowClear:!0})}),e.jsxs("div",{style:{justifySelf:"end",fontWeight:700},children:["Total: ",Rt(de)]})]}),e.jsx(n.Table,{rowKey:fe=>pt(fe?.id),columns:at,dataSource:X,loading:se,size:"small",bordered:!0,pagination:{pageSize:50,showSizeChanger:!0,pageSizeOptions:[25,50,100,200]},scroll:{x:"max-content"}}),e.jsxs("div",{style:{position:"sticky",bottom:0,background:"#fff",paddingTop:12,marginTop:12,borderTop:"1px solid #f0f0f0"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontWeight:700},children:[e.jsx("span",{children:"Selected Items"}),e.jsx("span",{children:J.length})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontWeight:700,marginTop:6},children:[e.jsx("span",{children:"Total Amount"}),e.jsx("span",{children:Rt(de)})]}),e.jsxs("div",{style:{display:"flex",gap:12,marginTop:12},children:[e.jsx(ne,{type:"button",value:"Submit",disabled:!j||J.length===0,onClick:Ye,style:{flex:1,minWidth:140}}),e.jsx(n.Button,{type:"text",style:U,onClick:()=>{x({}),b({}),p(""),A(oe)},disabled:J.length===0,children:"Clear"})]})]})]})})]}),e.jsx(n.Modal,{open:R,title:"Payment",onCancel:()=>k(!1),onOk:Ze,confirmLoading:Le,okText:"Submit",destroyOnClose:!0,children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Payment Type"}),e.jsx(n.Select,{value:O||void 0,onChange:D,placeholder:"Select payment type",style:{width:"100%"},options:[{value:"Cash",label:"Cash"},{value:"UPI",label:"UPI"},{value:"Bank",label:"Bank"},{value:"Cheque",label:"Cheque"},{value:"DD",label:"DD"},{value:"Internet Banking",label:"Internet Banking"}]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Receipt Date"}),e.jsx(n.DatePicker,{value:E,onChange:fe=>F(fe),style:{width:"100%"},format:"YYYY-MM-DD"})]})]}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Discount"}),e.jsx(n.InputNumber,{min:0,max:de,value:_,onChange:fe=>u(Number(fe||0)),style:{width:"100%"}})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Attachment"}),e.jsx(n.Upload,{fileList:q,beforeUpload:()=>!1,onChange:({fileList:fe})=>T((fe||[]).slice(-1)),maxCount:1,children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),children:"Upload"})})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Notes"}),e.jsx(n.Input.TextArea,{value:h,onChange:fe=>S(fe.target.value),rows:3})]}),e.jsx(n.Card,{style:{borderRadius:12,background:"#fafcff"},children:e.jsxs("div",{style:{display:"grid",gap:8},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{children:"Total Amount"}),e.jsx("span",{children:Rt(de)})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{children:"Discount"}),e.jsx("span",{children:Rt(Ce)})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontWeight:700},children:[e.jsx("span",{children:"Net Amount"}),e.jsx("span",{children:Rt(le)})]})]})})]})})]})}const th=({token:t})=>e.jsx(eh,{token:t}),Bn=Qe.unit,ah=({token:t,page:a=1,perPage:s=10})=>rn({baseUrl:Bn.list,page:a,perPage:s,token:t}),nh={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function sh({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),{isLoading:c,error:g,data:y,mutate:p}=ah({token:t,page:a.page,perPage:a.rowsPerPage}),m=async k=>{try{await p(nn(Bn.add,k,t),Ge(k)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(O){w.error(O?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},A=k=>{k.preventDefault();const O=new FormData(k.target);m(O),k.target.reset()},C=(k,O)=>{s({page:k,rowsPerPage:parseInt(O,10)})},b=async k=>{try{await p(sn(Bn.remove,k,t),ze(k)),w.success("Success! Deleted item.",{duration:1e3})}catch(O){w.error(O?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},f=k=>{d(k),l(!0)},x=async k=>{k.preventDefault();const O=new FormData(k.target);O.set("id",String(o?.id??""));try{await va(Bn.edit,O,t),await p(),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),d(null)}catch(D){w.error(D?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},R=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,sorter:{compare:(k,O)=>String(k?.name??"").localeCompare(String(O?.name??""))}},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,sorter:{compare:(k,O)=>String(k?.description??"").localeCompare(String(O?.description??""))}},{title:"Action",key:"action",width:100,fixed:"right",render:(k,O)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>f(O),style:{padding:2}}),e.jsx(yt,{id:O?.id,funcName:b})]})}],[b]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{open:r,title:o?.name?`Edit ${o.name}`:"Edit Unit",placement:"right",width:420,onClose:()=>{l(!1),d(null)},children:e.jsx("form",{onSubmit:x,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(z,{type:"text",name:"name",label:"Unit Name",defaultValue:o?.name??"",required:"required"}),e.jsx(z,{type:"text",name:"description",label:"Description",defaultValue:o?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},style:nh,children:"Cancel"})]})]})})}),e.jsxs(v,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Add Unit"})}),e.jsx(v,{px:3,pb:2,children:e.jsx("form",{onSubmit:A,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(z,{type:"text",name:"name",label:"Unit Name*",required:"required"}),e.jsx(z,{type:"text",name:"description",label:"Description"}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(pe,{variant:"h6",color:"white",children:"Unit List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:C,data:{newData:y,columns:R,columnstype:"antd",action:!1,Loading:c,error:g}})})]})]})]})}const rh=({token:t})=>e.jsx(sh,{token:t}),ih=Qe.product.sellReports,lh=Qe.academy.classes,oh=Qe.academy.sections,dh=Qe.student.dropdown,vi=t=>{const a=Number(t??0);return Number.isFinite(a)?a.toLocaleString(void 0,{minimumFractionDigits:0,maximumFractionDigits:2}):String(t??"")};function ch({token:t}){const a=i.useRef(null),[s,r]=i.useState(null),[l,o]=i.useState(""),[d,c]=i.useState(""),[g,y]=i.useState(""),[p,m]=i.useState(!1),A=T=>{const U=T?.data?.data??T?.data??T??[];return Array.isArray(U)?U:Array.isArray(U?.data)?U.data:[]},{data:C}=H(t?[lh,t]:null,([T,U])=>K(T,U)),b=i.useMemo(()=>A(C),[C]),f=t&&l?`${oh}?class_id=${encodeURIComponent(String(l))}`:null,{data:x}=H(f?[f,t]:null,([T,U])=>K(T,U)),R=i.useMemo(()=>A(x),[x]),k=t&&l&&d?`${dh}?class=${encodeURIComponent(String(l))}&section=${encodeURIComponent(String(d))}`:null,{data:O}=H(k?[k,t]:null,([T,U])=>K(T,U)),D=i.useMemo(()=>A(O),[O]),{trigger:_,isMutating:u,data:h}=rt(ih,(T,{arg:U})=>nr(T,{arg:U},t));i.useEffect(()=>{const U=new Date().toISOString().slice(0,10);_({duration:[U,U]})},[_]);const S=i.useMemo(()=>{const T=h?.data??h??[];return Array.isArray(T)?T:[]},[h]),E=T=>{const U=Array.isArray(T?.product_details)?T.product_details:[];return U.length===0?null:e.jsx(n.Table,{size:"small",bordered:!0,pagination:!1,rowKey:j=>`${T?.receipt_id??"r"}_${j?.product_name??j?.product_pricem??""}`,columns:[{title:"Product",dataIndex:"product_name",key:"product_name"},{title:"Amount",dataIndex:"product_pricem",key:"product_pricem",render:j=>vi(j)}],dataSource:U})},F=[{title:"Receipt No",dataIndex:"receipt_no",key:"receipt_no"},{title:"Date",dataIndex:"receipt_date",key:"receipt_date"},{title:"Amount",dataIndex:"receipt_amount",key:"receipt_amount",render:T=>vi(T)}],q=async()=>{if(!s||s.length!==2)return;const[T,U]=s;await _({duration:[T.format("YYYY-MM-DD"),U.format("YYYY-MM-DD")],class:l||"",section:d||"",student_id:g||""})};return e.jsx("div",{children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,lg:8,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Filters"}),style:{borderRadius:16},children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Duration"}),e.jsx(n.DatePicker.RangePicker,{value:s,onChange:r,style:{width:"100%"}})]}),e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",placeholder:"Class",allowSelectAll:!1,onChange:T=>{const U=T?.value??"";o(U),c(""),y(""),m(j=>!j)}}),e.jsx(Q,{options:R,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",placeholder:"Section",allowSelectAll:!1,onChange:T=>{const U=T?.value??"";c(U),y("")}},`section_${p}`),e.jsx(Q,{options:D,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Student",placeholder:"Student",allowSelectAll:!1,onChange:T=>y(T?.value??"")}),e.jsx(ne,{type:"button",value:u?"Searching...":"Search",disabled:u,onClick:q,style:{width:"100%"}})]})})}),e.jsx(n.Col,{xs:24,lg:16,children:e.jsx(n.Card,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Sell Reports"}),e.jsx(Ct,{data:{tableRef:a}})]}),style:{borderRadius:16},children:e.jsxs("div",{ref:a,children:[e.jsx("div",{className:"print-only",children:e.jsx(It,{})}),e.jsx(n.Table,{bordered:!0,size:"small",loading:u,rowKey:T=>String(T?.receipt_id??T?.receipt_no??Math.random()),columns:F,expandable:{expandedRowRender:E},dataSource:S,pagination:{pageSize:20}})]})})})]})})}const uh=({token:t})=>e.jsx(ch,{token:t}),ph=Qe.product;function mh({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState([]),[o,d]=i.useState([]),[c,g]=i.useState(!1),[y,p]=i.useState(!1),[m,A]=i.useState(null),[C,b]=i.useState(0),[f,x]=i.useState(null),[R,k]=i.useState(""),O=i.useRef(null),D=ea.useReactToPrint({contentRef:O,documentTitle:"Stock Barcodes"}),{isLoading:_,error:u,data:h,mutate:S}=ro({token:t,page:a.page,perPage:a.rowsPerPage}),E=(P,I)=>{s({page:P,rowsPerPage:parseInt(I,10)})},F={selectedRowKeys:r,onChange:(P,I)=>{l(P),d(I)}},q=P=>{A(P),b(Number(P?.quantity??0)),x(null),k(""),g(!0)},T=()=>{g(!1),A(null),b(0),x(null),k("")},U=async()=>{if(!m?.id)return;p(!0);const P=new FormData;P.append("product_id",String(m.id)),P.append("qty",String(C??0)),f&&P.append("tran_date",f.format("YYYY-MM-DD")),R&&P.append("remarks",R);try{const I=await va(ph.addStock,P,t);I?.Status==="Success"?(w.success("Success! Updated quantity.",{duration:1e3}),T(),await S()):w.error(I?.msg??"Failed to update quantity.",{duration:1e3})}catch{w.error("Failed to update quantity.",{duration:1e3})}finally{p(!1)}},j=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,fixed:"left",width:180},{title:"Category",dataIndex:"storecategory",key:"storecategory",ellipsis:!0,responsive:["md"]},{title:"Quantity",dataIndex:"quantity",key:"quantity",width:100},{title:"Unit",dataIndex:"unit_name",key:"unit_name",width:120,responsive:["md"]},{title:"Price",dataIndex:"price",key:"price",width:100,responsive:["md"]},{title:"Barcode",dataIndex:"barcode",key:"barcode",ellipsis:!0,responsive:["lg"]},{title:"Action",key:"action",width:160,fixed:"right",render:(P,I)=>e.jsx("div",{style:{display:"flex",gap:8},children:e.jsx(n.Button,{size:"small",onClick:()=>q(I),children:"Update Qty"})})}],[]);return e.jsxs("div",{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{title:m?.name?`Update Stock: ${m.name}`:"Update Stock",open:c,onCancel:T,onOk:U,okButtonProps:{loading:y},children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,marginBottom:6},children:"Quantity"}),e.jsx(n.InputNumber,{min:0,style:{width:"100%"},value:C,onChange:P=>b(P??0)})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,marginBottom:6},children:"Date"}),e.jsx(n.DatePicker,{style:{width:"100%"},value:f,onChange:x})]}),e.jsx(lt,{label:"Remarks",name:"remarks",rows:3,value:R,onChange:P=>k(P.target.value)})]})}),e.jsxs(v,{pt:5,pb:2,children:[e.jsxs(v,{children:["Manage Stock",e.jsx(ne,{type:"button",value:"Print Barcodes",disabled:!o||o.length===0,onClick:()=>D?.(),style:{minWidth:170}})]}),e.jsx(v,{style:{padding:"12px 16px"},children:e.jsx(n.Card,{style:{borderRadius:16},children:e.jsx(Ie,{parentCallback:E,data:{newData:h,columns:j,columnstype:"antd",action:!1,Loading:_,error:u,rowSelection:F}})})})]}),e.jsx("div",{style:{position:"absolute",left:-1e4,top:0},children:e.jsx("div",{ref:O,children:e.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:16,padding:24},children:(Array.isArray(o)?o:[]).map(P=>e.jsxs("div",{style:{border:"1px solid #ddd",padding:12},children:[e.jsx("div",{style:{marginBottom:6,fontSize:12},children:P?.name??""}),e.jsx(gl,{value:String(P?.barcode??P?.id??""),height:50,width:1.6,displayValue:!0})]},P?.id??P?.barcode??P?.name))})})})]})}const hh=({token:t})=>e.jsx(mh,{token:t}),fh=Qe.report.stock,yh=Qe.product.dropdown,gh=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function xh({token:t}){const a=i.useRef(null),[s,r]=i.useState(null),[l,o]=i.useState(""),{data:d}=H(t?[yh,t]:null,([b,f])=>K(b,f)),c=i.useMemo(()=>gh(d),[d]),{trigger:g,isMutating:y,data:p}=rt(fh,(b,{arg:f})=>nr(b,{arg:f},t));i.useEffect(()=>{const f=new Date().toISOString().slice(0,10);g({duration:[f,f]})},[g]);const m=i.useMemo(()=>{const b=p?.data??p??[];return(Array.isArray(b)?b:[]).flatMap(x=>(Array.isArray(x?.ledger)?x.ledger:[]).map((R,k)=>({key:`${x.product_id??x.product_name??"p"}-${k}`,date:R?.date,product:x?.product_name,opening:R?.opening,inward:R?.inward,outward:R?.outward,closing:R?.closing})))},[p]),A=[{title:"Date",dataIndex:"date",key:"date"},{title:"Product",dataIndex:"product",key:"product"},{title:"Opening",dataIndex:"opening",key:"opening"},{title:"Inward",dataIndex:"inward",key:"inward"},{title:"Outward",dataIndex:"outward",key:"outward"},{title:"Closing",dataIndex:"closing",key:"closing",render:b=>e.jsx("span",{style:{color:Number(b)<0?"red":"green"},children:b})}],C=async()=>{if(!s||s.length!==2)return;const[b,f]=s;await g({duration:[b.format("YYYY-MM-DD"),f.format("YYYY-MM-DD")],product_id:l||""})};return e.jsxs(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Stock Report"}),style:{borderRadius:16},children:[e.jsxs("div",{style:{display:"flex",gap:12,alignItems:"center",marginBottom:16,flexWrap:"wrap"},children:[e.jsx(n.DatePicker.RangePicker,{value:s,onChange:r}),e.jsxs("select",{value:l,onChange:b=>o(b.target.value),style:{height:32,borderRadius:6,border:"1px solid #d9d9d9",padding:"0 8px"},children:[e.jsx("option",{value:"",children:"All Products"}),c.map(b=>e.jsx("option",{value:String(b?.value??""),children:String(b?.label??"")},String(b?.value??b?.id??b?.label)))]}),e.jsx(n.Button,{type:"primary",onClick:C,loading:y,children:"Search"}),e.jsx("div",{style:{marginLeft:"auto"},children:e.jsx(Ct,{data:{tableRef:a}})})]}),e.jsxs("div",{ref:a,children:[e.jsx("div",{className:"print-only",children:e.jsx(It,{})}),e.jsx(n.Table,{bordered:!0,size:"small",loading:y,rowKey:"key",columns:A,dataSource:m,pagination:{pageSize:50}})]})]})}const bh=({token:t})=>e.jsx(xh,{token:t}),wi=[{label:"Today",value:"Today"},{label:"Yesterday",value:"Yesterday"},{label:"This Week",value:"This Week"},{label:"This Month",value:"This Month"},{label:"Last Month",value:"Last Month"},{label:"This Year",value:"This Year"},{label:"Custom",value:"Custom"}],Mt={total_packages:124,total_downloads:45892,active_packages:118,deprecated_packages:6,pending_approval:3,published_this_month:12,published_this_week:4,packages_needing_update:8,packages_with_issues:2},_i=[{npm_id:"NPM-001",package_name:"@ubk/erp-core",version:"1.2.1",description:"Core ERP utilities and shared types",author:"UBK Infotech",repository:"https://github.com/ubk/erp-core",license:"MIT",status:"published",created_at:"2024-01-15",updated_at:"2025-06-20"},{npm_id:"NPM-002",package_name:"@ubk/erp-components",version:"2.0.0",description:"Reusable Ant Design ERP component library",author:"UBK Infotech",repository:"https://github.com/ubk/erp-components",license:"ISC",status:"published",created_at:"2024-03-10",updated_at:"2025-08-01"},{npm_id:"NPM-003",package_name:"@ubk/erp-api-client",version:"0.9.5",description:"Axios-based API client for UBK ERP backends",author:"UBK Infotech",repository:"https://github.com/ubk/erp-api-client",license:"MIT",status:"draft",created_at:"2025-05-22",updated_at:"2025-07-14"},{npm_id:"NPM-004",package_name:"@ubk/erp-hooks",version:"1.1.0",description:"Custom React hooks for ERP workflows",author:"UBK Infotech",repository:"https://github.com/ubk/erp-hooks",license:"MIT",status:"published",created_at:"2024-08-05",updated_at:"2025-04-30"},{npm_id:"NPM-005",package_name:"@ubk/erp-utils",version:"3.2.1",description:"Utility functions for date, currency, and validation",author:"UBK Infotech",repository:"https://github.com/ubk/erp-utils",license:"ISC",status:"deprecated",created_at:"2023-11-20",updated_at:"2025-02-10"}],Ci=[{key:"dashboard",label:"Dashboard"},{key:"allPackages",label:"All Packages"},{key:"published",label:"Published"},{key:"draft",label:"Draft"},{key:"deprecated",label:"Deprecated"},{key:"pendingApproval",label:"Pending Approval"}];function jh(){const[t,a]=i.useState("dashboard"),[s,r]=i.useState("This Month"),[l,o]=i.useState(""),[d,c]=i.useState(""),[g,y]=i.useState(1),[p,m]=i.useState(10),[A,C]=i.useState(""),b=i.useRef(null),f=["dashboard","allPackages","published","draft","deprecated","pendingApproval"].includes(t),x=i.useMemo(()=>{if(!A.trim())return _i;const _=A.toLowerCase();return _i.filter(u=>Object.values(u).some(h=>String(h??"").toLowerCase().includes(_)))},[A]),R=i.useMemo(()=>{const _=(g-1)*p;return x.slice(_,_+p)},[x,g,p]),k=()=>{y(1)},O=()=>{const _=[{title:"Total Packages",value:Mt.total_packages,icon:e.jsx(ee.FileTextOutlined,{}),color:"#1976d2"},{title:"Total Downloads",value:Mt.total_downloads.toLocaleString(),icon:e.jsx(ee.StarOutlined,{}),color:"#2e7d32"},{title:"Active Packages",value:Mt.active_packages,icon:e.jsx(ee.CheckCircleOutlined,{}),color:"#0288d1"},{title:"Deprecated",value:Mt.deprecated_packages,icon:e.jsx(ee.CloseCircleOutlined,{}),color:"#d32f2f"},{title:"Pending Approval",value:Mt.pending_approval,icon:e.jsx(ee.ClockCircleOutlined,{}),color:"#ed6c02"},{title:"Published This Month",value:Mt.published_this_month,icon:e.jsx(ee.CalendarOutlined,{}),color:"#9c27b0"},{title:"Published This Week",value:Mt.published_this_week,icon:e.jsx(ee.SyncOutlined,{}),color:"#455a64"},{title:"Needs Update",value:Mt.packages_needing_update,icon:e.jsx(ee.CodeOutlined,{}),color:"#c62828"},{title:"With Issues",value:Mt.packages_with_issues,icon:e.jsx(ee.CloseCircleOutlined,{}),color:"#f57c00"}];return e.jsx(n.Row,{gutter:[16,16],children:_.map((u,h)=>e.jsx(n.Col,{xs:24,sm:12,md:8,lg:6,children:e.jsxs(n.Card,{style:{display:"flex",alignItems:"center",padding:16,borderLeft:`6px solid ${u.color}`,transition:"0.2s",cursor:"default"},bodyStyle:{display:"flex",alignItems:"center",width:"100%"},children:[e.jsx(v,{style:{width:48,height:48,borderRadius:"50%",backgroundColor:`${u.color}15`,color:u.color,display:"flex",alignItems:"center",justifyContent:"center",fontSize:22,marginRight:16,flexShrink:0},children:u.icon}),e.jsxs(v,{children:[e.jsx(n.Typography.Text,{type:"secondary",style:{fontSize:12,fontWeight:500},children:u.title}),e.jsx("div",{style:{fontSize:22,fontWeight:700,marginTop:4},children:u.value})]})]})},h))})},D=()=>{const _=[{title:"NPM ID",dataIndex:"npm_id",key:"npm_id",width:100},{title:"Package Name",dataIndex:"package_name",key:"package_name",ellipsis:!0},{title:"Version",dataIndex:"version",key:"version",width:100},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,responsive:["md"]},{title:"Author",dataIndex:"author",key:"author",width:140,responsive:["lg"]},{title:"License",dataIndex:"license",key:"license",width:100},{title:"Status",dataIndex:"status",key:"status",width:120,render:u=>{let h="default";return u==="published"?h="green":u==="draft"?h="orange":u==="deprecated"?h="red":u==="pending"&&(h="blue"),e.jsx(n.Tag,{color:h,children:u.toUpperCase()})}},{title:"Created Date",dataIndex:"created_at",key:"created_at",width:120,responsive:["lg"]},{title:"Updated Date",dataIndex:"updated_at",key:"updated_at",width:120,responsive:["lg"]},{title:"Actions",key:"action",width:120,fixed:"right",render:(u,h)=>e.jsx("a",{style:{color:"#5080f8",cursor:"pointer",fontSize:13},children:"View"})}];return t==="dashboard"?[]:_};return e.jsx(v,{pt:5,pb:1,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"NPM Package Report"})}),e.jsxs(v,{p:3,children:[e.jsxs(n.Row,{gutter:[16,16],mb:3,children:[f&&e.jsxs(e.Fragment,{children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(Q,{options:wi,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Date Range",allowSelectAll:!1,value:wi.find(_=>_.value===s)||null,onChange:_=>r(_?.value||"This Month")})}),s==="Custom"&&e.jsxs(e.Fragment,{children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(Ue,{Desplay:"From Date",format:"YYYY-MM-DD",onChange:_=>o(_?_.format("YYYY-MM-DD"):"")})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(Ue,{Desplay:"To Date",format:"YYYY-MM-DD",onChange:_=>c(_?_.format("YYYY-MM-DD"):"")})})]})]}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{display:"flex",alignItems:"center",height:"100%",mt:t==="dashboard"?0:2,children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:k})})})]}),e.jsx(n.Tabs,{activeKey:t,onChange:a,items:Ci})]})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(n.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:Ci.find(_=>_.key===t)?.label||"Report"})}),e.jsxs(v,{p:3,children:[t!=="dashboard"&&e.jsx(Ct,{data:{tableRef:b}}),t==="dashboard"?O():e.jsx(n.Table,{size:"small",dataSource:R,columns:D(),loading:!1,pagination:!1,bordered:!0,rowKey:_=>_.npm_id||_.package_name||Math.random(),ref:b}),t!=="dashboard"&&x.length>0&&e.jsx(n.Pagination,{current:g,pageSize:p,total:x.length,onChange:(_,u)=>{y(_),m(u)},showSizeChanger:!0,showQuickJumper:!0,pageSizeOptions:[10,20,50,100],style:{marginTop:16,textAlign:"right"}})]})]})})]})})}const is=t=>t??localStorage.getItem("authToken")??"",Sh=(t,a)=>{const s=String(t??""),r=String(a);return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},Me={upload:"api/branchapi/frontoffice/uploadfrontofficeDocument",roleDropdown:"api/Branch/getRoledropdownforBranch",staff:{list:"api/branchapi/staff/stafflist",searchByRole:"api/branchapi/staff/staffsearchbyRole",searchByKeywords:"api/branchapi/staff/staffsearchbyKeywords",deactivate:"api/branchapi/staff/staff_deactive",basicById:"api/branchapi/staff/getbasicdetailsbyID",experienceById:"api/branchapi/staff/getworkexperencebyID",payrollById:"api/branchapi/staff/getpayrollbyID",lastEmpNo:"api/branchapi/staff/getLastStaffEMPnumber",addBasic:"api/branchapi/staff/addstaffbasicdetails",editBasic:"api/branchapi/staff/editstaffbasicdetails",addExperience:"api/branchapi/staff/addstaffExperience",editExperience:"api/branchapi/staff/editstaffExperience",addPayroll:"api/branchapi/staff/addstaffpayroll",editPayroll:"api/branchapi/staff/editstaffpayroll",uploadProfile:"api/branchapi/staff/uploadstaffProfilepicture",uploadDocuments:"api/branchapi/staff/uploadDocuments"},master:{shift:{dropdown:"api/branchapi/generalSettings/shiftDropdown",table:"api/branchapi/generalSettings/shiftTable",add:"api/branchapi/generalSettings/shiftTable",add:"api/branchapi/generalSettings/addshift",edit:"api/branchapi/generalSettings/addshift",edit:"api/branchapi/generalSettings/editshift",remove:"api/branchapi/generalSettings/deleteshift",show:"api/branchapi/generalSettings/shiftShowdata"},department:{dropdown:"api/branchapi/humanResource/departmentDropdown",table:"api/branchapi/humanResource/departmenttypeTable",add:"api/branchapi/humanResource/adddepartment",edit:"api/branchapi/humanResource/editdepartment",remove:"api/branchapi/humanResource/deletedepartment",show:"api/branchapi/humanResource/departmentShowdata"},designation:{dropdown:"api/branchapi/humanResource/designationDropdown",table:"api/branchapi/humanResource/designationTable",add:"api/branchapi/humanResource/adddesignation",edit:"api/branchapi/humanResource/editdesignation",remove:"api/branchapi/humanResource/deletedesignation",show:"api/branchapi/humanResource/designationShowdata"},leaveType:{dropdown:"api/branchapi/humanResource/leavetypeDropdown",table:"api/branchapi/humanResource/LeavetypeTable",add:"api/branchapi/humanResource/addleavetype",edit:"api/branchapi/humanResource/editleavetype",remove:"api/branchapi/humanResource/deleteleavetype",show:"api/branchapi/humanResource/leavetypeShowdata"}},leave:{table:"api/branchapi/humanResource/LeaveTable",apply:"api/branchapi/humanResource/applyLeave",requestTable:"api/branchapi/humanResource/leaverequestTable",approveRequest:"api/branchapi/humanResource/approveleaveRequest"},attendance:{staffListForAttendance:"api/staff/attendence/stafflistforAttendence",staffDropdownByRole:"api/staff/attendence/getStaffDropDownByRoleId",addAttendanceToStaffByBranch:"api/staff/attendence/addattendencetoStaffbyBranch",manualAttendance:"api/staff/attendence/staffMenualAttendance",staffShiftByStaffId:"api/branchapi/staff/getStaffShiftByStaffId",dailyAttendance:"api/staff_attendance/attendance/report/daily",dailyAttendanceMultipleShift:"api/staff/attendence/dailyAttendanceMultipleShift"},attendanceReport:{monthlyStaffReport:"api/AttendenceReport/staffmonthlyAttendenceReport_new",staffAttendanceList:"api/AttendenceReport/staffAttendanceList",overallStaffReport:"api/staff/attendence/getAlloverAttendenceReportofStaff"},payroll:{monthlyGraph:"api/branchapi/reportGraph/monthlyPayroleReportgraph",staffPayrollByStaffId:"api/branchapi/humanResource/getStaffPayroleByStaffID",generatePayslip:"api/branchapi/humanResource/generatePayslip",payrollByRole:"api/branchapi/humanResource/getpayrolebyRole",monthlyReport:"api/branchapi/humanResource/monthlyPayRolereport"}},io=()=>Sh(bt(),Me.upload),vh=async({baseUrl:t,page:a=1,perPage:s=10},r)=>{const l=t.includes("?")?"&":"?",o=`${t}${l}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(s))}`;return K(o,is(r))},kt=async(t,a,s)=>Ne(t,a,is(s)),Vt=async(t,a,s)=>We(t,a,is(s)),ln=async(t,a,s)=>He(t,a,is(s)),Xt=Me.staff,wh=Me.master.shift.dropdown,_h=Me.master.department.dropdown,Ch=Me.master.designation.dropdown,Ah=Me.roleDropdown,Dh=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},lo=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},Th=(t,a)=>{const s=`${t||""}`.trim();if(!s)return"";if(/^https?:\/\//i.test(s))return s;const r=lo(a),l=s.startsWith("/")?s.slice(1):s;return Dh(Ke(),`uploads/school_${r}/staff/Profile_picture/${l}`)},Rh=t=>/^https?:\/\//i.test(String(t??""))||String(t??"").startsWith("data:"),Ln=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Ih=t=>Ln(t).map(s=>{if(s?.value!==void 0&&s?.label!==void 0)return{...s,value:String(s.value),label:String(s.label)};const r=String(s?.shift_id??s?.id??s?.value??""),l=String(s?.shift_name??s?.label??s?.name??s?.title??r);return{...s,value:r,label:l}}),kh=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",Oa={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Ai=[{value:"A+",label:"A+"},{value:"A-",label:"A-"},{value:"B+",label:"B+"},{value:"B-",label:"B-"},{value:"O+",label:"O+"},{value:"O-",label:"O-"},{value:"AB+",label:"AB+"},{value:"AB-",label:"AB-"}],Di={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Ph({token:t,mode:a,staffId:s,initialValues:r,onSubmitted:l}){const[o,d]=i.useState(!1),c=i.useMemo(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings"))}catch{return null}},[]),g=String(c?.multiple_shift??"").toLowerCase()==="yes",[y,p]=i.useState(r?.roleValue??null),[m,A]=i.useState(r?.departmentValue??null),[C,b]=i.useState(r?.designationValue??null),[f,x]=i.useState(r?.genderValue??null),[R,k]=i.useState(r?.shiftValue??(g?[]:null)),[O,D]=i.useState(r?.dob?te(r.dob):null),[_,u]=i.useState(r?.doj?te(r.doj):null),[h,S]=i.useState(r?.file??""),[E,F]=i.useState(r?.bloodGroup??"");i.useEffect(()=>{r&&(p(r?.roleValue??null),A(r?.departmentValue??null),b(r?.designationValue??null),x(r?.genderValue??null),k(r?.shiftValue??(g?[]:null)),D(r?.dob?te(r.dob):null),u(r?.doj?te(r.doj):null),S(r?.file??""),F(r?.bloodGroup??""))},[r,g]);const{data:q}=H(t?[wh,t]:null,([M,L])=>K(M,L)),{data:T}=H(t?[_h,t]:null,([M,L])=>K(M,L)),{data:U}=H(t?[Ch,t]:null,([M,L])=>K(M,L)),{data:j}=H(t?[Ah,t]:null,([M,L])=>K(M,L)),{data:P}=H(t?[Xt.lastEmpNo,t]:null,([M,L])=>K(M,L)),I=i.useMemo(()=>Ih(q),[q]),N=i.useMemo(()=>Ln(T),[T]),V=i.useMemo(()=>Ln(U),[U]),W=i.useMemo(()=>Ln(j),[j]),B=i.useMemo(()=>{const M=P?.data?.emp_number??P?.emp_number??P?.data??"";return String(M??"")},[P]),$=async M=>{M.preventDefault(),d(!0);const L=new FormData(M.target);L.set("role",y?.value??y??""),L.set("department",m?.value??m??""),L.set("designation",C?.value??C??""),L.set("gender",f?.value??f??""),L.set("dob",O?O.format("YYYY-MM-DD"):""),L.set("doj",_?_.format("YYYY-MM-DD"):""),log.e("Shift_Value:",R,"Multiple Shift:",g),g?(L.delete("shift_id"),(Array.isArray(R)?R:[]).forEach(se=>{L.append("shift_id[]",se?.value??se??"")})):L.set("shift_id",R?.value??R??""),h&&L.set("file",h);try{const Y=a==="edit"&&s,se=Y?Xt.editBasic:Xt.addBasic;Y&&L.set("staff_id",String(s));const X=Y?await Vt(se,L,t):await kt(se,L,t),G=X?.ID??X?.id??s??null;w.success("Success!",{duration:1e3}),l?.({staffId:G,basic:{roleValue:y,departmentValue:m,designationValue:C,genderValue:f,shiftValue:R,dob:O,doj:_,file:h}})}catch(Y){w.error(Y?.response?.data?.msg??Y?.message??"Failed.",{duration:1e3})}finally{d(!1)}};return e.jsx("form",{onSubmit:$,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(z,{type:"number",name:"emp_number",label:"EMP No",defaultValue:r?.emp_number??B,required:!0}),e.jsx(z,{type:"text",name:"f_name",label:"First Name",defaultValue:r?.f_name??"",required:!0}),e.jsx(z,{type:"text",name:"l_name",label:"Last Name",defaultValue:r?.l_name??"",required:!0}),e.jsx(z,{type:"text",name:"pan_no",label:"PAN",defaultValue:r?.pan_no??"",pattern:"[A-Z]{5}[0-9]{4}[A-Z]",title:"Enter valid PAN (e.g., ABCDE1234D)"}),e.jsx(z,{type:"text",name:"adhar_no",label:"Aadhar",defaultValue:r?.adhar_no??"",pattern:"[0-9]{12}",title:"Enter 12-digit Aadhaar number"}),e.jsx(Q,{label:"Role",options:W,value:y,onChange:M=>p(M??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(Q,{label:"Department",options:N,value:m,onChange:M=>A(M??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(Q,{label:"Designation",options:V,value:C,onChange:M=>b(M??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(Q,{label:"Gender",options:[{value:"Male",label:"Male"},{value:"Female",label:"Female"},{value:"Other",label:"Other"}],value:f,onChange:M=>x(M??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(z,{type:"email",name:"email",label:"Email",defaultValue:r?.email??"",title:"Enter a valid email address"}),e.jsxs("div",{children:[e.jsx("div",{style:Oa,children:"DOB"}),e.jsx(n.DatePicker,{value:O,onChange:M=>D(M),style:Di,placeholder:"Select DOB"})]}),e.jsxs("div",{children:[e.jsx("div",{style:Oa,children:"DOJ"}),e.jsx(n.DatePicker,{value:_,onChange:M=>u(M),style:Di,placeholder:"Select DOJ"})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Blood Group",options:Ai,value:Ai.find(M=>M.value===E)??null,onChange:M=>F(M?.value??""),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1}),e.jsx("input",{type:"hidden",name:"bloodGroup",value:E})]}),e.jsx(z,{type:"text",name:"contact_no",label:"Contact No",defaultValue:r?.contact_no??"",required:!0,pattern:"[0-9]{10}",title:"Enter 10-digit contact number"}),e.jsx(z,{type:"text",name:"education",label:"Education",defaultValue:r?.education??""}),e.jsxs("div",{children:[e.jsx("div",{style:Oa,children:"Shift"}),e.jsx(Q,{options:I,value:Array.isArray(R)&&g?I.filter(M=>R.some(L=>String(L?.value??L)===String(M?.value??M))):I.find(M=>String(R?.value??R)===String(M?.value??M))??(R&&!g?R:null),onChange:M=>k(M??(g?[]:null)),isMulti:g,closeMenuOnSelect:!g,hideSelectedOptions:!1,allowSelectAll:!1,required:!0})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("div",{style:Oa,children:"Profile Picture"}),e.jsxs("div",{style:{display:"grid",gap:8},children:[h?e.jsx("img",{src:Rh(h)?h:Th(h,t),alt:"profile-preview",style:{width:88,height:88,objectFit:"cover",borderRadius:8,border:"1px solid #d9d9d9",background:"#fafafa"}}):null,e.jsx(n.Upload,{action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${lo(t)}/staff/Profile_picture`},headers:t?{Authorization:t}:void 0,maxCount:1,accept:"image/*",onChange:M=>{if(M?.file?.status==="done"){const L=kh(M?.file?.response);L&&S(L)}M?.file?.status==="removed"&&S("")},children:e.jsx(n.Button,{type:"link",style:{paddingLeft:0},children:h?"Change":"Upload"})})]}),e.jsx("input",{type:"hidden",name:"file",value:h??""})]}),e.jsxs("div",{style:{gridColumn:"1 / -1"},children:[e.jsx("div",{style:Oa,children:"Address"}),e.jsx("textarea",{name:"address",rows:3,defaultValue:r?.address??"",placeholder:"Address",style:{width:"100%",resize:"vertical",padding:10,border:"1px solid #d9d9d9",borderRadius:8,outline:"none"}})]}),e.jsx("div",{style:{gridColumn:"1 / -1",display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:o?"Saving...":"Save & Next",color:"primary",disabled:o,loading:o})})]})})}const Oh=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},oo=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},Mh=t=>/^https?:\/\//i.test(String(t??""))||String(t??"").startsWith("data:"),Eh=(t,a)=>{const s=`${t||""}`.trim();if(!s)return"";if(Mh(s))return s;const r=oo(a),l=s.startsWith("/")?s.slice(1):s;return Oh(Ke(),`uploads/school_${r}/staff/document/${l}`)},Cn={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Ti={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},$h=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",Ri=t=>{if(!t)return null;const a=te(t);return a.isValid()?a:null};function Fh({token:t,mode:a,staffId:s,initialRows:r,onSubmitted:l,onBack:o}){const[d,c]=i.useState(!1),[g,y]=i.useState(()=>(Array.isArray(r)&&r.length?r:[{name:"",from:null,to:null,image:""}]).map(x=>({name:x?.name??"",from:Ri(x?.from_date??x?.from),to:Ri(x?.to_date??x?.to),image:x?.image??""}))),p=i.useMemo(()=>t?{Authorization:t}:void 0,[t]),m=(f,x)=>{y(R=>R.map((k,O)=>O===f?{...k,...x}:k))},A=()=>y(f=>[...f,{name:"",from:null,to:null,image:""}]),C=f=>y(x=>x.length<=1?x:x.filter((R,k)=>k!==f)),b=async f=>{if(f.preventDefault(),c(!0),!s){w.error("Missing staff id.",{duration:1e3}),c(!1);return}const x=new FormData;x.append("staff_id",String(s)),g.forEach((R,k)=>{x.append(`experience[${k}][name]`,String(R?.name??"")),x.append(`experience[${k}][from]`,R?.from?R.from.format("YYYY-MM-DD"):""),x.append(`experience[${k}][to]`,R?.to?R.to.format("YYYY-MM-DD"):""),x.append(`experience[${k}][image]`,String(R?.image??""))});try{const R=a==="edit",k=R?Xt.editExperience:Xt.addExperience,O=R?await Vt(k,x,t):await kt(k,x,t);w.success("Success!",{duration:1e3}),l?.({experience:g,result:O})}catch(R){w.error(R?.response?.data?.msg??R?.message??"Failed.",{duration:1e3})}finally{c(!1)}};return e.jsx("form",{onSubmit:b,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[g.map((f,x)=>e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end",border:"1px solid #eee",borderRadius:12,padding:14},children:[e.jsxs("div",{children:[e.jsx("div",{style:Cn,children:"Name"}),e.jsx("input",{value:f.name,onChange:R=>m(x,{name:R.target.value}),placeholder:"Company / School",style:{width:"100%",height:40,border:"none",borderBottom:"1px solid #d9d9d9",outline:"none",background:"transparent"}})]}),e.jsxs("div",{children:[e.jsx("div",{style:Cn,children:"From"}),e.jsx(n.DatePicker,{value:f.from,onChange:R=>m(x,{from:R}),style:Ti})]}),e.jsxs("div",{children:[e.jsx("div",{style:Cn,children:"To"}),e.jsx(n.DatePicker,{value:f.to,onChange:R=>m(x,{to:R}),style:Ti})]}),e.jsxs("div",{children:[e.jsx("div",{style:Cn,children:"Document"}),e.jsx(n.Upload,{maxCount:1,action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${oo(t)}/staff/document`},headers:p,onChange:R=>{if(R?.file?.status==="done"){const k=$h(R?.file?.response);k&&m(x,{image:k})}R?.file?.status==="removed"&&m(x,{image:""})},children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),children:"Upload"})}),!!f.image&&e.jsx("a",{href:Eh(f.image,t),target:"_blank",rel:"noopener noreferrer",style:{fontSize:12,color:"#1677ff",textDecoration:"underline",cursor:"pointer"},children:"View document"})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:e.jsx(n.Button,{type:"text",icon:e.jsx(ee.DeleteOutlined,{}),danger:!0,onClick:()=>C(x),disabled:g.length<=1})})]},`exp-${x}`)),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",gap:12},children:[e.jsx(n.Button,{icon:e.jsx(ee.PlusOutlined,{}),onClick:A,children:"Add Experience"}),e.jsxs("div",{style:{display:"flex",gap:12},children:[e.jsx(n.Button,{onClick:o,children:"Back"}),e.jsx(ne,{type:"submit",value:d?"Saving...":"Save & Next",color:"primary",disabled:d,loading:d})]})]})]})})}const Ii=(t,a=[])=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){const s=a.length?a:["allowances","Allowances","dedection","Dedection","deductions","Deductions"],r=[t];t?.data&&typeof t.data=="object"&&r.push(t.data);for(const o of r)for(const d of s){const c=o?.[d]??o?.[d.toLowerCase()]??o?.[d.toUpperCase()];if(Array.isArray(c)&&c.length>0)return c}const l=t?.data;if(Array.isArray(l)&&l.length>0)return l}return[]},Ma=[{label:"Per Hour",value:"Hourly"},{label:"Per Lecture",value:"lecture_wise"}];function Uh({token:t,mode:a,staffId:s,initialValues:r,onSubmitted:l,onBack:o}){const[d,c]=i.useState(!1),[g,y]=i.useState(r?.type??"Permanent"),[p,m]=i.useState(r?.salary_type??Ma[0]?.value),[A,C]=i.useState(Number(r?.amount??0)),[b,f]=i.useState(Number(r?.basic_pay)),[x,R]=i.useState(r?.declarationPERyear??""),{data:k}=H(t?[wc,t]:null,([S,E])=>K(S,E),{revalidateOnFocus:!1}),O=i.useMemo(()=>r?.allowances&&Array.isArray(r.allowances)&&r.allowances.length>0?r.allowances:Ii(k,["allowances","Allowances"]),[k,r]),D=i.useMemo(()=>r?.deductions&&Array.isArray(r.deductions)&&r.deductions.length>0?r.deductions:Ii(k,["dedection","Dedection","deductions","Deductions"]),[k,r]),_=i.useMemo(()=>{const S=Number(b||0),E=(Array.isArray(O)?O:[]).map(j=>{const P=j?.amount_type??j?.amountType??j?.type??"",I=Number(j?.Amount??j?.amount??0),V=String(P).trim().toLowerCase()==="flat"?I:Number(S)/100*Number(I||0);return{...j,value:Number.isFinite(V)?V:0}}),F=(Array.isArray(D)?D:[]).map(j=>{const P=j?.amount_type??j?.amountType??j?.type??"",I=Number(j?.Amount??j?.amount??0),V=String(P).trim().toLowerCase()==="flat"?I:Number(S)/100*Number(I||0);return{...j,value:Number.isFinite(V)?V:0}}),q=E.reduce((j,P)=>j+Number(P?.value||0),0),T=F.reduce((j,P)=>j+Number(P?.value||0),0),U=Math.max(0,Number(S)+q-T);return{allowances:E,deductions:F,netAmount:U}},[O,D,b]),u=async S=>{if(S.preventDefault(),c(!0),!s){w.error("Missing staff id.",{duration:1e3}),c(!1);return}const E=new FormData;E.append("staff_id",String(s)),E.append("type",g),g==="Nonpermanent"?(E.append("salary_type",p??""),E.append("amount",String(A||"")),E.append("Allowances",JSON.stringify([])),E.append("Dedection",JSON.stringify([]))):(E.append("basic_pay",String(b||"")),E.append("declarationPERyear",String(x??"")),E.append("Allowances",JSON.stringify(_.allowances||[])),E.append("Dedection",JSON.stringify(_.deductions||[])),E.append("amount",String(_.netAmount||0)));try{const F=a==="edit",q=F?Xt.editPayroll:Xt.addPayroll,T=F?await Vt(q,E,t):await kt(q,E,t);w.success("Success!",{duration:1e3}),l?.({payroll:{staffType:g,salaryType:p,amount:A,basicPay:b,declaration:x},result:T})}catch(F){w.error(F?.response?.data?.msg??F?.message??"Failed.",{duration:1e3})}finally{c(!1)}},h=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title",ellipsis:!0},{title:"Amount",key:"amount",width:160,render:(S,E)=>`${E?.Amount??""} / ${E?.amount_type??""}`},{title:"Value",dataIndex:"value",key:"value",width:120}],[]);return e.jsx("form",{onSubmit:u,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{label:"Employment Type",options:[{label:"Permanent",value:"Permanent"},{label:"Non Permanent",value:"Nonpermanent"}],value:{label:g==="Nonpermanent"?"Non Permanent":"Permanent",value:g},onChange:S=>y(S?.value??"Permanent"),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),g==="Nonpermanent"?e.jsxs(e.Fragment,{children:[e.jsx(Q,{label:"Type",options:Ma,value:Ma.find(S=>S.value===p)??Ma[0],onChange:S=>m(S?.value??Ma[0]?.value),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(z,{type:"number",label:"Amount",value:A,onChange:S=>C(Number(S.target.value||0)),required:!0})]}):e.jsxs(e.Fragment,{children:[e.jsx(z,{type:"number",label:"Basic Pay",value:b,onChange:S=>f(Number(S.target.value||0)),required:!0}),e.jsx(z,{type:"text",label:"IT Declarations/Year",value:x,onChange:S=>R(S.target.value)}),e.jsx(z,{type:"number",label:"Net Amount",value:_.netAmount,disabled:!0})]})]}),g==="Permanent"&&e.jsxs(e.Fragment,{children:[e.jsx(n.Card,{size:"small",title:e.jsx("div",{style:{fontWeight:600},children:"Allowances"}),children:e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(S,E)=>`${S?.title??"a"}-${E}`,columns:h,dataSource:_.allowances,pagination:!1})}),e.jsx(n.Card,{size:"small",title:e.jsx("div",{style:{fontWeight:600},children:"Deductions"}),children:e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(S,E)=>`${S?.title??"d"}-${E}`,columns:h,dataSource:_.deductions,pagination:!1})})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:e.jsx(ne,{type:"submit",value:d?"Finishing...":"Finish",color:"primary",disabled:d,loading:d})})]})})}const Nh=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function co({token:t,mode:a="add",staffId:s,onFinished:r}){const[l,o]=i.useState(0),[d,c]=i.useState(s??null),[g,y]=i.useState(null),[p,m]=i.useState(null),[A,C]=i.useState(null),b=a==="edit"?s??d:null,f=i.useMemo(()=>b?`${Me.staff.basicById}?staff_id=${encodeURIComponent(String(b))}`:null,[b]),x=i.useMemo(()=>b?`${Me.staff.experienceById}?staff_id=${encodeURIComponent(String(b))}`:null,[b]),R=i.useMemo(()=>b?`${Me.staff.payrollById}?staff_id=${encodeURIComponent(String(b))}`:null,[b]),k=H(t&&f?[f,t]:null,([j,P])=>K(j,P)),O=H(t&&x?[x,t]:null,([j,P])=>K(j,P)),D=H(t&&R?[R,t]:null,([j,P])=>K(j,P)),_=k?.data,u=O?.data,h=D?.data,S=!!k?.isLoading;O?.isLoading,D?.isLoading;const E=i.useMemo(()=>{try{const j=JSON.parse(localStorage.getItem("genrall_settings")??"null");return String(j?.multiple_shift??"").toLowerCase()==="yes"}catch{return!1}},[]),F=i.useMemo(()=>{const j=Nh(_)[0]??_?.data??_??null;if(!j)return null;let P=null;const I=j?.shift_id??j?.shift_ids??j?.shift;if(I)if(E){const N=String(I).split(",").map(V=>V.trim()).filter(Boolean);N.length>0&&(P=N.map(V=>({value:String(V),label:V})))}else j?.shift_id?P={value:String(j.shift_id),label:j?.shift??""}:j?.shift&&(P={value:String(j.shift),label:j.shift});return{emp_number:j?.emp_number??j?.empNo??j?.employee_id??"",f_name:j?.f_name??j?.firstname??j?.first_name??j?.name??"",l_name:j?.l_name??j?.lastname??j?.last_name??j?.surname??"",pan_no:j?.pan_no??j?.pan??"",adhar_no:j?.adhar_no??j?.aadhar_no??"",email:j?.email??j?.email_id??"",dob:j?.dob??j?.date_of_birth??"",doj:j?.doj??j?.date_of_joining??j?.joining_date??"",bloodGroup:j?.bloodGroup??j?.blood_group??"",contact_no:j?.contact_no??j?.phone??j?.contact??"",education:j?.education??j?.qualification??"",address:j?.address??j?.bussiness_address??j?.business_address??"",file:j?.file??j?.profile_picture??j?.profile_pic??j?.image??"",genderValue:j?.gender?{value:j.gender,label:j.gender}:null,roleValue:j?.role_id?{value:String(j.role_id),label:j?.role??""}:j?.fk_roleid?{value:String(j.fk_roleid),label:j?.role??""}:null,departmentValue:j?.department?{value:String(j.department),label:j?.departments??""}:null,designationValue:j?.designation?{value:String(j.designation),label:j?.designations??""}:null,shiftValue:P}},[_,E]),q=i.useMemo(()=>{const j=u?.data??u??null;return(Array.isArray(j?.experience)?j.experience:Array.isArray(j)?j:[]).map(I=>({name:I?.name??"",from:I?.from_date??I?.from??"",to:I?.to_date??I?.to??"",image:I?.image??""}))},[u]),T=i.useMemo(()=>{const j=h?.data??h??null,I=(Array.isArray(j)?j:j?.data&&Array.isArray(j.data)?j.data:[])[0]??null;if(!I)return null;const N=h?.allowances??j?.allowances??[],V=h?.dedection??j?.dedection??h?.deductions??j?.deductions??[];return{type:I?.type??"Permanent",salary_type:I?.salary_type??"Hourly",amount:Number(I?.amount??0),basic_pay:Number(I?.basic_pay??0),declarationPERyear:I?.declarationPERyear??I?.it_declarationPERyear??"",allowances:Array.isArray(N)?N:[],deductions:Array.isArray(V)?V:[]}},[h]),U=i.useMemo(()=>[{title:"Basic"},{title:"Experience"},{title:"Payroll"}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:a==="edit"?"Edit Staff":"Add Staff"}),children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(n.Steps,{current:l,items:U}),l===0&&(a==="edit"&&S?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",padding:40},children:e.jsx(n.Spin,{tip:"Loading staff data...",size:"large"})}):e.jsx(Ph,{token:t,mode:a,staffId:b,initialValues:F,onSubmitted:({staffId:j})=>{j&&c(j),o(1)}})),l===1&&e.jsx(Fh,{token:t,mode:a,staffId:b??d,initialRows:q,onBack:()=>o(0),onSubmitted:()=>o(2)}),l===2&&e.jsx(Uh,{token:t,mode:a,staffId:b??d,initialValues:T,onBack:()=>o(1),onSubmitted:()=>{w.success("Completed.",{duration:1e3}),r?.({staffId:b??d}),o(0),a!=="edit"&&(c(null),y(null),m(null),C(null))}})]})})]})}function Bh({token:t}){return e.jsx(co,{token:t,mode:"add"})}const Lh=({token:t})=>e.jsx(Bh,{token:t}),An=Me.staff,qh=Me.roleDropdown,zh=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Yh=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function Vh({token:t,onNavigate:a}){const[s,r]=i.useState({page:1,rowsPerPage:10}),[l,o]=i.useState(""),[d,c]=i.useState(""),[g,y]=i.useState(!1),[p,m]=i.useState(null),{data:A}=H(t?[qh,t]:null,([u,h])=>K(u,h)),C=i.useMemo(()=>zh(A),[A]),b=i.useMemo(()=>{const u=s.page,h=s.rowsPerPage,S=l&&!d?`${An.searchByRole}?role_id=${encodeURIComponent(String(l))}`:d?`${An.searchByKeywords}?key=${encodeURIComponent(String(d))}`:An.list,E=S.includes("?")?"&":"?";return`${S}${E}page=${encodeURIComponent(String(u))}&per_page=${encodeURIComponent(String(h))}`},[s.page,s.rowsPerPage,d,l]),{isLoading:f,error:x,data:R,mutate:k}=H(t?[b,t]:null,([u,h])=>K(u,h)),O=i.useMemo(()=>Yh(R),[R]),D=async u=>{const h=u?.id??u?.fk_staffID??u?.staff_id;if(h)try{await ln(An.deactivate,h,t),w.success("Success! Staff deactivated.",{duration:1e3}),await k()}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to deactivate staff.",{duration:1e3})}},_=i.useMemo(()=>[{title:"Emp ID",dataIndex:"employee_id",key:"employee_id",width:120,responsive:["lg"]},{title:"Name",key:"name",ellipsis:!0,render:(u,h)=>`${h?.name||""} ${h?.surname||""}`.trim()},{title:"Role",dataIndex:"role",key:"role",ellipsis:!0,responsive:["md"]},{title:"Department",dataIndex:"departments",key:"departments",ellipsis:!0,responsive:["md"]},{title:"Phone",dataIndex:"contact_no",key:"contact_no",ellipsis:!0,responsive:["md"]},{title:"Status",key:"steps",width:140,responsive:["lg"],render:(u,h)=>{const S=Number(h?.steps??h?.status??1),E=S<=1?30:S===2?60:100;return e.jsx(n.Progress,{percent:E,size:"small",format:F=>`${F}%`,style:{margin:"-4px 0"}})}},{title:"Action",key:"action",width:110,fixed:"right",render:(u,h)=>e.jsxs(n.Space,{size:"middle",children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>{typeof a=="function"?a("staff-edit",h):(m(h?.id??h?.fk_staffID??h?.staff_id??""),y(!0))}}),e.jsx(n.Popconfirm,{title:"Delete staff?",description:"Are you sure you want to deactivate this staff member?",okText:"Yes",cancelText:"No",onConfirm:()=>D(h),children:e.jsx(n.Button,{type:"text",danger:!0,size:"small",icon:e.jsx(ee.DeleteOutlined,{}),style:{padding:2}})})]})}],[t]);return e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs("div",{style:{gridTemplateColumns:"repeat(auto-fit, minmax(320px, 1fr))",gap:20,alignItems:"start"},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:2,style:{margin:0},children:"Filters"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:[{value:"",label:"All Roles"},...C],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Role",placeholder:"Role",allowSelectAll:!1,onChange:u=>{o(u?.value??""),r(h=>({...h,page:1}))}}),e.jsx(z,{type:"text",label:"Keyword",value:d,onChange:u=>c(u.target.value),placeholder:"Search by keywords"}),e.jsx(ne,{type:"button",value:"Refresh",onClick:()=>k()})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:8,style:{margin:0},children:"Staff Directory"}),children:e.jsx(n.Table,{bordered:!0,size:"small",loading:f,rowKey:u=>String(u?.id??u?.fk_staffID??u?.staff_id??Math.random()),columns:_,dataSource:O,pagination:{current:s.page,pageSize:s.rowsPerPage,onChange:(u,h)=>r({page:u,rowsPerPage:h}),showSizeChanger:!0},scroll:{x:"max-content"}})})]})]}),e.jsx(n.Drawer,{open:g,onClose:()=>{y(!1),m(null)},title:"Edit Staff",width:"80%",destroyOnClose:!0,footer:null,children:p!=null&&e.jsx(co,{token:t,mode:"edit",staffId:String(p),onFinished:()=>{y(!1),m(null),k()}})})]})}const Wh=({token:t,onNavigate:a})=>e.jsx(Vh,{token:t,onNavigate:a}),Hh=Me.attendance,Kh=Me.roleDropdown,ki=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Dn={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Pi={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Gh({token:t,open:a,onClose:s,roleId:r,onSaved:l}){const[o,d]=i.useState(null),[c,g]=i.useState(""),[y,p]=i.useState(te()),[m,A]=i.useState(te()),[C,b]=i.useState(te()),f=i.useMemo(()=>r?`${Me.attendance.staffDropdownByRole}?role_id=${encodeURIComponent(String(r))}`:null,[r]),{data:x}=H(t&&f?[f,t]:null,([u,h])=>K(u,h)),R=i.useMemo(()=>ki(x),[x]),{trigger:k,data:O}=rt(t?Me.attendance.staffShiftByStaffId:null,(u,{arg:h})=>Qt(u,{arg:h},t)),D=i.useMemo(()=>ki(O),[O]),_=async()=>{if(!o?.value){w.error("Select staff.",{duration:1e3});return}if(!c){w.error("Select shift.",{duration:1e3});return}const u=new FormData;u.set("staffID",String(o.value)),u.set("shift_id",String(c)),u.set("attendance_date",y?y.format("YYYY-MM-DD"):""),u.set("intime",m?m.format("h:mm a"):""),u.set("outime",C?C.format("h:mm a"):"");try{await kt(Me.attendance.manualAttendance,u,t),w.success("Success!",{duration:1e3}),l?.(),s?.(),d(null),g(""),p(te()),A(te()),b(te())}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed.",{duration:1e3})}};return e.jsx(n.Modal,{open:a,onCancel:s,footer:null,destroyOnClose:!0,title:"Attendance",width:620,children:e.jsx(n.Card,{children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(Q,{label:"Staff",options:R,value:o,onChange:async u=>{if(d(u??null),g(""),u?.value&&k)try{await k({staff_id:u.value})}catch{}},closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsxs("div",{children:[e.jsx("div",{style:Dn,children:"Shift"}),e.jsx(n.Radio.Group,{value:c,onChange:u=>g(u.target.value),style:{display:"grid",gap:8},children:D.map(u=>e.jsx(n.Radio,{value:u?.value,children:u?.label??u?.name??u?.title??String(u?.value??"")},String(u?.value)))})]}),e.jsxs("div",{children:[e.jsx("div",{style:Dn,children:"Date"}),e.jsx(n.DatePicker,{value:y,onChange:u=>u&&p(u),style:{width:"100%"}})]}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:16},children:[e.jsxs("div",{children:[e.jsx("div",{style:Dn,children:"Start Time"}),e.jsx(n.TimePicker,{value:m,onChange:u=>u&&A(u),use12Hours:!0,format:"h:mm a",style:Pi})]}),e.jsxs("div",{children:[e.jsx("div",{style:Dn,children:"End Time"}),e.jsx(n.TimePicker,{value:C,onChange:u=>u&&b(u),use12Hours:!0,format:"h:mm a",style:Pi})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:[e.jsx(n.Button,{onClick:s,children:"Cancel"}),e.jsx(ne,{type:"button",value:"Save",color:"primary",onClick:_})]})]})})})}const Jh=({tableRef:t,excelDisabled:a})=>{const s=new Date().getTime(),r=ea.useReactToPrint({content:()=>t?.current});return e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsxs(n.Row,{gutter:8,children:[e.jsx(n.Col,{children:e.jsx(n.Button,{type:"text",icon:e.jsx(ee.PrinterOutlined,{style:{color:"#5080f8"}}),onClick:r})}),e.jsx(n.Col,{children:a?e.jsx(n.Button,{type:"text",icon:e.jsx(ee.FileTextOutlined,{style:{color:"gray"}}),onClick:()=>w.error("You must save attendance before download",{duration:2e3})}):e.jsx(to.DownloadTableExcel,{filename:s,sheet:"users",currentTableRef:t?.current,children:e.jsx(n.Button,{type:"text",icon:e.jsx(ee.FileTextOutlined,{style:{color:"#5080f8"}})})})})]})})})},Qh=(t,a)=>{const s=t?.data?.data??t?.data??t??null;return s?a==="student"?Array.isArray(s?.student)?s.student:[]:Array.isArray(s?.staff)?s.staff:[]:[]},Xh=t=>{const a=t?.pagination?.total_rows??t?.data?.pagination?.total_rows??t?.total??t?.total_rows,s=Number(a);return Number.isFinite(s)&&s>=0?s:0},Zh=(t,a)=>{const s=t?.data?.data??t?.data??t??null;return s?a==="student"?{sunday:String(s?.sunday??"").toLowerCase()==="yes",holiday:String(s?.holiday??"").toLowerCase()==="yes"}:{sunday:!!s?.sunday,holiday:!!s?.holiday}:{sunday:!1,holiday:!1}};function ef({token:t,url:a,columns:s,reload:r,setReload:l,saveBtnRef:o,setSaveBtnDisabled:d,date:c,type:g="staff"}){const y=i.useRef(null),[p,m]=i.useState({page:0,rowsPerPage:10}),[A,C]=i.useState(!1),[b,f]=i.useState(!1),[x,R]=i.useState(null),[k,O]=i.useState([]),[D,_]=i.useState({sunday:!1,holiday:!1}),[u,h]=i.useState(!0);i.useEffect(()=>{m(q=>({...q,page:0}))},[a]),i.useEffect(()=>{let q=!0;return(async()=>{if(!(!t||!a)){C(!0);try{const U=String(a).includes("?")?"&":"?",j=`${a}${U}page=${p.page+1}&per_page=${p.rowsPerPage}`,P=await K(j,t);if(!q)return;R(P),P?.Status==="Success"?(d?.(!1),O(Qh(P,g)),_(Zh(P,g))):(d?.(!0),O([]),_({sunday:!1,holiday:!1}))}catch{if(!q)return;d?.(!0),O([])}finally{q&&C(!1)}}})(),()=>{q=!1}},[p.page,p.rowsPerPage,r,d,t,g,a]);const S=i.useMemo(()=>Xh(x),[x]);i.useEffect(()=>{const q=(Array.isArray(k)?k:[]).find(T=>T?.attendence_type_id===null);h(!!q)},[k]);const E=async()=>{if(t){f(!0);try{if(g==="staff"){const q=(Array.isArray(k)?k:[]).map(T=>({staff_id:T?.staff_id,attendence_type_id:T?.attendence_type_id?T.attendence_type_id:"1",in_time:T?.intime,out_time:T?.outtime,date:c}));await kt(Me.attendance.addAttendanceToStaffByBranch,q,t),w.success("Attendance saved successfully",{duration:2e3}),l?.(T=>!T)}else w.error("Student attendance save is not migrated yet.",{duration:2e3})}catch(q){w.error(q?.response?.data?.msg??q?.message??"Failed required dates",{duration:2e3})}finally{f(!1)}}},F=i.useMemo(()=>(Array.isArray(s)?s:[]).map(T=>T?.selector==="attendence_type_id"?{title:T?.name??"Attendance",dataIndex:T.selector,key:T.selector,render:U=>U==null||U===""?e.jsx(n.Tag,{color:"orange",children:"Not Set"}):String(U)==="1"?e.jsx(n.Tag,{color:"green",children:"Present"}):String(U)==="4"?e.jsx(n.Tag,{color:"red",children:"Absent"}):String(U)==="3"?e.jsx(n.Tag,{color:"orange",children:"Late"}):e.jsx(n.Tag,{children:String(U)})}:T?.selector==="snum"?{title:T?.name??"Sl",key:T.selector,render:(U,j,P)=>P+1}:{title:T?.name??T?.selector,dataIndex:T?.selector,key:T?.selector}),[s]);return e.jsxs("div",{style:{width:"100%"},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(n.Card,{children:[e.jsx(Jh,{tableRef:y,excelDisabled:u}),e.jsx(n.Modal,{open:b,footer:null,closable:!1,centered:!0,children:e.jsxs("div",{style:{display:"grid",placeItems:"center",gap:12,padding:12},children:[e.jsx(n.Spin,{size:"large"}),e.jsx("div",{children:"Please wait..."})]})}),D.sunday?e.jsx("div",{style:{textAlign:"center",fontWeight:600,padding:"16px 0"},children:"Weekly Off"}):D.holiday?e.jsx("div",{style:{textAlign:"center",padding:"16px 0"},children:e.jsx("div",{style:{fontWeight:700,marginBottom:6},children:"Holiday"})}):e.jsxs(e.Fragment,{children:[e.jsx("div",{ref:y,children:e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(q,T)=>String(q?.id??q?.staff_id??T),columns:F,dataSource:k,loading:A,pagination:{current:p.page+1,pageSize:p.rowsPerPage,total:S,showSizeChanger:!0,onChange:(q,T)=>m({page:q-1,rowsPerPage:T})},scroll:{x:"max-content"}})}),e.jsx("button",{type:"button",onClick:E,ref:o,style:{display:"none"},children:"hidden"})]})]})]})}const tf=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},af={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function nf({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(te().format("YYYY-MM-DD")),[o,d]=i.useState(!1),[c,g]=i.useState(null),[y,p]=i.useState(!1),[m,A]=i.useState(!0),[C,b]=i.useState(!1),f=i.useRef(null),{data:x}=H(t?[Kh,t]:null,([O,D])=>K(O,D)),R=i.useMemo(()=>tf(x),[x]),k=i.useMemo(()=>[{id:"1",name:"Staff Id",selector:"employee_id",sortable:!0},{id:"2",name:"Name",selector:"full_name",sortable:!0},{id:"4",name:"Contact",selector:"contact_no",sortable:!0},{id:"3",name:"Attendance",selector:"attendence_type_id",sortable:!0},{id:"5",name:"In Time",selector:"intime",sortable:!0},{id:"6",name:"Out Time",selector:"outtime",sortable:!0}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Staff Attendance"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:R,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Roles",placeholder:"Roles",allowSelectAll:!1,onChange:O=>s(O?.value??""),required:!0}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(n.DatePicker,{defaultValue:te(),onChange:O=>O&&l(O.format("YYYY-MM-DD")),style:af,allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:()=>{!a||!r||(g(`${Hh.staffListForAttendance}?role=${encodeURIComponent(String(a))}&date=${encodeURIComponent(String(r))}`),d(O=>!O))}})})]})}),e.jsxs(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Staff Attendance List"}),children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",gap:12,flexWrap:"wrap",marginBottom:12},children:[e.jsx(n.Button,{size:"small",type:y?"primary":"default",onClick:()=>p(O=>!O),children:y?"Marked":"Mark As Holiday"}),e.jsx(n.Button,{size:"small",type:"default",disabled:m,onClick:()=>b(!0),children:"Give Attendance"})]}),c?e.jsx(ef,{token:t,url:c,columns:k,reload:o,setReload:d,saveBtnRef:f,setSaveBtnDisabled:A,date:r,type:"staff",holidayChecked:y}):null]}),e.jsx(Gh,{token:t,open:C,onClose:()=>b(!1),roleId:a,onSaved:()=>d(O=>!O)})]})}const sf=({token:t})=>e.jsx(nf,{token:t}),Oi=Me.attendanceReport.monthlyStaffReport,rf=Me.roleDropdown,lf=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function of({token:t}){const a=i.useRef(null),[s,r]=i.useState(!1),[l,o]=i.useState([]),[d,c]=i.useState({role:"",rolllabel:"",year:"",month:""}),g=i.useMemo(()=>rr(5),[]),{data:y}=H(t?[rf,t]:null,([q,T])=>K(q,T)),p=i.useMemo(()=>lf(y),[y]),[m,A]=i.useState([]),[C,b]=i.useState(1),[f,x]=i.useState(!1),[R,k]=i.useState(!1),[O,D]=i.useState(null),_=i.useMemo(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings"))?.session_id??"1"}catch{return"1"}},[]),{trigger:u}=rt(t&&Oi?`${Oi}?page=${C}&per_page=3`:null,(q,{arg:T})=>Qt(q,{arg:T},t),{onSuccess:q=>{x(!1);const T=Array.isArray(q)?q:[];T.length>0&&A(U=>[...U||[],...T]),T.length>1?b(U=>U+1):k(!1)},onError:()=>{x(!1),k(!1)}});i.useEffect(()=>{R&&u&&O&&u(O)},[R,C,O,u]);const h=i.useMemo(()=>{const q=[{title:"Staff Id",dataIndex:"employee_id",key:"employee_id",align:"center"},{title:"Name",dataIndex:"full_name",key:"full_name",render:(T,U)=>e.jsx("span",{className:"attendanceFont",style:{cursor:"pointer",whiteSpace:"nowrap",color:"blue",textDecoration:"underline"},children:U?.full_name??""})}];return Array.isArray(m)&&m.length>0&&((m[0]?.monthly_data??[]).forEach((U,j)=>{q.push({title:j+1,align:"center",key:String(j+1),render:(P,I)=>{const N=I?.monthly_data?.[j]?.[0]?.data?.[0]??{},V=N?.intime??"",W=N?.outtime??"",B=N?.attendance_type??"";return e.jsx(n.Tooltip,{title:e.jsxs("div",{style:{fontSize:12},children:[e.jsxs("div",{children:["In Time ",V]}),e.jsxs("div",{children:["Out Time ",W]})]}),placement:"top",children:e.jsx("span",{className:"attendanceFont",style:{fontSize:10,display:"flex",justifyContent:"center"},children:st(B)})})}})}),q.push({title:"Total",key:"Total",render:(U,j)=>{const P=j?.monthly_data??[],I=P.filter(V=>V?.[0]?.data?.[0]?.attendance_type==="A").length,N=P.filter(V=>V?.[0]?.data?.[0]?.attendance_type==="P").length;return e.jsx("span",{className:"attendanceFont",children:e.jsxs("b",{children:["A : ",I," P : ",N]})})}})),q},[m]),S=i.useMemo(()=>[{label:"Present",el:st("P")},{label:"Absent",el:st("A")},{label:"Leave",el:st("L")},{label:"Weekly Off",el:st("W")},{label:"Holiday",el:st("H")}],[]),E=i.useMemo(()=>d.month?l.find(q=>q?.value==d.month)?.label??d.month??"--":"--",[d.month,l]),F=async q=>{if(q.preventDefault(),!d.role||!d.year||!d.month)return;b(1),x(!0),A([]);const T={session:_,year:d.year,month:d.month,day:"01",role:d.role};D(T),k(!0),await u?.(T)};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(n.Card,{className:"d-print-none",title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Attendance Report"}),children:e.jsx("form",{onSubmit:F,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:p,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Roles",allowSelectAll:!1,name:"role",required:!0,onChange:q=>c(T=>({...T,role:q?.value??"",rolllabel:q?.label??""}))}),e.jsx(Q,{options:g,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Year",allowSelectAll:!1,name:"year",required:!0,onChange:q=>{const T=ir(q?.value);o(T),r(U=>!U),c(U=>({...U,year:q?.label??""}))}}),e.jsx(Q,{options:l,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Month",allowSelectAll:!1,name:"month",required:!0,onChange:q=>c(T=>({...T,month:q?.value??""}))},`month-${s}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Monthly Attendance Report"}),children:e.jsxs("div",{ref:a,children:[e.jsx("div",{className:"print-only",children:e.jsx(It,{})}),e.jsxs("div",{style:{border:"1px solid #ddd",borderRadius:8,padding:16,marginBottom:24,backgroundColor:"#f8f9fa"},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr auto",gap:12,alignItems:"center"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:18,fontWeight:600,marginBottom:6},children:"Staff Attendance Summary"}),e.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:10,fontSize:13},children:[e.jsxs("div",{children:["Role: ",e.jsx("span",{style:{fontWeight:700},children:d.rolllabel||"--"})]}),e.jsxs("div",{children:["Year: ",e.jsx("span",{style:{fontWeight:700},children:d.year||"--"})]}),e.jsxs("div",{children:["Month: ",e.jsx("span",{style:{fontWeight:700},children:E})]})]})]}),e.jsx("div",{className:"d-print-none",style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(Ct,{data:{tableRef:a}})})]}),e.jsx("div",{style:{marginTop:14,paddingTop:14,borderTop:"1px solid #e0e0e0"},children:e.jsx("div",{style:{display:"flex",justifyContent:"center",flexWrap:"wrap",gap:12,fontSize:12},children:S.map(q=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsxs("div",{children:[q.label," :"]}),e.jsx("div",{children:q.el})]},q.label))})})]}),e.jsx(n.Skeleton,{active:!0,loading:f,paragraph:{rows:10},children:e.jsx(n.Table,{size:"small",bordered:!0,className:"my-zero-padding-table",columns:h,dataSource:m,pagination:!1,scroll:{x:"max-content"},rowKey:(q,T)=>String(q?.staff_id??q?.id??T)})})]})})]})}const df=({token:t})=>e.jsx(of,{token:t}),Mi=Me.payroll,cf=Me.roleDropdown,uf=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},pf=t=>t?.data?.data??t?.data??t??[];function mf({token:t,receiptDetailsPath:a="/HumanResourceDashboard/PayrollReceiptDetails",onOpenReceiptDetails:s}){const[r,l]=i.useState({page:1,rowsPerPage:10}),[o,d]=i.useState(!1),[c,g]=i.useState([]),[y,p]=i.useState({role:"",roleLabel:"",year:"",month:""}),[m,A]=i.useState(null),C=h=>{if(!h)return;if(typeof s=="function"){s(h);return}const S=`${a}?id=${encodeURIComponent(String(h))}`;typeof window<"u"&&window?.location&&(window.location.href=S)},{data:b}=H(t?[cf,t]:null,([h,S])=>K(h,S)),f=i.useMemo(()=>uf(b),[b]),x=i.useMemo(()=>rr(5),[]),{isLoading:R,error:k,data:O}=H(t&&m?[m,t]:null,([h,S])=>K(h,S)),D=i.useMemo(()=>{const h=pf(O);return Array.isArray(h)?h:[]},[O]),_=i.useMemo(()=>{const h=O?.pagination?.total_rows??O?.data?.pagination?.total_rows??O?.total??O?.total_rows,S=Number(h);return Number.isFinite(S)&&S>=0?S:D.length},[O,D.length]),u=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(h,S,E)=>E+1},{title:"Name",dataIndex:"full_name",key:"full_name",ellipsis:!0},{title:"Designations",dataIndex:"designations",key:"designations",ellipsis:!0,responsive:["md"]},{title:"Mobile No",dataIndex:"contact_no",key:"contact_no",width:140,responsive:["md"]},{title:"Status",dataIndex:"status",key:"status",width:120,align:"center",render:(h,S)=>{const E=S?.id??S?.staff_id??S?.staffId;return e.jsx(n.Button,{type:"link",size:"small",style:{padding:0,fontSize:12},onClick:()=>{C(E)},children:Zl(S?.status)})}}],[]);return e.jsx("div",{style:{display:"grid",gap:20},children:e.jsxs(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Payroll"}),children:[e.jsx("form",{onSubmit:h=>{if(h.preventDefault(),!y.role||!y.year||!y.month)return;const S=`${Mi.payrollByRole}?page=${encodeURIComponent(String(r.page))}&per_page=${encodeURIComponent(String(r.rowsPerPage))}&role=${encodeURIComponent(String(y.role))}&year=${encodeURIComponent(String(y.year))}&month=${encodeURIComponent(String(y.month))}`;A(S)},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end",marginBottom:14,padding:14,borderRadius:12,border:"1px solid #eee",background:"#fafafa"},children:[e.jsx(Q,{options:f,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Roles",placeholder:"Roles",allowSelectAll:!1,name:"role",required:!0,onChange:h=>p(S=>({...S,role:h?.value??"",roleLabel:h?.label??""}))}),e.jsx(Q,{options:x,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Year",allowSelectAll:!1,name:"year",required:!0,onChange:h=>{const S=ir(h?.value);g(S),d(E=>!E),p(E=>({...E,year:h?.label??"",month:""}))}}),e.jsx(Q,{options:c,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Month",allowSelectAll:!1,name:"month",required:!0,onChange:h=>p(S=>({...S,month:h?.value??""}))},`month-${o}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary",onClick:()=>l(h=>({...h,page:1}))})})]})}),e.jsx(n.Table,{bordered:!0,size:"small",loading:R,rowKey:(h,S)=>String(h?.id??h?.staff_id??S),columns:u,dataSource:D,pagination:{current:r.page,pageSize:r.rowsPerPage,total:_,showSizeChanger:!0,onChange:(h,S)=>{l({page:h,rowsPerPage:S}),!(!y.role||!y.year||!y.month)&&A(`${Mi.payrollByRole}?page=${encodeURIComponent(String(h))}&per_page=${encodeURIComponent(String(S))}&role=${encodeURIComponent(String(y.role))}&year=${encodeURIComponent(String(y.year))}&month=${encodeURIComponent(String(y.month))}`)}},scroll:{x:"max-content"}})]})})}const hf=({token:t})=>e.jsx(mf,{token:t}),uo=Me.leave,wa=({baseUrl:t,page:a=1,perPage:s=10,token:r})=>H(r&&t?[t,a,s,r]:null,([o,d,c,g])=>vh({baseUrl:o,page:d,perPage:c},g)),ff=({token:t,page:a=1,perPage:s=10})=>wa({token:t,baseUrl:uo.requestTable,page:a,perPage:s}),yf=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},gf=(t,a)=>{const s=new FormData;return Object.entries(t??{}).forEach(([r,l])=>{l!=null&&s.append(r,String(l))}),s.set("status",a),s};function xf({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),{isLoading:r,error:l,data:o,mutate:d}=ff({token:t,page:a.page,perPage:a.rowsPerPage}),c=i.useMemo(()=>yf(o),[o]),g=async(p,m)=>{try{const A=gf(p,m),C=await Vt(uo.approveRequest,A,t);C?.Status==="Success"?w.success("Success! Updated request.",{duration:1e3,icon:"🚀"}):w.error(C?.msg??"Failed to update request.",{duration:1e3}),await d()}catch(A){w.error(A?.response?.data?.msg??A?.message??"Failed to update request.",{duration:1e3})}},y=i.useMemo(()=>[{title:"Name",key:"full_name",ellipsis:!0,render:(p,m)=>m?.full_name??m?.staff_name??""},{title:"From",key:"leave_from",width:120,render:(p,m)=>m?.leave_from??m?.from_date??""},{title:"To",key:"leave_to",width:120,render:(p,m)=>m?.leave_to??m?.to_date??""},{title:"Leave Type",key:"leavetype",ellipsis:!0,render:(p,m)=>m?.leavetype??m?.leave_type??""},{title:"Leave Days",key:"leave_days",width:110,render:(p,m)=>m?.leave_days??""},{title:"Remarks",key:"employee_remark",ellipsis:!0,responsive:["md"],render:(p,m)=>m?.employee_remark??m?.reason??""},{title:"View",key:"document_file",width:140,render:(p,m)=>{const A=m?.document_file;return A?e.jsx(n.Button,{size:"small",onClick:()=>window.open(A,"_blank","noopener,noreferrer"),children:"View Document"}):"-"}},{title:"Status",dataIndex:"status",key:"status",width:140,align:"center",render:(p,m)=>{const A=String(m?.status??"").toLowerCase();return A==="approved"?e.jsx(n.Tag,{color:"green",children:"Approved"}):A==="declined"?e.jsx(n.Tag,{color:"red",children:"Declined"}):e.jsxs("div",{style:{display:"flex",justifyContent:"center",gap:10},children:[e.jsx(n.Button,{type:"text",size:"small",onClick:()=>g(m,"approved"),icon:e.jsx(ee.CheckOutlined,{style:{color:"#06c937"}})}),e.jsx(n.Button,{type:"text",size:"small",onClick:()=>g(m,"declined"),icon:e.jsx(ee.CloseOutlined,{style:{color:"#e80911"}})})]})}}],[t]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Approve Leave Requests"}),children:e.jsx(n.Table,{bordered:!0,size:"small",loading:r,rowKey:(p,m)=>String(p?.id??p?.leave_id??m),columns:y,dataSource:c,pagination:{current:a.page,pageSize:a.rowsPerPage,onChange:(p,m)=>s({page:p,rowsPerPage:m}),showSizeChanger:!0},scroll:{x:"max-content"}})})]})}const bf=({token:t})=>e.jsx(xf,{token:t}),jf=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",Sf=({token:t,value:a,onChange:s})=>{const r=i.useMemo(()=>{if(t)return{Authorization:t}},[t]);return e.jsx(n.Upload,{maxCount:1,action:io(),headers:r,onChange:l=>{if(l?.file?.status==="done"){const o=jf(l?.file?.response);o&&s?.(o)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})})},po=Me.leave,vf=Me.master.leaveType.dropdown,wf=({token:t,page:a=1,perPage:s=10})=>wa({token:t,baseUrl:po.table,page:a,perPage:s}),_f=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Os={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Cf({token:t,userType:a}){const[s,r]=i.useState({page:1,rowsPerPage:10}),[l,o]=i.useState(!1),[d,c]=i.useState(""),[g]=n.Form.useForm();console.log("ApplyLeavePage render",a);const{isLoading:y,error:p,data:m,mutate:A}=wf({token:t,page:s.page,perPage:s.rowsPerPage}),{data:C}=H(t?[vf,t]:null,([u,h])=>K(u,h)),b=i.useMemo(()=>_f(C),[C]),f=(u,h)=>r({page:u,rowsPerPage:parseInt(h,10)}),x=()=>{c(""),g.resetFields(),g.setFieldsValue({apply_date:te()}),o(!0)},R=()=>{o(!1),c(""),g.resetFields()},k=async u=>{const h=new FormData;h.set("apply_date",u?.apply_date?u.apply_date.format("YYYY-MM-DD"):""),h.set("leave_type",u?.leave_type?.value??u?.leave_type??""),h.set("from_date",u?.from_date?u.from_date.format("YYYY-MM-DD"):""),h.set("to_date",u?.to_date?u.to_date.format("YYYY-MM-DD"):""),h.set("reason",u?.reason??""),d&&h.set("file",d);try{await kt(po.apply,h,t),w.success("Success! Leave request submitted.",{duration:1e3}),R(),await A()}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to submit leave request.",{duration:1e3})}},O=i.useMemo(()=>{const u=m?.data??m??[];return Array.isArray(u)?u:Array.isArray(u?.data)?u.data:[]},[m]),D=i.useMemo(()=>[{title:"Leave Type",key:"leavetype",render:(u,h)=>h?.leavetype??h?.leave_type??""},{title:"Apply Date",key:"date",width:130,render:(u,h)=>h?.date??h?.apply_date??""},{title:"From",key:"leave_from",width:130,render:(u,h)=>h?.leave_from??h?.from_date??""},{title:"To",key:"leave_to",width:130,render:(u,h)=>h?.leave_to??h?.to_date??""},{title:"Approval Status",dataIndex:"status",key:"status",width:140},{title:"Remark",key:"employee_remark",render:(u,h)=>h?.employee_remark??"",ellipsis:!0,responsive:["md"]}],[]),_=a==="staff";return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:l,title:"Add Leave Request",onCancel:R,footer:null,destroyOnClose:!0,children:e.jsxs(n.Form,{form:g,layout:"vertical",onFinish:k,children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(n.Form.Item,{name:"apply_date",rules:[{required:!0,message:"Select date"}],style:{marginBottom:0},children:e.jsx(n.DatePicker,{style:Os})})]}),e.jsx(n.Form.Item,{name:"leave_type",rules:[{required:!0,message:"Select leave type"}],children:e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Leave Type",allowSelectAll:!1})}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"From"}),e.jsx(n.Form.Item,{name:"from_date",rules:[{required:!0,message:"Select from date"}],style:{marginBottom:0},children:e.jsx(n.DatePicker,{style:Os})})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"To"}),e.jsx(n.Form.Item,{name:"to_date",rules:[{required:!0,message:"Select to date"}],style:{marginBottom:0},children:e.jsx(n.DatePicker,{style:Os})})]}),e.jsx(n.Form.Item,{name:"reason",rules:[{required:!0,message:"Enter reason"}],children:e.jsx(z,{type:"text",label:"Reason",placeholder:"Reason"})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingTop:22},children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222"},children:"Attachment"}),e.jsx(Sf,{token:t,value:d,onChange:c})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:12},children:[e.jsx(n.Button,{onClick:R,children:"Cancel"}),e.jsx(ne,{type:"submit",value:"Save",color:"primary"})]})]})}),_&&e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Apply Leave"}),extra:e.jsx(ne,{type:"button",value:"Add Leave Request",onClick:x})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Leave Requests"}),children:e.jsx(n.Table,{bordered:!0,size:"small",loading:y,rowKey:(u,h)=>String(u?.id??u?.leave_id??h),columns:D,dataSource:O,pagination:{current:s.page,pageSize:s.rowsPerPage,onChange:(u,h)=>f(u,h),showSizeChanger:!0},scroll:{x:"max-content"}})})]})}const Af=({token:t,userType:a})=>e.jsx(Cf,{token:t,userType:a}),qn=Me.master.leaveType,Df=({token:t,page:a=1,perPage:s=10})=>wa({token:t,baseUrl:qn.table,page:a,perPage:s});function Tf({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r]=n.Form.useForm(),[l]=n.Form.useForm(),[o,d]=i.useState(!1),[c,g]=i.useState(null),{isLoading:y,error:p,data:m,mutate:A}=Df({token:t,page:a.page,perPage:a.rowsPerPage}),C=(D,_)=>{s({page:D,rowsPerPage:parseInt(_,10)})},b=async D=>{const _=new FormData;_.set("title",D?.title??"");try{await A(kt(qn.add,_,t),Ge(_)),w.success("Success! Added new leave type.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to add leave type.",{duration:1e3})}},f=D=>{g(D??null),l.setFieldsValue({title:D?.leave_type_name??D?.name??""}),d(!0)},x=()=>{d(!1),g(null),l.resetFields()},R=async D=>{const _=c?.id??c?.leave_type_id;if(!_){w.error("Missing leave type id.",{duration:1e3});return}const u=new FormData;u.set("id",String(_)),u.set("title",D?.title??"");try{await Vt(qn.edit,u,t),await A(),w.success("Success! Updated leave type.",{duration:1e3,icon:"🚀"}),x()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to update leave type.",{duration:1e3})}},k=async D=>{const _=D?.id??D?.leave_type_id;if(_)try{await A(ln(qn.remove,_,t),ze(_)),w.success("Success! Deleted leave type.",{duration:1e3})}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to delete leave type.",{duration:1e3})}},O=i.useMemo(()=>[{title:"Name",dataIndex:"type",key:"type",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(D,_)=>e.jsxs(n.Space,{size:6,children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>f(_)}),e.jsx(n.Popconfirm,{title:"Remove leave type?",okText:"Yes",cancelText:"No",onConfirm:()=>k(_),children:e.jsx(n.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:o,title:"Edit Leave Type",onCancel:x,footer:null,destroyOnClose:!0,children:e.jsxs(n.Form,{form:l,layout:"vertical",onFinish:R,children:[e.jsx(n.Form.Item,{name:"title",rules:[{required:!0,message:"Enter leave type name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(n.Button,{onClick:x,children:"Cancel"}),e.jsx(ne,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Leave Type"}),children:e.jsxs(n.Form,{form:r,layout:"vertical",onFinish:b,children:[e.jsx(n.Form.Item,{name:"title",rules:[{required:!0,message:"Enter leave type name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsx(ne,{type:"submit",value:"Save",color:"primary"})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Leave Type List"}),children:e.jsx(Ie,{parentCallback:C,data:{newData:m,columns:O,columnstype:"antd",action:!1,Loading:y,error:p}})})]})}const Rf=({token:t})=>e.jsx(Tf,{token:t}),zn=Me.master.department,If=({token:t,page:a=1,perPage:s=10})=>wa({token:t,baseUrl:zn.table,page:a,perPage:s});function kf({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r]=n.Form.useForm(),[l]=n.Form.useForm(),[o,d]=i.useState(!1),[c,g]=i.useState(null),{isLoading:y,error:p,data:m,mutate:A}=If({token:t,page:a.page,perPage:a.rowsPerPage}),C=(D,_)=>{s({page:D,rowsPerPage:parseInt(_,10)})},b=async D=>{const _=new FormData;_.set("title",D?.title??"");try{await A(kt(zn.add,_,t),Ge(_)),w.success("Success! Added new department.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to add department.",{duration:1e3})}},f=D=>{g(D??null),l.setFieldsValue({title:D?.department_name??D?.name??""}),d(!0)},x=()=>{d(!1),g(null),l.resetFields()},R=async D=>{const _=c?.id??c?.department_id;if(!_){w.error("Missing department id.",{duration:1e3});return}const u=new FormData;u.set("id",String(_)),u.set("title",D?.title??"");try{await Vt(zn.edit,u,t),await A(),w.success("Success! Updated department.",{duration:1e3,icon:"🚀"}),x()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to update department.",{duration:1e3})}},k=async D=>{const _=D?.id??D?.department_id;if(_)try{await A(ln(zn.remove,_,t),ze(_)),w.success("Success! Deleted department.",{duration:1e3})}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to delete department.",{duration:1e3})}},O=i.useMemo(()=>[{title:"Name",dataIndex:"department_name",key:"department_name",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(D,_)=>e.jsxs(n.Space,{size:6,children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>f(_)}),e.jsx(n.Popconfirm,{title:"Remove department?",okText:"Yes",cancelText:"No",onConfirm:()=>k(_),children:e.jsx(n.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:o,title:"Edit Department",onCancel:x,footer:null,destroyOnClose:!0,children:e.jsxs(n.Form,{form:l,layout:"vertical",onFinish:R,children:[e.jsx(n.Form.Item,{name:"title",rules:[{required:!0,message:"Enter department name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(n.Button,{onClick:x,children:"Cancel"}),e.jsx(ne,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Department"}),children:e.jsxs(n.Form,{form:r,layout:"vertical",onFinish:b,children:[e.jsx(n.Form.Item,{name:"title",rules:[{required:!0,message:"Enter department name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsx(ne,{type:"submit",value:"Save",color:"primary"})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Department List"}),children:e.jsx(Ie,{parentCallback:C,data:{newData:m,columns:O,columnstype:"antd",action:!1,Loading:y,error:p}})})]})}const Pf=({token:t})=>e.jsx(kf,{token:t}),Yn=Me.master.designation,Of=({token:t,page:a=1,perPage:s=10})=>wa({token:t,baseUrl:Yn.table,page:a,perPage:s});function Mf({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r]=n.Form.useForm(),[l]=n.Form.useForm(),[o,d]=i.useState(!1),[c,g]=i.useState(null),{isLoading:y,error:p,data:m,mutate:A}=Of({token:t,page:a.page,perPage:a.rowsPerPage}),C=(D,_)=>{s({page:D,rowsPerPage:parseInt(_,10)})},b=async D=>{const _=new FormData;_.set("title",D?.title??"");try{await A(kt(Yn.add,_,t),Ge(_)),w.success("Success! Added new designation.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to add designation.",{duration:1e3})}},f=D=>{g(D??null),l.setFieldsValue({title:D?.designation??""}),d(!0)},x=()=>{d(!1),g(null),l.resetFields()},R=async D=>{const _=c?.id??c?.designation_id;if(!_){w.error("Missing designation id.",{duration:1e3});return}const u=new FormData;u.set("id",String(_)),u.set("title",D?.title??"");try{await Vt(Yn.edit,u,t),await A(),w.success("Success! Updated designation.",{duration:1e3,icon:"🚀"}),x()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to update designation.",{duration:1e3})}},k=async D=>{const _=D?.id??D?.designation_id;if(_)try{await A(ln(Yn.remove,_,t),ze(_)),w.success("Success! Deleted designation.",{duration:1e3})}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to delete designation.",{duration:1e3})}},O=i.useMemo(()=>[{title:"Name",dataIndex:"designation",key:"designation",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(D,_)=>e.jsxs(n.Space,{size:6,children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>f(_)}),e.jsx(n.Popconfirm,{title:"Remove designation?",okText:"Yes",cancelText:"No",onConfirm:()=>k(_),children:e.jsx(n.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:o,title:"Edit Designation",onCancel:x,footer:null,destroyOnClose:!0,children:e.jsxs(n.Form,{form:l,layout:"vertical",onFinish:R,children:[e.jsx(n.Form.Item,{name:"title",rules:[{required:!0,message:"Enter designation name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(n.Button,{onClick:x,children:"Cancel"}),e.jsx(ne,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Designation"}),children:e.jsxs(n.Form,{form:r,layout:"vertical",onFinish:b,children:[e.jsx(n.Form.Item,{name:"title",rules:[{required:!0,message:"Enter designation name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsx(ne,{type:"submit",value:"Save",color:"primary"})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Designation List"}),children:e.jsx(Ie,{parentCallback:C,data:{newData:m,columns:O,columnstype:"antd",action:!1,Loading:y,error:p}})})]})}const Ef=({token:t})=>e.jsx(Mf,{token:t}),Vn=Me.master.shift,$f=({token:t,page:a=1,perPage:s=10})=>wa({token:t,baseUrl:Vn.table,page:a,perPage:s}),mt="hh:mm A",pa=t=>{const a=String(t??"");if(!a)return null;const s=te(a,[mt,"HH:mm","HH:mm:ss"],!0);return s.isValid()?s:null},ma=t=>t?t.format(mt):"",_t={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Ff({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r]=n.Form.useForm(),[l]=n.Form.useForm(),[o,d]=i.useState(!1),[c,g]=i.useState(null),{isLoading:y,error:p,data:m,mutate:A}=$f({token:t,page:a.page,perPage:a.rowsPerPage}),C=(u,h)=>{s({page:u,rowsPerPage:parseInt(h,10)})},b=(u,h)=>{const S=new FormData;return h&&S.set("id",String(h)),S.set("name",u?.name??""),S.set("start_time",ma(u?.start_time)),S.set("end_time",ma(u?.end_time)),S.set("shift_start_from",ma(u?.shift_start_from)),S.set("shift_start_to",ma(u?.shift_start_to)),S.set("shift_end_from",ma(u?.shift_end_from)),S.set("shift_end_to",ma(u?.shift_end_to)),S},f=async u=>{try{const h=b(u);await A(kt(Vn.add,h,t),Ge(h)),w.success("Success! Added new shift.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to add shift.",{duration:1e3})}},x=u=>{g(u??null),l.setFieldsValue({name:u?.shift_name??u?.name??"",start_time:pa(u?.start_time),end_time:pa(u?.end_time),shift_start_from:pa(u?.shift_start_from),shift_start_to:pa(u?.shift_start_to),shift_end_from:pa(u?.shift_end_from),shift_end_to:pa(u?.shift_end_to)}),d(!0)},R=()=>{d(!1),g(null),l.resetFields()},k=async u=>{const h=c?.id??c?.shift_id;if(!h){w.error("Missing shift id.",{duration:1e3});return}try{const S=b(u,h);await Vt(Vn.edit,S,t),await A(),w.success("Success! Updated shift.",{duration:1e3,icon:"🚀"}),R()}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to update shift.",{duration:1e3})}},O=async u=>{const h=u?.id??u?.shift_id;if(h)try{await A(ln(Vn.remove,h,t),ze(h)),w.success("Success! Deleted shift.",{duration:1e3})}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to delete shift.",{duration:1e3})}},D=i.useMemo(()=>[{title:"Name",dataIndex:"shift_name",key:"shift_name",ellipsis:!0,fixed:"left",width:160},{title:"Start Time",dataIndex:"start_time",key:"start_time",width:120},{title:"End Time",dataIndex:"end_time",key:"end_time",width:120},{title:"Start From",dataIndex:"shift_start_from",key:"shift_start_from",width:120,responsive:["md"]},{title:"Start To",dataIndex:"shift_start_to",key:"shift_start_to",width:120,responsive:["md"]},{title:"End From",dataIndex:"shift_end_from",key:"shift_end_from",width:120,responsive:["md"]},{title:"End To",dataIndex:"shift_end_to",key:"shift_end_to",width:120,responsive:["md"]},{title:"Action",key:"action",width:110,fixed:"right",render:(u,h)=>e.jsxs(n.Space,{size:6,children:[e.jsx(n.Button,{type:"text",size:"small",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>x(h)}),e.jsx(n.Popconfirm,{title:"Remove shift?",okText:"Yes",cancelText:"No",onConfirm:()=>O(h),children:e.jsx(n.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[]),_=[{required:!0,message:"Select time"}];return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{open:o,title:"Edit Shift",onCancel:R,footer:null,destroyOnClose:!0,children:e.jsxs(n.Form,{form:l,layout:"vertical",onFinish:k,children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{name:"name",rules:[{required:!0,message:"Enter shift name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsx(n.Form.Item,{name:"start_time",label:"Start Time",rules:_,children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"end_time",label:"End Time",rules:_,children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_start_from",label:"Start Time From",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_start_to",label:"Start Time To",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_end_from",label:"End Time From",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_end_to",label:"End Time To",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(n.Button,{onClick:R,children:"Cancel"}),e.jsx(ne,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Shift"}),children:e.jsx(n.Form,{form:r,layout:"vertical",onFinish:f,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{name:"name",rules:[{required:!0,message:"Enter shift name"}],children:e.jsx(z,{type:"text",label:"Name"})}),e.jsx(n.Form.Item,{name:"start_time",label:"Start Time",rules:_,children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"end_time",label:"End Time",rules:_,children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_start_from",label:"Start Time From",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_start_to",label:"Start Time To",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_end_from",label:"End Time From",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(n.Form.Item,{name:"shift_end_to",label:"End Time To",children:e.jsx(n.TimePicker,{format:mt,use12Hours:!0,style:_t})}),e.jsx(ne,{type:"submit",value:"Save",color:"primary"})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Shift List"}),children:e.jsx(Ie,{parentCallback:C,data:{newData:m,columns:D,columnstype:"antd",action:!1,Loading:y,error:p}})})]})}const Uf=({token:t})=>e.jsx(Ff,{token:t}),Nf=Me.attendance;function Bf({data:t}){return t?e.jsx("div",{style:{margin:15,fontSize:13,padding:10},children:e.jsxs("table",{style:{width:"100%",borderCollapse:"collapse"},children:[e.jsxs("thead",{children:[e.jsxs("tr",{children:[e.jsx("th",{}),e.jsx("th",{}),(t?.shifts??[]).map((a,s)=>e.jsx("th",{colSpan:"2",style:{border:"1px solid #000",paddingLeft:10},children:a?.shift_name??""},`${s}heading1`))]}),e.jsxs("tr",{children:[e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"Sl.No"}),e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"Teacher's Name"}),(t?.shifts??[]).map((a,s)=>e.jsxs(i.Fragment,{children:[e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"In Time"}),e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"Out Time"})]},`${s}heading2`))]})]}),e.jsx("tbody",{children:(t?.data??[]).map((a,s)=>e.jsxs("tr",{children:[e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:s+1})}),e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:`${a?.name??""} ${a?.surname??""}`.trim()})}),(t?.shifts??[]).map((r,l)=>e.jsxs(i.Fragment,{children:[e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:a?.attendance_data?(a.attendance_data?.[r?.office_shift_id]?.checkintime??"").toUpperCase():""})}),e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:a?.attendance_data?(a.attendance_data?.[r?.office_shift_id]?.checkouttime??"").toUpperCase():""})})]},`${l}cells${s}`))]},`${s}row`))})]})}):null}const Lf=t=>{const a=t?.data??t??{},s=a?.items??a?.data??[];return Array.isArray(s)?s:[]},qf=t=>{const a=String(t??"").toLowerCase();return a==="present"?e.jsx(n.Tag,{color:"green",children:"Present"}):a==="absent"?e.jsx(n.Tag,{color:"red",children:"Absent"}):a==="leave"?e.jsx(n.Tag,{color:"orange",children:"Leave"}):e.jsx(n.Tag,{children:t??""})};function zf({token:t}){const[a,s]=i.useState(te()),[r,l]=i.useState(!1),[o,d]=i.useState(0),c=i.useMemo(()=>`${Nf.dailyAttendance}?attendance_date=${encodeURIComponent(a.format("YYYY-MM-DD"))}`,[a,r,o]),{isLoading:g,error:y,data:p}=H(t?[c,t]:null,([f,x])=>K(f,x)),m=i.useMemo(()=>Lf(p),[p]),A=i.useMemo(()=>r?p?.data?.data??p?.data??p??null:null,[p,r]),C=ea.useReactToPrint({content:()=>document.getElementById("ubk-hr-daily-attendance-print")}),b=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(f,x,R)=>R+1},{title:"Name",key:"name",render:(f,x)=>x?.staff_name??"",ellipsis:!0},{title:"Department",dataIndex:"department",key:"department",ellipsis:!0,responsive:["md"]},{title:"Designation",dataIndex:"designation",key:"designation",ellipsis:!0,responsive:["md"]},{title:"Status",key:"attendance",width:160,render:(f,x)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[qf(x?.attendance_status),x?.is_week_off?e.jsx(n.Tag,{color:"blue",children:"W/O"}):null]})},{title:"In Time",key:"intime",width:120,render:(f,x)=>x?.check_in??""},{title:"Out Time",key:"outtime",width:120,render:(f,x)=>x?.check_out??""}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Staff Daily Attendance"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end",padding:14,borderRadius:12,border:"1px solid #eee",background:"#fafafa"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(n.DatePicker,{value:a,onChange:f=>f&&s(f),style:{width:"100%"},allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Search",onClick:()=>d(f=>f+1)})})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Staff Attendance List"}),extra:e.jsx(ee.PrinterOutlined,{style:{color:"#5080f8",fontSize:18,cursor:"pointer"},onClick:C}),children:e.jsxs("div",{id:"ubk-hr-daily-attendance-print",children:[e.jsx("div",{className:"print-only",children:e.jsx(It,{})}),r?e.jsx(Bf,{data:A}):e.jsx(n.Table,{bordered:!0,size:"small",loading:g,rowKey:(f,x)=>String(f?.id??f?.staff_id??x),columns:b,dataSource:m,pagination:{pageSize:20},scroll:{x:"max-content"}})]})})]})}const Yf=({token:t})=>e.jsx(zf,{token:t}),Ei=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Vf=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"";function Wf({token:t,staffId:a}){const[s,r]=i.useState(!1),[l,o]=i.useState(null),[d,c]=i.useState({value:"Cash",label:"Cash"}),[g,y]=i.useState(""),[p,m]=i.useState(""),A=i.useMemo(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings"))?.currency_icon??""}catch{return""}},[]),C=E=>{const F=Number(E??0),q=Number.isFinite(F)?F.toLocaleString("en-IN"):"0";return`${A?`${A} `:""}${q}`},b=i.useMemo(()=>a?`${Me.staff.basicById}?staff_id=${encodeURIComponent(String(a))}`:null,[a]),f=i.useMemo(()=>a?`${Me.payroll.staffPayrollByStaffId}?staff_id=${encodeURIComponent(String(a))}`:null,[a]),{data:x}=H(t&&b?[b,t]:null,([E,F])=>K(E,F)),{data:R,isLoading:k,mutate:O}=H(t&&f?[f,t]:null,([E,F])=>K(E,F)),D=i.useMemo(()=>Ei(x)[0]??x?.data??x??null,[x]),_=i.useMemo(()=>Ei(R),[R]),u=i.useMemo(()=>[{title:"Month",dataIndex:"month",key:"month",width:120,align:"center"},{title:"Basic Salary",dataIndex:"basic_salary",key:"basic_salary",width:140,align:"center",render:(E,F)=>e.jsx("div",{style:{fontSize:11},children:Rt(F?.basic_salary)})},{title:"Gross Salary",dataIndex:"gross_salary",key:"gross_salary",width:140,align:"center",render:(E,F)=>e.jsx("div",{style:{fontSize:11},children:Rt(F?.gross_salary)})},{title:"Net Salary",dataIndex:"net_amount",key:"net_amount",width:140,align:"center",render:(E,F)=>e.jsx("div",{style:{fontSize:11},children:Rt(F?.net_amount)})},{title:"Payable",dataIndex:"Total_Payable_Amount",key:"Total_Payable_Amount",width:140,align:"center",render:(E,F)=>e.jsx("div",{style:{fontSize:11},children:Rt(F?.Total_Payable_Amount)})},{title:"Status",dataIndex:"status",key:"status",width:140,align:"center",render:(E,F)=>e.jsx("div",{style:{cursor:F?.status==="due"?"pointer":"default"},onClick:()=>{F?.status==="due"&&(o(F),r(!0))},children:Zl(F?.status)})}],[]),h=i.useMemo(()=>[{value:"Cash",label:"Cash"},{value:"UPI",label:"UPI"},{value:"DD",label:"DD"},{value:"Bank",label:"Bank"},{value:"Internet Banking",label:"Internet Banking"},{value:"Cheque",label:"Cheque"}],[]),S=async()=>{if(!l)return;const E={...l,staff_id:a,payment_type:d?.value??"",notes:g,attchement:p};try{await Ne(Me.payroll.generatePayslip,{arg:E},t),w.success("Success!",{duration:1e3}),r(!1),o(null),y(""),m(""),await O()}catch(F){w.error(F?.response?.data?.msg??F?.message??"Failed.",{duration:1e3})}};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Payroll Receipt Details"}),children:e.jsxs("div",{style:{display:"grid",gap:14},children:[e.jsx("div",{style:{fontSize:13,color:"#444"},children:D?`${D?.f_name??D?.firstname??""} ${D?.l_name??D?.lastname??""}`.trim():""}),e.jsx(n.Table,{bordered:!0,size:"small",loading:k,rowKey:(E,F)=>String(E?.id??`${E?.month}-${F}`),columns:u,dataSource:_,pagination:{pageSize:12},scroll:{x:"max-content"}})]})}),e.jsx(n.Modal,{open:s,onCancel:()=>{r(!1),o(null)},footer:null,destroyOnClose:!0,title:"Payment Options",width:640,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(Q,{label:"Pay",options:h,value:d,onChange:E=>c(E??h[0]),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1}),e.jsxs("div",{children:[e.jsx("div",{style:{marginBottom:6,fontSize:14,fontWeight:500,color:"#222"},children:"Note"}),e.jsx(n.Input.TextArea,{rows:4,placeholder:"Note",value:g,onChange:E=>y(E.target.value)})]}),e.jsxs("div",{children:[e.jsx("div",{style:{marginBottom:6,fontSize:14,fontWeight:500,color:"#222"},children:"Attachment"}),e.jsx(n.Upload,{maxCount:1,action:io(),headers:t?{Authorization:t}:void 0,onChange:E=>{if(E?.file?.status==="done"){const F=Vf(E?.file?.response);F&&m(F)}E?.file?.status==="removed"&&m("")},children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),children:"Upload"})}),!!p&&e.jsx("div",{style:{fontSize:12,color:"#666",marginTop:6},children:p})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:[e.jsx(n.Button,{onClick:()=>r(!1),children:"Cancel"}),e.jsx(ne,{type:"button",value:l?.Total_Payable_Amount?`Pay ${C(l.Total_Payable_Amount)}`:"Pay",onClick:S})]})]})})]})}function Hf({token:t,staffId:a}){const s=i.useMemo(()=>{if(a!=null&&String(a).trim()!=="")return a;if(typeof window>"u")return null;const r=new URLSearchParams(window.location.search).get("id");return r||null},[a]);return s?e.jsx(Wf,{token:t,staffId:s}):e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Payroll Receipt Details"}),children:e.jsx("div",{style:{fontSize:13,color:"#666"},children:"Missing staff id."})})}function Wt({onAdd:t,onExport:a,onPrint:s,onDownload:r,onFilter:l,onRefresh:o,actions:d}){const c=i.useMemo(()=>[{key:"add",title:"Add",icon:e.jsx(ee.PlusOutlined,{}),onClick:t},{key:"export",title:"Export",icon:e.jsx(ee.FileExcelOutlined,{}),onClick:a},{key:"print",title:"Print",icon:e.jsx(ee.PrinterOutlined,{}),onClick:s},{key:"download",title:"Download",icon:e.jsx(ee.DownloadOutlined,{}),onClick:r},{key:"filter",title:"Filter",icon:e.jsx(ee.FilterOutlined,{}),onClick:l},{key:"refresh",title:"Refresh",icon:e.jsx(ee.ReloadOutlined,{}),onClick:o}],[t,a,s,r,l,o]),g=i.useMemo(()=>{const y=Array.isArray(d)&&d.length?new Set(d):null;return y?c.filter(p=>y.has(p.key)):c},[c,d]);return e.jsx(n.Space,{size:8,children:g.map(y=>e.jsx(n.Tooltip,{title:y.title,children:e.jsx(n.Button,{type:"text",icon:y.icon,onClick:y.onClick,disabled:!y.onClick})},y.key))})}const or=t=>t??localStorage.getItem("authToken")??"",Et={dashboard:{monthlyGraph:"api/branchapi/reportGraph/studentPresentvsAbsentmonthlyReportgraph",weeklyGraph:"api/branchapi/reportGraph/studentPresentvsAbsentweeklyReportgraph"},dropdowns:{classes:"api/branchapi/academy/classdropdownlist",sectionsByClass:"api/branchapi/academy/sectionoftheClass",sessions:"api/branchapi/generalSettings/sessiondropdown"},studentAttendance:{list:"api/StudentAttendace/studentlistforBranchbyClass",save:"api/studentAttendace/addattendencebyBranch",emergencyLeave:"api/StudentAttendace/emergency_leave"},dailyAttendance:{list:"api/StudentAttendace/studentlistforBranchbyClass"},monthlyReport:{table:"api/AttendenceReport/studentmonthlyAttendencebyclass",byStudent:"api/branchapi/student/getStududentMonthlyByIdUrlnew"},yearlyReport:{table:"api/AttendenceReport/studentyearlyAttendenceReport"}},Lt=async(t,a)=>K(t,or(a)),Kf=async(t,a,s)=>Ne(t,a,or(s)),Gf=async(t,a,s)=>Ha(t,{arg:a},or(s)),Ka=(t,a)=>{const s=new URLSearchParams;Object.entries(a??{}).forEach(([l,o])=>{o==null||o===""||s.set(l,String(o))});const r=t.includes("?")?"&":"?";return`${t}${r}${s.toString()}`},$i=()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1"}catch{return"1"}},Jf=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},mo=(t,a)=>{const s=t?.data?.data??t?.data??t??{},r=a?s?.[a]:s;return Array.isArray(r)?r:Array.isArray(s?.student)?s.student:Array.isArray(s?.staff)?s.staff:Array.isArray(s?.data)?s.data:[]},Qf=t=>Array.isArray(t?.monthly_data)?t.monthly_data:Array.isArray(t?.month_data)?t.month_data:[],Xf=t=>{const a={present:0,absent:0,late:0,leave:0};return(Array.isArray(t)?t:[]).forEach(s=>{if(Array.isArray(s?.monthly_data)||Array.isArray(s?.month_data)){Qf(s).forEach(l=>{const o=l?.[0]?.data?.[0]??l?.data?.[0]??l??{},d=String(o?.attendance_type??o?.attendence_type_id??"").toUpperCase();(d==="P"||d==="1")&&(a.present+=1),(d==="A"||d==="4")&&(a.absent+=1),(d==="L"||d==="3")&&(a.late+=1),(d==="LEAVE"||d==="2")&&(a.leave+=1)});return}const r=String(s?.attendance_type??s?.attendence_type_id??"").toUpperCase();(r==="P"||r==="1")&&(a.present+=1),(r==="A"||r==="4")&&(a.absent+=1),(r==="L"||r==="3")&&(a.late+=1),(r==="LEAVE"||r==="2")&&(a.leave+=1)}),a},dr=(t,a)=>{const{data:s,isLoading:r,error:l}=H(a&&t?[t,a]:null,([o,d])=>Lt(o,d));return{isLoading:r,error:l,data:s,options:i.useMemo(()=>Jf(s),[s])}},ls=t=>dr(Et.dropdowns.classes,t),os=(t,a)=>{const s=t?`${Et.dropdowns.sectionsByClass}?class_id=${encodeURIComponent(String(t))}`:null;return dr(s,a)},Zf=t=>dr(Et.dropdowns.sessions,t),cr=t=>{const a=String(t??"").toUpperCase();return st(a==="1"||a==="P"||a==="PRESENT"?"P":a==="4"||a==="A"||a==="ABSENT"?"A":a==="3"||a==="L"||a==="LATE"?"L":a==="2"||a==="LEAVE"?"LEAVE":a==="W"?"W":a==="H"?"H":a||"-")},ho=(t,a,s)=>{const r=new Blob([t],{type:a}),l=URL.createObjectURL(r),o=document.createElement("a");o.href=l,o.download=s,document.body.appendChild(o),o.click(),o.remove(),URL.revokeObjectURL(l)},Fi=t=>String(t??"").replace(/"/g,'""'),ey=({rows:t,columns:a,fileName:s})=>{const r=Array.isArray(a)?a:[],l=Array.isArray(t)?t:[],o=r.map(c=>`"${Fi(c?.title??c?.name??c?.key??c?.dataIndex)}"`).join(","),d=l.map((c,g)=>r.map(y=>{const p=y?.dataIndex??y?.selector??y?.key,m=p==="sl"?g+1:c?.[p];return`"${Fi(m)}"`}).join(",")).join(`
61
- `);ho([o,d].filter(Boolean).join(`
62
- `),"text/csv;charset=utf-8;",s)},ty=({value:t,fileName:a})=>{ho(JSON.stringify(t??null,null,2),"application/json;charset=utf-8;",a)};function fo({summary:t}){const a=[{key:"present",label:"Present",color:"#52c41a"},{key:"absent",label:"Absent",color:"#ff4d4f"},{key:"leave",label:"Leave",color:"#1677ff"}];return e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(140px, 1fr))",gap:12},children:a.map(s=>e.jsxs(n.Card,{size:"small",styles:{body:{padding:12}},children:[e.jsx("div",{style:{fontSize:11,color:"#666",marginBottom:4},children:s.label}),e.jsx("div",{style:{fontSize:20,fontWeight:700,color:s.color},children:t?.[s.key]??0})]},s.key))})}function ba({summary:t,title:a="Attendance Overview"}){const s=i.useMemo(()=>[{key:"present",label:"Present",value:Number(t?.present??0),color:"#52c41a"},{key:"absent",label:"Absent",value:Number(t?.absent??0),color:"#ff4d4f"},{key:"leave",label:"Leave",value:Number(t?.leave??0),color:"#1677ff"}],[t]),r=Math.max(...s.map(l=>l.value),1);return e.jsx(n.Card,{size:"small",title:a,children:e.jsx("div",{style:{display:"grid",gap:8},children:s.map(l=>e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"80px 1fr 40px",gap:8,alignItems:"center"},children:[e.jsx("div",{style:{fontSize:11,color:"#444"},children:l.label}),e.jsx("div",{style:{height:10,background:"#f0f0f0",borderRadius:999},children:e.jsx("div",{style:{width:`${l.value/r*100}%`,height:"100%",background:l.color,borderRadius:999}})}),e.jsx("div",{style:{fontSize:11,fontWeight:600,textAlign:"right"},children:l.value})]},l.key))})})}function ay(){const t=[{label:"Present",node:st("P")},{label:"Absent",node:st("A")},{label:"Late",node:st("L")},{label:"Weekly Off",node:st("W")},{label:"Holiday",node:st("H")}];return e.jsx(n.Space,{wrap:!0,size:[12,8],children:t.map(a=>e.jsxs(n.Space,{size:6,children:[e.jsx("span",{style:{fontSize:12,color:"#555"},children:a.label}),a.node]},a.label))})}function qt({items:t}){const a=Array.isArray(t)?t.filter(s=>s?.value):[];return a.length?e.jsx(n.Space,{wrap:!0,size:[8,8],children:a.map(s=>e.jsxs(n.Tag,{color:"blue",children:[s.label,": ",s.value]},s.label))}):null}function ds({title:t,subtitle:a,printRef:s,exportRows:r,exportColumns:l,onRefresh:o,onAdd:d,filterSection:c,summary:g,chartContent:y,reportTitle:p,reportExtra:m,children:A,fileBaseName:C="attendance"}){const b=ea.useReactToPrint({content:()=>s?.current});return e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsx(n.Card,{size:"small",title:e.jsxs("div",{children:[e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:t}),a?e.jsx(n.Typography.Text,{type:"secondary",style:{display:"block",marginTop:2,fontSize:12},children:a}):null]}),extra:e.jsx(Wt,{actions:["add","export","print","download","refresh"],onAdd:d,onExport:()=>ey({rows:r,columns:l,fileName:`${C}.csv`}),onPrint:b,onDownload:()=>ty({value:r,fileName:`${C}.json`}),onRefresh:o}),children:c}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(260px, 1fr))",gap:12,alignItems:"start"},children:[e.jsx(fo,{summary:g}),y===!1?null:y||e.jsx(ba,{summary:g})]}),e.jsx(n.Card,{size:"small",title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:p}),extra:m,styles:{body:{padding:0}},children:A})]})}const ny=[{label:"Present",value:"1"},{label:"Absent",value:"4"},{label:"Late",value:"3"},{label:"Leave",value:"2"}];function sy({rows:t,loading:a,sunday:s,holiday:r,holidayTitle:l,onChangeRows:o,onEmergency:d}){const c=(y,p)=>{const m=(Array.isArray(t)?t:[]).map((A,C)=>(A?.student_session_id??A?.student_id??A?.id??C)===y?{...A,...p}:A);o?.(m)},g=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(y,p,m)=>m+1},{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:130},{title:"EC No",dataIndex:"ecno",key:"ecno",width:100},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:100},{title:"Full Name",key:"full_name",render:(y,p)=>p?.full_name??p?.student_name??p?.name??"--"},{title:"Attendance",dataIndex:"attendence_type_id",key:"attendence_type_id",width:180,render:(y,p,m)=>{const A=p?.student_session_id??p?.student_id??p?.id??m;return e.jsx(n.Select,{size:"small",style:{width:"100%"},options:ny,value:String(y??"1"),onChange:C=>c(A,{attendence_type_id:C})})}},{title:"Date",dataIndex:"date",key:"date",width:120,render:y=>y?te(y).format("DD-MM-YYYY"):"--"},{title:"Remarks",dataIndex:"remark",key:"remark",width:140},{title:"In Time",dataIndex:"intime",key:"intime",width:120},{title:"Out Time",dataIndex:"outtime",key:"outtime",width:120},{title:"Emergency Leave",key:"emergency_leave",width:140,render:(y,p)=>e.jsx(n.Tag,{color:"orange",style:{cursor:"pointer"},icon:e.jsx(ee.ClockCircleOutlined,{}),onClick:()=>d?.(p),children:"E.L"})}],[d,t]);return s?e.jsx("div",{style:{textAlign:"center",fontWeight:700,padding:"32px 0"},children:"Weekly Off"}):r?e.jsxs("div",{style:{textAlign:"center",padding:"32px 0"},children:[e.jsx("div",{style:{fontWeight:700,marginBottom:8},children:"Holiday"}),e.jsx("div",{children:l||"--"})]}):e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(y,p)=>String(y?.student_session_id??y?.student_id??y?.id??p),columns:g,dataSource:Array.isArray(t)?t:[],loading:a,pagination:{pageSize:25},scroll:{x:"max-content"}})}function ry({rows:t,loading:a,sunday:s,holiday:r,holidayTitle:l}){const o=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(d,c,g)=>g+1},{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:130},{title:"EC No",dataIndex:"ecno",key:"ecno",width:100},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:100},{title:"Full Name",key:"full_name",render:(d,c)=>c?.full_name??c?.student_name??c?.name??"--"},{title:"Attendance",dataIndex:"attendence_type_id",key:"attendence_type_id",width:120,render:d=>cr(d)},{title:"Date",dataIndex:"date",key:"date",width:120,render:d=>d?te(d).format("DD-MM-YYYY"):"--"},{title:"Remarks",dataIndex:"remark",key:"remark",width:140},{title:"In Time",dataIndex:"intime",key:"intime",width:120},{title:"Out Time",dataIndex:"outtime",key:"outtime",width:120}],[]);return s?e.jsx("div",{style:{textAlign:"center",fontWeight:700,padding:"32px 0"},children:"Weekly Off"}):r?e.jsxs("div",{style:{textAlign:"center",padding:"32px 0"},children:[e.jsx("div",{style:{fontWeight:700,marginBottom:8},children:"Holiday"}),e.jsx("div",{children:l||"--"})]}):e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(d,c)=>String(d?.student_session_id??d?.student_id??d?.id??c),columns:o,dataSource:Array.isArray(t)?t:[],loading:a,pagination:{pageSize:25},scroll:{x:"max-content"}})}function iy({data:t,loading:a,onViewStudent:s}){const r=t?.data??t??{},l=Array.isArray(r?.studentAttendance)?r.studentAttendance:Array.isArray(r?.students)?r.students:Array.isArray(r?.report)?r.report:Array.isArray(r?.data?.resultlist)?r.data.resultlist:Array.isArray(r?.resultlist)?r.resultlist:Array.isArray(r?.data)?r.data:Array.isArray(r)?r:[],o=Array.isArray(r?.monthly_holiday)?r.monthly_holiday:[],d=Array.isArray(r?.dateSun)?r.dateSun:[],c=Number(r?.totalDaysMonth??0),g=i.useMemo(()=>{const y=[{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:20,fixed:"left"},{title:"Name",key:"student_name",fixed:"left",render:(p,m)=>e.jsx(n.Button,{type:"link",style:{padding:0},onClick:()=>s?.(m),children:m?.student_name??m?.full_name??"--"})}];return[...new Array(c).keys()].forEach(p=>{y.push({title:String(p+1),key:`day-${p+1}`,align:"center",render:(m,A)=>{const b=A?.[`${A?.student_id}_${l.indexOf(A)}`]?.[p]??{},f=b?.attendance_date,x=o.find(R=>R?.date===f);return d.includes(f)?Vr("sunday","W"):x?Vr("holiday","H"):cr(b?.attendence_type_id)}})}),y.push({title:"Total",key:"total",fixed:"right",render:(p,m)=>{let A=0,C=0,b=0;return[...new Array(c).keys()].forEach(f=>{const x=m?.[`${m?.student_id}_${l.indexOf(m)}`]?.[f]??{},R=String(x?.attendence_type_id??"");R==="1"&&(A+=1),R==="4"&&(C+=1),R==="3"&&(b+=1)}),e.jsxs("span",{children:["P: ",A," A: ",C," L: ",b]})}}),y},[o,s,l,d,c]);return e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(y,p)=>String(y?.student_id??p),columns:g,dataSource:l,loading:a,pagination:{pageSize:20},scroll:{x:"max-content"},locale:{emptyText:e.jsx(n.Empty,{description:"No monthly report found"})}})}function ly({open:t,onClose:a,loading:s,data:r,studentName:l}){const o=Array.isArray(r?.data?.report)?r.data.report:[],d=[{title:"Date",dataIndex:"attendance_date",key:"attendance_date",render:c=>c?te(c).format("DD-MM-YYYY"):"--"},{title:"Status",key:"status",render:(c,g)=>cr(g?.attendence_type_id??g?.attendance_type)},{title:"In Time",dataIndex:"intime",key:"intime"},{title:"Out Time",dataIndex:"outtime",key:"outtime"},{title:"Remark",dataIndex:"remark",key:"remark"}];return e.jsx(n.Modal,{open:t,onCancel:a,footer:null,width:900,title:`Monthly Details${l?` - ${l}`:""}`,children:e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(c,g)=>String(c?.attendance_date??g),columns:d,dataSource:o,loading:s,pagination:{pageSize:20},scroll:{x:"max-content"}})})}function oy({open:t,onClose:a,onSubmit:s,loading:r}){const[l,o]=n.Modal.useModal(),[d,c]=i.useState(null),[g,y]=i.useState(""),p=async()=>{if(!d){await l.warning({title:"Select time"});return}await s?.({outtime:d.format("h:mm a"),message:g}),c(null),y("")};return e.jsxs(e.Fragment,{children:[o,e.jsx(n.Modal,{title:"Emergency Leave",open:t,onCancel:a,onOk:p,confirmLoading:r,children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:13,fontWeight:500,marginBottom:6},children:"Select Time"}),e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",value:d,onChange:c,style:{width:"100%"}})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:13,fontWeight:500,marginBottom:6},children:"Purpose"}),e.jsx(n.Input.TextArea,{rows:4,value:g,onChange:m=>y(m.target.value)})]})]})})]})}const yo=t=>Xf(t),Ui=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a.reduce((s,r)=>({present:s.present+Number(r?.present??r?.Present??r?.total_present??0),absent:s.absent+Number(r?.absent??r?.Absent??r?.total_absent??0),late:s.late+Number(r?.late??r?.Late??0),leave:s.leave+Number(r?.leave??r?.Leave??0)}),{present:0,absent:0,late:0,leave:0}):{present:Number(a?.present??a?.Present??a?.total_present??0),absent:Number(a?.absent??a?.Absent??a?.total_absent??0),late:Number(a?.late??a?.Late??0),leave:Number(a?.leave??a?.Leave??0)}};function dy({token:t}){const{data:a}=H(t?[Et.dashboard.monthlyGraph,t]:null,([o,d])=>Lt(o,d)),{data:s}=H(t?[Et.dashboard.weeklyGraph,t]:null,([o,d])=>Lt(o,d)),r=i.useMemo(()=>Ui(a),[a]),l=i.useMemo(()=>Ui(s),[s]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsxs(n.Card,{children:[e.jsx(n.Typography.Title,{level:4,style:{marginTop:0},children:"Attendance Dashboard"}),e.jsx(n.Typography.Paragraph,{style:{marginBottom:0},children:"Student attendance overview with monthly and weekly analytics migrated from the ERP dashboard."})]}),e.jsx(fo,{summary:r}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(320px, 1fr))",gap:20},children:[e.jsx(ba,{summary:r,title:"Monthly Attendance Chart"}),e.jsx(ba,{summary:l,title:"Weekly Attendance Chart"})]})]})}const Ms=Et.studentAttendance,cy={width:"100%",height:40};function uy({token:t}){const a=i.useRef(null),[s,r]=i.useState(""),[l,o]=i.useState(""),[d,c]=i.useState(""),[g,y]=i.useState(""),[p,m]=i.useState(""),[A,C]=i.useState(""),[b,f]=i.useState(te()),[x,R]=i.useState(0),[k,O]=i.useState([]),[D,_]=i.useState(!1),[u,h]=i.useState(null),[S,E]=i.useState(!1),[F,q]=i.useState(!1),T=ls(t),U=os(s,t),j=i.useMemo(()=>!s||!d||x===0?null:Ka(Ms.list,{cID:s,sID:d,batch_id:p,date:b.format("YYYY-MM-DD")}),[p,s,b,x,d]),{data:P,isLoading:I,mutate:N}=H(t&&j?[j,t]:null,([G,J])=>Lt(G,J));i.useEffect(()=>{O(mo(P,"student"))},[P]);const V=P?.data?.data??P?.data??P??{},W=!!V?.sunday,B=!!V?.holiday?.holiday,$=V?.holiday?.title??"",M=i.useMemo(()=>yo(k),[k]),L=i.useMemo(()=>[{title:"Admission No",dataIndex:"admission_no"},{title:"EC No",dataIndex:"ecno"},{title:"Roll No",dataIndex:"roll_no"},{title:"Full Name",dataIndex:"full_name"},{title:"Attendance",dataIndex:"attendence_type_id"},{title:"Date",dataIndex:"date"},{title:"Remarks",dataIndex:"remark"},{title:"In Time",dataIndex:"intime"},{title:"Out Time",dataIndex:"outtime"}],[]),Y=async()=>{if(k.length)try{q(!0),await Kf(Ms.save,{attendenceData:k,date:b.format("YYYY-MM-DD"),holiday:D?"YES":"NO"},t),w.success("Student attendance saved."),N?.()}catch(G){w.error(G?.message??"Failed to save attendance.")}finally{q(!1)}},se=async({outtime:G,message:J})=>{if(u?.attendence_id)try{E(!0),await Gf(Ms.emergencyLeave,{outtime:G,message:J,id:u.attendence_id},t),w.success("Emergency leave updated."),h(null),N?.()}catch(re){w.error(re?.message??"Failed to update emergency leave.")}finally{E(!1)}},X=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(Q,{options:T.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:G=>{r(G?.value??""),o(G?.label??""),c(""),y(""),m(""),C("")},required:!0}),e.jsx(Q,{options:U.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:G=>{c(G?.value??""),y(G?.label??""),m(""),C("")},required:!0},`section-${s}`),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(n.DatePicker,{value:b,onChange:G=>G&&f(G),style:cy,allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:()=>R(G=>G+1)})})]}),e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Date",value:b.format("DD-MM-YYYY")}]})]});return e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{}),e.jsx(ds,{title:"Student Attendance",printRef:a,exportRows:k,exportColumns:L,onRefresh:()=>N?.(),filterSection:X,summary:M,chartContent:!1,reportTitle:"Student Attendance List",reportExtra:e.jsxs("div",{style:{display:"flex",gap:8},children:[e.jsx(n.Button,{size:"small",type:D?"primary":"default",onClick:()=>_(G=>!G),children:D?"Marked":"Mark As Holiday"}),e.jsx(n.Button,{size:"small",type:"primary",onClick:Y,loading:F,disabled:!k.length,children:"Save Attendance"})]}),fileBaseName:"student-attendance",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(It,{}),e.jsx(n.Typography.Title,{level:5,children:"Student Attendance"}),e.jsx(n.Card,{size:"small",style:{marginBottom:12},children:e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Date",value:b.format("DD-MM-YYYY")}]})})]}),e.jsx(sy,{rows:k,loading:I,sunday:W,holiday:B,holidayTitle:$,onChangeRows:O,onEmergency:h})]})}),e.jsx(oy,{open:!!u,onClose:()=>h(null),onSubmit:se,loading:S})]})}const py=Et.dailyAttendance,my={width:"100%",height:40};function hy({token:t}){const a=i.useRef(null),[s,r]=i.useState(""),[l,o]=i.useState(""),[d,c]=i.useState(""),[g,y]=i.useState(""),[p,m]=i.useState(""),[A,C]=i.useState(""),[b,f]=i.useState(te()),[x,R]=i.useState(0),k=ls(t),O=os(s,t),D=i.useMemo(()=>!s||!d||x===0?null:Ka(py.list,{cID:s,sID:d,batch_id:p,date:b.format("YYYY-MM-DD")}),[p,s,b,x,d]),{data:_,isLoading:u,mutate:h}=H(t&&D?[D,t]:null,([I,N])=>Lt(I,N)),S=i.useMemo(()=>mo(_,"student"),[_]),E=_?.data?.data??_?.data??_??{},F=!!E?.sunday,q=!!E?.holiday?.holiday,T=E?.holiday?.title??"",U=i.useMemo(()=>yo(S),[S]),j=i.useMemo(()=>[{title:"Admission No",dataIndex:"admission_no"},{title:"EC No",dataIndex:"ecno"},{title:"Roll No",dataIndex:"roll_no"},{title:"Full Name",dataIndex:"full_name"},{title:"Attendance",dataIndex:"attendence_type_id"},{title:"Date",dataIndex:"date"},{title:"Remarks",dataIndex:"remark"},{title:"In Time",dataIndex:"intime"},{title:"Out Time",dataIndex:"outtime"}],[]),P=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(Q,{options:k.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:I=>{r(I?.value??""),o(I?.label??""),c(""),y(""),m(""),C("")},required:!0}),e.jsx(Q,{options:O.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:I=>{c(I?.value??""),y(I?.label??""),m(""),C("")},required:!0},`section-${s}`),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(n.DatePicker,{value:b,onChange:I=>I&&f(I),style:my,allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:()=>R(I=>I+1)})})]}),e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Date",value:b.format("DD-MM-YYYY")}]})]});return e.jsx(ds,{title:"Daily Attendance",subtitle:"Read-only daily attendance enquiry migrated from ERP AttendanceDashboard.",printRef:a,exportRows:S,exportColumns:j,onRefresh:()=>h?.(),filterSection:P,summary:U,chartContent:e.jsx(ba,{summary:U,title:"Daily Attendance Overview"}),reportTitle:"Daily Attendance List",fileBaseName:"daily-attendance",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(It,{}),e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Date",value:b.format("DD-MM-YYYY")}]})]}),e.jsx(ry,{rows:S,loading:u,sunday:F,holiday:q,holidayTitle:T})]})})}const Ni=Et.monthlyReport,go=t=>Array.isArray(t?.studentAttendance)?t.studentAttendance:Array.isArray(t?.students)?t.students:Array.isArray(t?.report)?t.report:Array.isArray(t?.data?.resultlist)?t.data.resultlist:Array.isArray(t?.resultlist)?t.resultlist:Array.isArray(t?.data)?t.data:Array.isArray(t)?t:[],fy=t=>{const a=go(t),s=Number(t?.totalDaysMonth??0),r={present:0,absent:0,late:0,leave:0};return a.forEach((l,o)=>{[...new Array(s).keys()].forEach(d=>{const c=l?.[`${l?.student_id}_${o}`]?.[d]??{},g=String(c?.attendence_type_id??"");g==="1"&&(r.present+=1),g==="4"&&(r.absent+=1),g==="3"&&(r.late+=1),g==="2"&&(r.leave+=1)})}),r},yy=t=>{const a=go(t),s=Number(t?.totalDaysMonth??0);return a.map((r,l)=>{let o=0,d=0,c=0;return[...new Array(s).keys()].forEach(g=>{const y=r?.[`${r?.student_id}_${l}`]?.[g]??{},p=String(y?.attendence_type_id??"");p==="1"&&(o+=1),p==="4"&&(d+=1),p==="3"&&(c+=1)}),{roll_no:r?.roll_no??"",student_name:r?.student_name??r?.full_name??"",present:o,absent:d,late:c}})};function gy({token:t}){const a=i.useRef(null),[s,r]=i.useState(""),[l,o]=i.useState(""),[d,c]=i.useState(""),[g,y]=i.useState(""),[p,m]=i.useState(""),[A,C]=i.useState(""),[b,f]=i.useState(String(new Date().getFullYear())),[x,R]=i.useState(String(new Date().getMonth()+1).padStart(2,"0")),[k,O]=i.useState(0),[D,_]=i.useState(null),u=ls(t),h=os(s,t),S=i.useMemo(()=>ir(Number(b)),[b]),E=i.useMemo(()=>rr(10),[]),F=i.useMemo(()=>!s||!d||!b||!x||k===0?null:Ka(Ni.table,{session:$i(),class_id:s,section_id:d,year:b,month:x,batch_id:p}),[p,s,x,k,d,b]),{data:q,isLoading:T,mutate:U}=H(t&&F?[F,t]:null,([M,L])=>Lt(M,L)),j=q?.data?.data??q?.data??q??{},P=i.useMemo(()=>fy(j),[j]),I=i.useMemo(()=>yy(j),[j]),N=i.useMemo(()=>[{title:"Roll No",dataIndex:"roll_no"},{title:"Name",dataIndex:"student_name"},{title:"Present",dataIndex:"present"},{title:"Absent",dataIndex:"absent"},{title:"Late",dataIndex:"late"}],[]),V=i.useMemo(()=>D?.student_id?Ka(Ni.byStudent,{student_id:D.student_id,month:x,year:b,session:$i()}):null,[x,D,b]),{data:W,isLoading:B}=H(t&&V?[V,t]:null,([M,L])=>Lt(M,L)),$=e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(180px, 1fr))",gap:12,alignItems:"end"},children:[e.jsx(Q,{options:u.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:M=>{r(M?.value??""),o(M?.label??""),c(""),y(""),m(""),C("")},required:!0}),e.jsx(Q,{options:h.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:M=>{c(M?.value??""),y(M?.label??""),m(""),C("")},required:!0},`section-${s}`),e.jsx(Q,{options:E,label:"Year",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:E.find(M=>String(M?.value)===String(b))??null,onChange:M=>f(String(M?.value??"")),required:!0}),e.jsx(Q,{options:S,label:"Month",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:S.find(M=>String(M?.value)===String(x))??null,onChange:M=>R(String(M?.value??"").padStart(2,"0")),required:!0},`month-${b}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:()=>O(M=>M+1)})})]}),e.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:12,alignItems:"center",justifyContent:"space-between"},children:[e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Month",value:S.find(M=>String(M?.value)===String(x))?.label??x},{label:"Year",value:b}]}),e.jsx(ay,{})]})]});return e.jsxs(e.Fragment,{children:[e.jsx(ds,{title:"Monthly Report",subtitle:"Monthly class-wise attendance matrix and student drilldown.",printRef:a,exportRows:I,exportColumns:N,onRefresh:()=>U?.(),filterSection:$,summary:P,chartContent:e.jsx(ba,{summary:P,title:"Monthly Attendance Summary"}),reportTitle:"Monthly Attendance Table",fileBaseName:"monthly-attendance-report",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(It,{}),e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Month",value:S.find(M=>String(M?.value)===String(x))?.label??x},{label:"Year",value:b}]})]}),e.jsx(iy,{data:j,loading:T,onViewStudent:_})]})}),e.jsx(ly,{open:!!D,onClose:()=>_(null),loading:B,data:W,studentName:D?.student_name??D?.full_name})]})}const xy=Et.yearlyReport,by=t=>{const a=t?.data?.data??t?.data??t??{};return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:Array.isArray(a?.students)?a.students:Array.isArray(a?.report)?a.report:Array.isArray(a?.resultlist)?a.resultlist:[]},jy=t=>(Array.isArray(t)?t:[]).reduce((a,s)=>({present:a.present+Number(s?.singleStudentPresentData??s?.present??0),absent:a.absent+Number(s?.singleStudentAbsentData??s?.absent??0),late:a.late+Number(s?.late??0),leave:a.leave+Number(s?.leave??0)}),{present:0,absent:0,late:0,leave:0});function Sy({token:t}){const a=i.useRef(null),[s,r]=i.useState(""),[l,o]=i.useState(""),[d,c]=i.useState(""),[g,y]=i.useState(""),[p,m]=i.useState(""),[A,C]=i.useState(""),[b,f]=i.useState(""),[x,R]=i.useState(""),[k,O]=i.useState(0),D=ls(t),_=os(s,t),u=Zf(t),h=i.useMemo(()=>!s||!d||k===0?null:Ka(xy.table,{class_id:s,section_id:d,session_id:p,batch_id:b}),[b,s,k,d,p]),{data:S,isLoading:E,mutate:F}=H(t&&h?[h,t]:null,([I,N])=>Lt(I,N)),q=i.useMemo(()=>by(S),[S]),T=i.useMemo(()=>jy(q),[q]),U=i.useMemo(()=>[{title:"Roll No",dataIndex:"roll_no"},{title:"Full Name",dataIndex:"full_name"},{title:"Present",dataIndex:"singleStudentPresentData"},{title:"Absent",dataIndex:"singleStudentAbsentData"}],[]),j=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(I,N,V)=>V+1},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:100},{title:"Full Name",dataIndex:"full_name",key:"full_name"},{title:"Total Present",dataIndex:"singleStudentPresentData",key:"singleStudentPresentData",width:130},{title:"Total Absent",dataIndex:"singleStudentAbsentData",key:"singleStudentAbsentData",width:130}],[]),P=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(Q,{options:D.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:I=>{r(I?.value??""),o(I?.label??""),c(""),y(""),f(""),R("")},required:!0}),e.jsx(Q,{options:_.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:I=>{c(I?.value??""),y(I?.label??""),f(""),R("")},required:!0},`section-${s}`),e.jsx(Q,{options:u.options,label:"Session",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:I=>{m(I?.value??""),C(I?.label??"")},required:!0}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:()=>O(I=>I+1)})})]}),e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Session",value:A}]})]});return e.jsx(ds,{title:"Yearly Report",subtitle:"Yearly attendance summary migrated from ERP AttendanceDashboard.",printRef:a,exportRows:q,exportColumns:U,onRefresh:()=>F?.(),filterSection:P,summary:T,chartContent:e.jsx(ba,{summary:T,title:"Yearly Attendance Summary"}),reportTitle:"Yearly Attendance List",fileBaseName:"yearly-attendance-report",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(It,{}),e.jsx(qt,{items:[{label:"Class",value:l},{label:"Section",value:g},{label:"Session",value:A}]})]}),e.jsx(n.Table,{bordered:!0,size:"small",rowKey:(I,N)=>String(I?.student_id??I?.id??N),columns:j,dataSource:q,loading:E,pagination:{pageSize:25},scroll:{x:"max-content"}})]})})}const vy=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},xo=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},Bi=(t,a)=>{const s=`${t||""}`.trim();if(!s)return"";if(/^https?:\/\//i.test(s))return s;const r=xo(a),l=s.startsWith("/")?s.slice(1):s;return vy(Ke(),`uploads/school_${r}/branch/income/${l}`)},wy=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a.map(s=>({value:s?.value??s?.id??"",label:s?.label??s?.name??s?.income_category??s?.title??""})):[]};function _y({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),{isLoading:l,data:o}=H(s&&r?[`${Wc}?id=${r}`,s]:null,([u,h])=>K(u,h)),{data:d}=H(s?[Ll,s]:null,([u,h])=>K(u,h)),c=i.useMemo(()=>wy(d),[d]),g=i.useMemo(()=>{if(Array.isArray(o))return o[0];const u=o?.data?.data??o?.data??o??{};return Array.isArray(u)?u[0]:u??{}},[o]),[y,p]=i.useState({income_head:"",name:"",invoice_no:"",date:te(),amount:"",description:"",doc:""}),[m,A]=i.useState(!1),[C,b]=i.useState(!1),[f,x]=i.useState(""),[R,k]=i.useState(""),O=async u=>{u.preventDefault(),A(!0);try{await a(u,r)}finally{A(!1)}};i.useEffect(()=>{g&&p({income_head:g?.inc_head_id||"",name:g?.name||"",invoice_no:g?.invoice_no||"",date:g?.date?te(g.date):te(),amount:g?.amount||"",description:g?.note||"",doc:g?.documents||""})},[g]);const D=(u,h)=>{p(S=>({...S,[u]:h}))},_=c.find(u=>String(u.value)===String(y.income_head))??null;return l?e.jsx(v,{pt:4,pb:1,style:{width:550,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(n.Spin,{tip:"Loading..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:O,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Edit Income"})}),e.jsx(v,{p:2,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(Q,{label:"Income Head",options:c,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"income_head",required:!0,value:_,onChange:u=>D("income_head",u?.value||"")})]})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"name",type:"text",label:"Name",required:!0,value:y.name,onChange:u=>D("name",u.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0,value:y.invoice_no,onChange:u=>D("invoice_no",u.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:y.date,Desplay:"Date",name:"date",required:!0,onChange:u=>D("date",u)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"amount",type:"number",label:"Amount",required:!0,value:y.amount,onChange:u=>D("amount",u.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(lt,{name:"description",label:"Description",rows:3,value:y.description,onChange:u=>D("description",u.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.Upload,{action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${xo(s)}/branch/income`},headers:{Authorization:s},maxCount:1,onChange:u=>{if(u.file.status==="removed"&&D("doc",""),u.file.status==="done"){const h=u.file.response?.data??u.file.response?.file??"";D("doc",String(h??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:y.doc?"Change":"Upload"})},y.doc||"empty"),y.doc&&e.jsx("a",{href:Bi(y.doc,s),target:"_blank",rel:"noreferrer",style:{display:"block",marginTop:8,fontSize:12,color:"#1677ff",textDecoration:"underline"},onClick:u=>{u.preventDefault(),x(Bi(y.doc,s)),k(y.doc||"Document"),b(!0)},children:"View existing document"}),e.jsx("input",{type:"hidden",name:"doc",value:y.doc||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:m?"Saving...":"Submit",color:"primary",disabled:m})})})})})]})})]})}),e.jsx(n.Modal,{open:C,onCancel:()=>{b(!1),x(""),k("")},footer:null,width:900,closable:!0,children:e.jsxs(v,{p:3,children:[e.jsx(v,{mb:2,children:e.jsx(pe,{level:5,children:R||"View Document"})}),f?f.match(/\.pdf(?:[?#]|$)/i)?e.jsx("iframe",{src:f,title:R||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:f,alt:R||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(pe,{children:"No document found"})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const Cy=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Ay=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},Li=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}};function Dy({token:t}){const[a,s]=i.useState([]),[r,l]=i.useState(""),[o,d]=i.useState(""),[c,g]=i.useState({income_head:"",name:"",invoice_no:"",date:te().format("YYYY-MM-DD"),amount:"",description:"",doc:""}),[y,p]=i.useState(!1),[m,A]=i.useState({page:1,rowsPerPage:10}),C=(T,U)=>{A({...m,page:T,rowsPerPage:parseInt(U,10)})},b=async(T,U)=>{try{await k(Ne(T,U,t),Ge(U)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{w.error("Failed to add the new item.",{duration:1e3})}},{isLoading:f,error:x,data:R,mutate:k}=H(t?[Uc,t,m.page,m.rowsPerPage]:null,([T,U,j,P])=>K(`${T}?page=${j}&per_page=${P}`,U)),O=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0},{id:"3",name:"Income Category",selector:"income_category",sortable:!0},{id:"4",name:"Invoice No",selector:"invoice_no",sortable:!0},{id:"5",name:"Date",selector:"date",sortable:!0},{id:"6",name:"Note",selector:"note",sortable:!0},{id:"7",name:"Amount",selector:"amount",sortable:!0},{id:"8",name:"File",selector:"documents",sortable:!1,render:T=>{const U=Li(t),j=T?/^https?:\/\//i.test(T)?T:Ay(Ke(),`uploads/school_${U}/branch/income/${T}`):null;return T?e.jsx("span",{style:{textDecoration:"underline",color:"#5080f8",cursor:"pointer"},onClick:()=>j&&window.open(j,"_blank"),children:"View"}):"Not Uploaded"}}],[t]),D=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],_=async T=>{try{await k(He(Lc,T,t),ze(T)),w.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{w.error("Failed to delete the item.",{duration:1e3})}},u=async(T,U,j)=>{try{await k(We(T,U,t)),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),await j(null)}catch{w.error("Failed to update the item.",{duration:1e3})}},h=async(T,U)=>{T.preventDefault();const j=new FormData(T.target);await u(Bc,j,U),E(!1)},S=async T=>{if(T.preventDefault(),!T.target.date.value)w.error("Select required dates",{duration:1e3}),T.target?.date?.focus(),d("textDanger");else{const U=new FormData(T.target);await b(Nc,U),T.target.reset(),l(""),g(j=>({...j,date:te().format("YYYY-MM-DD")}))}},E=T=>{p(T)},{data:F}=H(t?[Ll,t]:null,([T,U])=>K(T,U)),q=i.useMemo(()=>Cy(F),[F]);return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Add Income"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:S,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{label:"Income Head",options:q,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"income_head",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"name",type:"text",label:"Name",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:te(),Desplay:"Date",name:"date",status:o===""?"":"error",classnme:o,onChange:()=>d("")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"amount",type:"number",label:"Amount",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.Upload,{action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${Li(t)}/branch/income`},headers:{Authorization:t},maxCount:1,onChange:T=>{if(T.file.status==="removed"&&l(""),T.file.status==="done"){const U=T.file.response?.data??T.file.response?.file??"";l(String(U??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:r?"Change":"Upload"})},r||"empty"),e.jsx("input",{type:"hidden",name:"doc",value:r||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(lt,{name:"description",label:"Description",rows:3})})}),e.jsx(n.Col,{xs:24,md:12,className:"buttonCoustom",children:e.jsx(n.Row,{justifyContent:"flex-end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Income List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:C,data:{newData:R,columns:O,action:!0,Loading:f,ActionView:D,error:x,editDesign:e.jsx(_y,{data:{handleUpdate:h,token:t}}),deleteTodoMutation:_,open:y,DrawerUpdate:E}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; } .textDanger { color: #dc2626; } .buttonCoustom { margin-top: 8px; }"})]})}const qi={width:"100%",height:40};function Ty({token:t}){const[a,s]=i.useState(null),[r,l]=i.useState(null),[o,d]=i.useState(""),[c,g]=i.useState(""),[y,p]=i.useState(""),[m,A]=i.useState({page:1,rowsPerPage:10}),C=(D,_)=>{A({...m,page:D,rowsPerPage:parseInt(_,10)})},{isLoading:b,error:f,data:x,mutate:R}=H(t&&o?[o,t,m.page,m.rowsPerPage]:null,([D,_,u,h])=>K(`${D}page=${u}&per_page=${h}`,_)),k=i.useMemo(()=>[{id:"1",name:"Invoice No",selector:"invoice_no",sortable:!0},{id:"2",name:"Date",selector:"date",sortable:!0},{id:"3",name:"Name",selector:"name",sortable:!0},{id:"4",name:"Description",selector:"description",sortable:!0},{id:"5",name:"Income Category",selector:"income_category",sortable:!0},{id:"6",name:"Note",selector:"note",sortable:!0},{id:"7",name:"Amount",selector:"amount",sortable:!0}],[]),O=()=>{if(!a){w.error("Select required dates",{duration:1e3}),g("textDanger");return}if(!r){w.error("Select required dates",{duration:1e3}),p("textDanger");return}const D=a.format("YYYY-MM-DD"),_=r.format("YYYY-MM-DD");d(`${Kc}?from_date=${D}&to_date=${_}&`),A(u=>({...u,page:1}))};return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Search Income"})}),e.jsx(v,{p:3,children:e.jsxs(n.Row,{gutter:[16,16],alignItems:"end",children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsxs(v,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"From Date"}),e.jsx(n.DatePicker,{value:a,onChange:D=>{s(D),g("")},style:qi,allowClear:!1})]})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsxs(v,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"To Date"}),e.jsx(n.DatePicker,{value:r,onChange:D=>{l(D),p("")},style:qi,allowClear:!1})]})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:O})})]})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Income List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:C,data:{newData:x,columns:k,action:!1,Loading:b,error:f,pageController:m}})})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}function Ry({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),{isLoading:l,data:o}=H(s&&r?[`${Hc}?id=${r}`,s]:null,([C,b])=>K(C,b)),d=i.useMemo(()=>{if(Array.isArray(o))return o[0];const C=o?.data?.data??o?.data??o??{};return Array.isArray(C)?C[0]:C??{}},[o]),[c,g]=i.useState({incomehead:"",description:""}),[y,p]=i.useState(!1);i.useEffect(()=>{d&&g({incomehead:d?.income_category||d?.incomehead||"",description:d?.description||""})},[d]);const m=(C,b)=>{g(f=>({...f,[C]:b}))},A=async C=>{C.preventDefault(),p(!0);try{await a(C)}finally{p(!1)}};return l?e.jsx(v,{pt:4,pb:1,style:{width:350,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(n.Spin,{tip:"Loading..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:350},children:[e.jsx("form",{onSubmit:A,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(v,{children:[e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(z,{name:"incomehead",type:"text",label:"Income Head Name",required:!0,value:c.incomehead,onChange:C=>m("incomehead",C.target.value)})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description",required:!0,value:c.description,onChange:C=>m("description",C.target.value)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justifyContent:"flex-end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:y?"Saving...":"Submit",color:"primary",disabled:y})})})})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function Iy({token:t}){const[a,s]=i.useState({incomehead:"",description:""}),[r,l]=i.useState(!1),[o,d]=i.useState(!1),[c,g]=i.useState({page:1,rowsPerPage:10}),y=(u,h)=>{g({...c,page:u,rowsPerPage:parseInt(h,10)})},p=async(u,h)=>{try{await b(Ne(u,h,t),Ge(h)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{w.error("Failed to add the new item.",{duration:1e3})}},{isLoading:m,error:A,data:C,mutate:b}=H(t?[qc,t,c.page,c.rowsPerPage]:null,([u,h,S,E])=>K(`${u}?page=${S}&per_page=${E}`,h)),f=i.useMemo(()=>[{id:"1",name:"Name",selector:"income_category",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],[]),x=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],R=async u=>{try{await b(He(Vc,u,t),ze(u)),w.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{w.error("Failed to delete the item.",{duration:1e3})}},k=async(u,h)=>{try{await b(We(u,h,t)),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"})}catch{w.error("Failed to update the item.",{duration:1e3})}},O=async u=>{u.preventDefault();const h=new FormData(u.target);await k(Yc,h),_(!1)},D=async u=>{u.preventDefault(),d(!0);try{await p(zc,new FormData(u.target)),s({incomehead:"",description:""})}finally{d(!1)}},_=u=>{l(u)};return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:5,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Income Head"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:D,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"incomehead",type:"text",label:"Income Head Name",required:!0,value:a.incomehead,onChange:u=>s(h=>({...h,incomehead:u.target.value}))})})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description",required:!0,value:a.description,onChange:u=>s(h=>({...h,description:u.target.value}))})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justifyContent:"flex-end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:o?"Saving...":"Save",color:"primary",disabled:o})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,md:19,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Income Head List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:y,data:{newData:C,columns:f,action:!0,Loading:m,ActionView:x,error:A,editDesign:e.jsx(Ry,{data:{handleUpdate:O,token:t}}),deleteTodoMutation:R,open:r,DrawerUpdate:_}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const ky=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},bo=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},zi=(t,a)=>{const s=`${t||""}`.trim();if(!s)return"";if(/^https?:\/\//i.test(s))return s;const r=bo(a),l=s.startsWith("/")?s.slice(1):s;return ky(Ke(),`uploads/school_${r}/branch/expense/${l}`)},Yi=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a.map(s=>({value:s?.value??s?.id??"",label:s?.label??s?.name??s?.exp_category??s?.vendor_name??s?.title??""})):[]},Vi=[{label:"Cash",value:"cash"},{label:"UPI",value:"upi"},{label:"Phonepay",value:"phonepay"},{label:"Google Pay",value:"google_pay"},{label:"Net Banking",value:"net_banking"},{label:"Cheque",value:"cheque"},{label:"Demand Draft",value:"demand_draft"}];function Py({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),{isLoading:l,data:o}=H(s&&r?[`${nu}?id=${r}`,s]:null,([F,q])=>K(F,q)),{data:d}=H(s?[ql,s]:null,([F,q])=>K(F,q)),{data:c}=H(s?[zl,s]:null,([F,q])=>K(F,q)),g=i.useMemo(()=>Yi(d),[d]),y=i.useMemo(()=>Yi(c),[c]),p=i.useMemo(()=>{if(Array.isArray(o))return o[0];const F=o?.data?.data??o?.data??o??{};return Array.isArray(F)?F[0]:F??{}},[o]),[m,A]=i.useState(!1),[C,b]=i.useState(!1),[f,x]=i.useState(""),[R,k]=i.useState(""),O=async F=>{F.preventDefault(),A(!0);try{await a(F,r)}finally{A(!1)}},[D,_]=i.useState({expense_head:"",vendor:"",name:"",invoice_no:"",date:te(),amount:"",payment_mode:"",note:"",doc:""});i.useEffect(()=>{p&&_({expense_head:p?.exp_head_id||"",vendor:p?.fk_vendor_id||"",name:p?.name||"",invoice_no:p?.invoice_no||"",date:p?.date?te(p.date):te(),amount:p?.amount||"",payment_mode:p?.payment_mode||"",note:p?.note||"",doc:p?.documents||""})},[p]);const u=(F,q)=>{_(T=>({...T,[F]:q}))},h=g.find(F=>String(F.value)===String(D.expense_head))??null,S=y.find(F=>String(F.value)===String(D.vendor))??null,E=Vi.find(F=>String(F.value)===String(D.payment_mode))??null;return l?e.jsx(v,{pt:4,pb:1,style:{width:550,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(n.Spin,{tip:"Loading..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:O,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Edit Expense"})}),e.jsx(v,{p:2,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(Q,{label:"Expense Head",options:g,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"expense_head",required:!0,value:h,onChange:F=>u("expense_head",F?.value||"")})]})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{label:"Vendor",options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"vendor",value:S,onChange:F=>u("vendor",F?.value||"")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"name",type:"text",label:"Name",required:!0,value:D.name,onChange:F=>u("name",F.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0,value:D.invoice_no,onChange:F=>u("invoice_no",F.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",value:D.date,Desplay:"Date",name:"date",required:!0,onChange:F=>u("date",F)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"amount",type:"number",label:"Amount",required:!0,value:D.amount,onChange:F=>u("amount",F.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{label:"Payment Mode",options:Vi,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"payment_mode",required:!0,value:E,onChange:F=>u("payment_mode",F?.value||"")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(lt,{name:"note",label:"Description",rows:3,value:D.note,onChange:F=>u("note",F.target.value)})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.Upload,{action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${bo(s)}/branch/expense`},headers:{Authorization:s},maxCount:1,onChange:F=>{if(F.file.status==="removed"&&u("doc",""),F.file.status==="done"){const q=F.file.response?.data??F.file.response?.file??"";u("doc",String(q??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:D.doc?"Change":"Upload"})}),D.doc&&e.jsx("a",{href:zi(D.doc,s),target:"_blank",rel:"noreferrer",style:{display:"block",marginTop:8,fontSize:12,color:"#1677ff",textDecoration:"underline"},onClick:F=>{F.preventDefault(),x(zi(D.doc,s)),k(D.doc||"Document"),b(!0)},children:"View existing document"}),e.jsx("input",{type:"hidden",name:"doc",value:D.doc||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"center",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:m?"Saving...":"Submit",color:"primary",disabled:m})})})})})]})})]})}),e.jsx(n.Modal,{open:C,onCancel:()=>{b(!1),x(""),k("")},footer:null,width:900,closable:!0,children:e.jsxs(v,{p:3,children:[e.jsx(v,{mb:2,children:e.jsx(pe,{level:5,children:R||"View Document"})}),f?f.match(/\.pdf(?:[?#]|$)/i)?e.jsx("iframe",{src:f,title:R||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:f,alt:R||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(pe,{children:"No document found"})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const Wi=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Oy=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},jo=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},My=(t,a)=>{const s=`${t||""}`.trim();if(!s)return"";if(/^https?:\/\//i.test(s))return s;const r=jo(a),l=s.startsWith("/")?s.slice(1):s;return Oy(Ke(),`uploads/school_${r}/branch/expense/${l}`)},Ey=[{label:"Cash",value:"cash"},{label:"UPI",value:"upi"},{label:"Phonepay",value:"phonepay"},{label:"Google Pay",value:"google_pay"},{label:"Net Banking",value:"net_banking"},{label:"Cheque",value:"cheque"},{label:"Demand Draft",value:"demand_draft"}];function $y({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(""),[o,d]=i.useState({expense_head:"",vendor:"",name:"",invoice_no:"",date:te(),amount:"",payment_mode:"",note:"",doc:""}),[c,g]=i.useState(!1),[y,p]=i.useState(!1),[m,A]=i.useState({page:1,rowsPerPage:10}),C=(j,P)=>{A({...m,page:j,rowsPerPage:parseInt(P,10)})},b=async(j,P)=>{try{await Ne(j,P,t),k(),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{w.error("Failed to add the new item.",{duration:1e3})}},{isLoading:f,error:x,data:R,mutate:k}=H(t?[Gc,t,m.page,m.rowsPerPage]:null,([j,P,I,N])=>K(`${j}?page=${I}&per_page=${N}`,P)),O=i.useMemo(()=>[{title:"Sl No",dataIndex:"__serialNumber",key:"sl",sorter:(j,P)=>(j.__serialNumber??0)-(P.__serialNumber??0)},{title:"Name",dataIndex:"name",key:"name",sorter:(j,P)=>String(j.name??"").localeCompare(String(P.name??""))},{title:"Description",dataIndex:"description",key:"description"},{title:"Expense Category",dataIndex:"exp_category",key:"exp_category"},{title:"Invoice No",dataIndex:"invoice_no",key:"invoice_no"},{title:"Note",dataIndex:"note",key:"note"},{title:"Amount",dataIndex:"amount",key:"amount"},{title:"File",dataIndex:"documents",key:"documents",render:(j,P)=>j?e.jsx("span",{style:{textDecoration:"underline",color:"#5080f8",cursor:"pointer"},onClick:()=>window.open(My(j,t),"_blank"),children:"View"}):"Not Uploaded"}],[t]),D=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],_=async j=>{try{await He(Xc,j,t),k(),w.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{w.error("Failed to delete the item.",{duration:1e3})}},u=async(j,P,I)=>{try{await k(We(j,P,t)),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),await I(null)}catch{w.error("Failed to update the item.",{duration:1e3})}},h=async(j,P)=>{j.preventDefault();const I=new FormData(j.target);await u(Qc,I,P),E(!1)},S=async j=>{if(j.preventDefault(),!j.target.date.value)w.error("Select required dates",{duration:1e3}),j.target?.date?.focus(),l("textDanger");else{const P=new FormData(j.target);p(!0);try{await b(Jc,P)}finally{p(!1)}j.target.reset(),d(I=>({...I,date:te()})),s("")}},E=j=>{g(j)},{data:F}=H(t?[ql,t]:null,([j,P])=>K(j,P)),{data:q}=H(t?[zl,t]:null,([j,P])=>K(j,P)),T=i.useMemo(()=>Wi(F),[F]),U=i.useMemo(()=>Wi(q),[q]);return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Add Expense"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:S,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{label:"Expense Head",options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"expense_head",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{label:"Vendor",options:U,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"vendor"})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"name",type:"text",label:"Name",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD",defaultValue:te(),Desplay:"Date",name:"date",status:r===""?"":"error",classnme:r,onChange:()=>l("")})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(z,{name:"amount",type:"number",label:"Amount",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(Q,{label:"Payment Mode",options:Ey,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"payment_mode",required:!0})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx(v,{children:e.jsx(lt,{name:"note",label:"Description",rows:3})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsxs(v,{children:[e.jsx(n.Upload,{action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${jo(t)}/branch/expense`},headers:{Authorization:t},maxCount:1,onChange:j=>{if(j.file.status==="removed"&&s(""),j.file.status==="done"){const P=j.file.response?.data??j.file.response?.file??"";s(String(P??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})}),e.jsx("input",{type:"hidden",name:"doc",value:a||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,md:12,className:"buttonCoustom",children:e.jsx(n.Row,{justifyContent:"flex-end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:y?"Saving...":"Save",color:"primary",disabled:y})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Expense List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:C,data:{newData:R,columns:O,columnstype:"antd",action:!0,Loading:f,ActionView:D,error:x,editDesign:e.jsx(Py,{data:{handleUpdate:h,token:t}}),deleteTodoMutation:_,open:c,DrawerUpdate:E}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; } .textDanger { color: #dc2626; } .buttonCoustom { margin-top: 8px; }"})]})}const Fy=[{label:"Paid to",key:"vendor_name"},{label:"Address",key:"address"},{label:"GST Number",key:"gst"},{label:"Bussiness Name",key:"business_name"}],Uy=[{label:"Date",key:"date"},{label:"Voucher Number",key:"voucher_number"},{label:"Payment Mode",key:"payment_mode"}];function Ny({onClick:t}){return e.jsx(n.Button,{type:"primary",icon:e.jsx(ee.PrinterOutlined,{}),onClick:t,children:"Print"})}function By({data:t}){const a=i.useMemo(()=>{if(!t)return null;if(Array.isArray(t))return t[0];const s=t?.data?.data??t?.data??t??{};return Array.isArray(s)?s[0]:s},[t]);return e.jsx("div",{style:{width:"100%"},children:e.jsxs("div",{style:{border:"1px solid ",margin:"5px"},children:[e.jsx("div",{style:{display:"flex",alignItems:"center",flexDirection:"column",justifyContent:"center",borderBottom:"1px solid black",fontWeight:"bold",padding:"10px",backgroundColor:"#dfdfdf",fontSize:"18px"},children:"Expense Voucher"}),e.jsx("div",{style:{width:"100%",display:"flex",justifyContent:"center",borderBottom:"1px solid black"},children:e.jsx("div",{style:{width:"90%"},children:e.jsx(It,{})})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(n.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(n.Col,{xs:12,style:{borderRight:"1px solid black",display:"flex",alignItems:"flex-start",flexDirection:"column"},children:Fy.map((s,r)=>e.jsxs("div",{style:{marginBottom:4},children:[e.jsx("span",{style:{fontWeight:"bold"},children:s.label}),":"," ",a?.[s.key]]},`vendor${r}`))}),e.jsx(n.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:Uy.map((s,r)=>e.jsxs("div",{style:{marginBottom:4},children:[e.jsx("span",{style:{fontWeight:"bold"},children:s.label}),":"," ",a?.[s.key]]},`payment${r}`))})]})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(n.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(n.Col,{xs:12,style:{borderRight:"1px solid black",display:"flex",alignItems:"flex-start",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:"Description"}),":"," ",a?.note]})}),e.jsx(n.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsx("div",{children:e.jsx("span",{style:{fontWeight:"bold"},children:"Amount"})})})]})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(n.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(n.Col,{xs:12,style:{borderRight:"1px solid black",display:"flex",alignItems:"flex-start",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:a?.name})," "]})}),e.jsx(n.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsx("div",{children:a?.amount})})]})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(n.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(n.Col,{xs:12,style:{paddingRight:4,borderRight:"1px solid black",display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:"Total"})," "]})}),e.jsx(n.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:a?.amount})," "]})})]})}),e.jsx("div",{style:{width:"100%",height:"75px",display:"flex",alignItems:"flex-end"},children:e.jsxs(n.Row,{style:{paddingLeft:4,paddingRight:4},justify:"flex-end",align:"flex-end",children:[e.jsx(n.Col,{xs:4,style:{borderTop:"1px solid gray",display:"flex",justifyContent:"center"},children:"Approved by"}),e.jsx(n.Col,{xs:1}),e.jsx(n.Col,{xs:4,style:{borderTop:"1px solid gray",display:"flex",justifyContent:"flex-end"},children:"Signature"})]})})]})})}function Ly({token:t}){const a=i.useMemo(()=>typeof window>"u"?null:new URLSearchParams(window.location.search).get("id")??null,[]),s=i.useRef(null),r=ea.useReactToPrint({content:()=>s.current}),{isLoading:l,data:o,error:d}=H(t&&a?[su,a,t]:null,([c,g,y])=>K(`${c}?id=${g}`,y));return e.jsx(v,{pt:4,pb:1,children:e.jsx(n.Row,{gutter:[16,16],children:e.jsx(n.Col,{xs:24,children:e.jsx("div",{style:{width:"75%"},className:"container",children:e.jsx("div",{className:"row",children:e.jsx("div",{className:"col-lg-12",children:e.jsxs("div",{className:"card",ref:s,children:[e.jsx("div",{style:{width:"100%",display:"flex"},children:l?e.jsx("div",{style:{padding:40,textAlign:"center"},children:e.jsx(n.Spin,{tip:"Loading..."})}):d?e.jsx("div",{style:{padding:40,textAlign:"center"},children:"Error loading data"}):o?.Status==="Success"?e.jsx(By,{data:o}):e.jsx("div",{style:{padding:40,textAlign:"center"},children:"No Data Found"})}),e.jsxs("div",{className:"d-print-none mt-4",children:[e.jsx("div",{className:"float-end",children:e.jsx(Ny,{onClick:r})}),e.jsx("div",{className:"float-end",style:{marginRight:"2%"},children:e.jsx(n.Button,{type:"text",onClick:()=>window.history.back(),children:"Back"})})]})]})})})})})})})}const Hi={width:"100%",height:40};function qy({token:t}){const[a,s]=i.useState(null),[r,l]=i.useState(null),[o,d]=i.useState(""),[c,g]=i.useState(""),[y,p]=i.useState(""),[m,A]=i.useState({page:1,rowsPerPage:10}),C=(D,_)=>{A({...m,page:D,rowsPerPage:parseInt(_,10)})},{isLoading:b,error:f,data:x,mutate:R}=H(t&&o?[o,t,m.page,m.rowsPerPage]:null,([D,_,u,h])=>K(`${D}page=${u}&per_page=${h}`,_)),k=i.useMemo(()=>[{id:"1",name:"Invoice No",selector:"invoice_no",sortable:!0},{id:"2",name:"Date",selector:"date",sortable:!0},{id:"3",name:"Name",selector:"name",sortable:!0},{id:"4",name:"Description",selector:"description",sortable:!0},{id:"5",name:"Expense Category",selector:"exp_category",sortable:!0},{id:"6",name:"Note",selector:"note",sortable:!0},{id:"7",name:"Amount",selector:"amount",sortable:!0}],[]),O=()=>{if(!a){w.error("Select required dates",{duration:1e3}),g("textDanger");return}if(!r){w.error("Select required dates",{duration:1e3}),p("textDanger");return}const D=a.format("YYYY-MM-DD"),_=r.format("YYYY-MM-DD");d(`${iu}?from_date=${D}&to_date=${_}&`),A(u=>({...u,page:1}))};return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Search Expense"})}),e.jsx(v,{p:3,children:e.jsxs(n.Row,{gutter:[16,16],alignItems:"end",children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsxs(v,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"From Date"}),e.jsx(n.DatePicker,{value:a,onChange:D=>{s(D),g("")},style:Hi,allowClear:!1})]})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsxs(v,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"To Date"}),e.jsx(n.DatePicker,{value:r,onChange:D=>{l(D),p("")},style:Hi,allowClear:!1})]})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:O})})]})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Expense List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:C,data:{newData:x,columns:k,action:!1,Loading:b,error:f,pageController:m}})})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}function zy({data:t}){const{handleUpdate:a,token:s}=t||{},r=i.useContext(Tt),{isLoading:l,data:o}=H(s&&r?[`${ru}?id=${r}`,s]:null,([C,b])=>K(C,b)),d=i.useMemo(()=>{if(Array.isArray(o))return o[0];const C=o?.data?.data??o?.data??o??{};return Array.isArray(C)?C[0]:C??{}},[o]),[c,g]=i.useState({expensehead:"",description:""}),[y,p]=i.useState(!1);i.useEffect(()=>{d&&g({expensehead:d?.exp_category||d?.expensehead||"",description:d?.description||""})},[d]);const m=(C,b)=>{g(f=>({...f,[C]:b}))},A=async C=>{C.preventDefault(),p(!0);try{await a(C)}finally{p(!1)}};return l?e.jsx(v,{pt:4,pb:1,style:{width:350,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(n.Spin,{tip:"Loading..."})}):e.jsxs(v,{pt:4,pb:1,style:{width:350},children:[e.jsx("form",{onSubmit:A,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(v,{children:[e.jsx(z,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(z,{name:"expensehead",type:"text",label:"Expense Head Name",required:!0,value:c.expensehead,onChange:C=>m("expensehead",C.target.value)})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description",required:!0,value:c.description,onChange:C=>m("description",C.target.value)})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justifyContent:"flex-end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:y?"Saving...":"Submit",color:"primary",disabled:y})})})})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function Yy({token:t}){const[a,s]=i.useState({expensehead:"",description:""}),[r,l]=i.useState(!1),[o,d]=i.useState(!1),[c,g]=i.useState({page:1,rowsPerPage:10}),y=(u,h)=>{g({...c,page:u,rowsPerPage:parseInt(h,10)})},p=async(u,h)=>{try{await b(Ne(u,h,t),Ge(h)),w.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{w.error("Failed to add the new item.",{duration:1e3})}},{isLoading:m,error:A,data:C,mutate:b}=H(t?[Zc,t,c.page,c.rowsPerPage]:null,([u,h,S,E])=>K(`${u}?page=${S}&per_page=${E}`,h)),f=i.useMemo(()=>[{id:"1",name:"Name",selector:"exp_category",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],[]),x=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],R=async u=>{try{await b(He(au,u,t),ze(u)),w.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{w.error("Failed to delete the item.",{duration:1e3})}},k=async(u,h)=>{try{await b(We(u,h,t)),w.success("Success! Updated item.",{duration:1e3,icon:"🚀"})}catch{w.error("Failed to update the item.",{duration:1e3})}},O=async u=>{u.preventDefault();const h=new FormData(u.target);await k(tu,h),_(!1)},D=async u=>{u.preventDefault(),d(!0);try{await p(eu,new FormData(u.target)),s({expensehead:"",description:""})}finally{d(!1)}},_=u=>{l(u)};return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:5,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Expense Head"})}),e.jsx(v,{p:3,children:e.jsx("form",{onSubmit:D,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"expensehead",type:"text",label:"Expense Head Name",required:!0,value:a.expensehead,onChange:u=>s(h=>({...h,expensehead:u.target.value}))})})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(z,{name:"description",type:"text",label:"Description",required:!0,value:a.description,onChange:u=>s(h=>({...h,description:u.target.value}))})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justifyContent:"flex-end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:o?"Saving...":"Save",color:"primary",disabled:o})})})})})]})})})]})}),e.jsx(n.Col,{xs:24,md:19,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Expense Head List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:y,data:{newData:C,columns:f,action:!0,Loading:m,ActionView:x,error:A,editDesign:e.jsx(zy,{data:{handleUpdate:O,token:t}}),deleteTodoMutation:R,open:r,DrawerUpdate:_}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function Vy({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(""),[o,d]=i.useState(""),[c,g]=i.useState(0),[y,p]=i.useState(""),[m,A]=i.useState({page:1,rowsPerPage:10}),C=(E,F)=>{A({...m,page:E,rowsPerPage:parseInt(F,10)})},{isLoading:b,error:f,data:x,mutate:R}=H(t&&y?[y,t,m.page,m.rowsPerPage]:null,([E,F,q,T])=>K(`${E}page=${q}&per_page=${T}`,F)),{data:k}=H(t?[tn,t]:null,([E,F])=>K(E,F)),{data:O}=H(t&&a?[`${an}?class_id=${a}`,t]:null,([E,F])=>K(E,F)),D=i.useMemo(()=>k?Array.isArray(k)?k:Array.isArray(k?.data)?k.data:[]:[],[k]),_=i.useMemo(()=>O?Array.isArray(O)?O:Array.isArray(O?.data)?O.data:[]:[],[O]),u=i.useMemo(()=>[{id:"1",name:"First Name",selector:"firstname",sortable:!0},{id:"2",name:"Last Name",selector:"lastname",sortable:!0},{id:"3",name:"Class",selector:"class",sortable:!0},{id:"4",name:"Section",selector:"section",sortable:!0},{id:"5",name:"ID",selector:"username",sortable:!0},{id:"6",name:"Password",selector:"password",sortable:!0}],[]),h=E=>{s(E?.value||""),l(""),g(F=>F+1)},S=E=>{if(E.preventDefault(),!a){w.error("Please select class",{duration:1e3});return}if(!r){w.error("Please select section",{duration:1e3});return}const F=`${lu}?class_id=${a}&section_id=${r}&keyword=${o||""}&`;p(F),A(q=>({...q,page:1}))};return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Student Login Credential"})}),e.jsx(v,{p:3,children:e.jsxs(n.Row,{gutter:[16,16],align:"bottom",children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{label:"Class",options:D,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:D.find(E=>String(E.value)===String(a))??null,onChange:h})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{label:"Section",options:_,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:_.find(E=>String(E.value)===String(r))??null,onChange:E=>l(E?.value||"")})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(z,{name:"keyword",type:"text",label:"Search By Keyword",value:o,onChange:E=>d(E.target.value)})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(ne,{type:"button",value:"Search",color:"primary",onClick:S})})]})})]})}),y&&e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:C,data:{newData:x,columns:u,action:!1,Loading:b,error:f,pageController:m}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function Wy({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(""),[o,d]=i.useState(""),[c,g]=i.useState(0),[y,p]=i.useState(Yl),[m,A]=i.useState(!1),[C,b]=i.useState(null);console.log("Selected Student ID:",m);const[f,x]=i.useState({page:1,rowsPerPage:10}),R=(P,I)=>{x({...f,page:P,rowsPerPage:parseInt(I,10)})},{isLoading:k,error:O,data:D,mutate:_}=H(t&&y?[y,t,f.page,f.rowsPerPage]:null,([P,I,N,V])=>K(`${P}page=${N}&per_page=${V}`,I)),{data:u}=H(t?[tn,t]:null,([P,I])=>K(P,I)),{data:h}=H(t&&a?[`${an}?class_id=${a}`,t]:null,([P,I])=>K(P,I)),S=i.useMemo(()=>u?Array.isArray(u)?u:Array.isArray(u?.data)?u.data:[]:[],[u]),E=i.useMemo(()=>h?Array.isArray(h)?h:Array.isArray(h?.data)?h.data:[]:[],[h]),F=i.useMemo(()=>[{id:"1",name:"EC No",selector:"ec_no",sortable:!0},{id:"2",name:"Roll NO",selector:"roll_no",sortable:!0},{id:"3",name:"Admission Number",selector:"admission_no",sortable:!0},{id:"4",name:"First Name",selector:"firstname",sortable:!0},{id:"5",name:"Last Name",selector:"lastname",sortable:!0},{id:"6",name:"Class",selector:"class",sortable:!0},{id:"7",name:"Section",selector:"section",sortable:!0},{id:"8",name:"Father Name",selector:"father_name",sortable:!0},{id:"9",name:"Medicine",selector:"Medical",sortable:!1,render:(P,I)=>e.jsx(n.Button,{type:"primary",size:"small",onClick:()=>{b(I.id),A(!0)},children:"Medical"})}],[]),q=P=>{s(P?.value||""),l(""),g(I=>I+1)},T=P=>{if(P.preventDefault(),!a||!r){w.error("Please select class and section",{duration:1e3});return}const I=`${Wl}?cID=${a}&sID=${r}&page=${f.page}&per_page=${f.rowsPerPage}&`;p(I),x(N=>({...N,page:1}))},U=P=>{P.preventDefault();const I=P.target.searchField?.value||"";d(I);const N=`${Vl}?key=${I}&page=${f.page}&per_page=${f.rowsPerPage}&`;p(N),x(V=>({...V,page:1}))},j=async P=>{P.preventDefault();const I=new FormData(P.target),N=ou;try{await _(addData(N,I,t)),w.success("Medicine added successfully",{duration:1e3}),P.target.reset()}catch{w.error("Failed to add medicine",{duration:1e3})}};return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Medical Report"})}),e.jsx(v,{p:3,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:T,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(Q,{label:"Class",options:S,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:S.find(P=>String(P.value)===String(a))??null,onChange:q})})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(Q,{label:"Section",options:E,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:E.find(P=>String(P.value)===String(r))??null,onChange:P=>l(P?.value||"")})})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:U,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:16,children:e.jsx(z,{name:"searchField",type:"text",label:"Search By Keyword",value:o,onChange:P=>d(P.target.value)})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(ne,{type:"submit",value:"Submit",color:"primary"})})]})})})]})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:R,data:{newData:D,columns:F,action:!1,Loading:k,error:O,pageController:f}})})]})})]}),e.jsx(n.Drawer,{title:"Medical Report",placement:"right",width:600,open:m,footer:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(ne,{type:"button",value:"Close",color:"default"})})}),children:e.jsx(Hy,{studentId:C,token:t,onAddMedicine:j})}),e.jsx("style",{children:".noDisplay { display: none; } .buttonCoustom { margin-top: 8px; }"})]})}function Hy({studentId:t,token:a,onAddMedicine:s}){const{data:r}=H(a&&t?[`${Hl}?id=${t}`,a]:null,([g,y])=>K(g,y)),{data:l}=H(a&&t?[`${du}?student_id=${t}`,a]:null,([g,y])=>K(g,y)),o=r?.studentBasicDetails?.[0];let d=[];Array.isArray(l?.data)?d=l.data:Array.isArray(l)&&(d=l);const c=[{title:"Medicine",dataIndex:"medicine",key:"medicine"},{title:"Notes",dataIndex:"notes",key:"notes"},{title:"Date",dataIndex:"date_time",key:"date_time"}];return e.jsxs(v,{children:[o&&e.jsxs(v,{mb:3,children:[e.jsxs(pe,{level:4,children:["Name: ",o?.firstname," ",o?.lastname]}),e.jsxs("div",{style:{fontSize:15},children:["Class: ",o?.class," (",o?.section,")"]}),e.jsxs("div",{style:{fontSize:15},children:["Admission No: ",o?.admission_no]})]}),e.jsx(pe,{level:5,style:{marginBottom:8},children:"Add Medicine"}),e.jsx("form",{onSubmit:s,style:{marginBottom:24},children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(v,{children:[e.jsx(z,{name:"medicine",type:"text",label:"Medicine Name",required:!0}),e.jsx("input",{name:"student_id",type:"hidden",value:t||"",readOnly:!0})]})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(lt,{name:"notes",label:"Note",rows:3})})}),e.jsx(n.Col,{xs:24,children:e.jsx(v,{children:e.jsx(Ue,{format:"YYYY-MM-DD HH:mm",Desplay:"Date",name:"date_time",defaultValue:te()})})}),e.jsx(n.Col,{xs:24,children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Add",color:"primary"})})})})})]})}),e.jsx(pe,{level:5,style:{marginBottom:8},children:"Previous Medicine"}),e.jsx(n.Table,{size:"small",dataSource:d,pagination:!1,columns:c})]})}const{Group:Ki}=n.Checkbox;function Ky({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(""),[o,d]=i.useState(""),[c,g]=i.useState(0),[y,p]=i.useState(Yl),[m,A]=i.useState(!1),[C,b]=i.useState(null),[f,x]=i.useState({page:1,rowsPerPage:10}),R=(N,V)=>{x({...f,page:N,rowsPerPage:parseInt(V,10)})},{isLoading:k,error:O,data:D,mutate:_}=H(t&&y?[y,t,f.page,f.rowsPerPage]:null,([N,V,W,B])=>K(`${N}page=${W}&per_page=${B}`,V)),{data:u}=H(t?[tn,t]:null,([N,V])=>K(N,V)),{data:h}=H(t&&a?[`${an}?class_id=${a}`,t]:null,([N,V])=>K(N,V)),S=i.useMemo(()=>u?Array.isArray(u)?u:Array.isArray(u?.data)?u.data:[]:[],[u]),E=i.useMemo(()=>h?Array.isArray(h)?h:Array.isArray(h?.data)?h.data:[]:[],[h]),F=i.useMemo(()=>[{id:"1",name:"EC No",selector:"ec_no",sortable:!0},{id:"2",name:"Roll NO",selector:"roll_no",sortable:!0},{id:"3",name:"Admission Number",selector:"admission_no",sortable:!0},{id:"4",name:"First Name",selector:"firstname",sortable:!0},{id:"5",name:"Last Name",selector:"lastname",sortable:!0},{id:"6",name:"Class",selector:"class",sortable:!0},{id:"7",name:"Section",selector:"section",sortable:!0},{id:"8",name:"Father Name",selector:"father_name",sortable:!0},{id:"9",name:"Assign Subject",selector:"Assign",sortable:!1,render:(N,V)=>e.jsx(n.Button,{type:"primary",size:"small",onClick:()=>{b(V.id),A(!0)},children:"Assign"})}],[]),q=N=>{s(N?.value||""),l(""),g(V=>V+1)},T=N=>{if(N.preventDefault(),!a||!r){w.error("Please select class and section",{duration:1e3});return}const V=`${Wl}?cID=${a}&sID=${r}&page=${f.page}&per_page=${f.rowsPerPage}&`;p(V),x(W=>({...W,page:1}))},U=N=>{N.preventDefault();const V=N.target.searchField?.value||"";d(V);const W=`${Vl}?key=${V}&page=${f.page}&per_page=${f.rowsPerPage}&`;p(W),x(B=>({...B,page:1}))},j=async N=>{N.preventDefault();const V=new FormData(N.target),W=uu;try{await _(We(W,V,t)),w.success("Subject updated successfully",{duration:1e3}),N.target.reset(),A(!1)}catch{w.error("Failed to update subject",{duration:1e3})}},P=async N=>{N.preventDefault();const V=new FormData(N.target),W=Js;try{await _(We(W,V,t)),w.success("Extra curricular updated successfully",{duration:1e3}),N.target.reset(),A(!1)}catch{w.error("Failed to update extra curricular",{duration:1e3})}},I=N=>{A(N)};return e.jsxs(v,{pt:5,pb:1,children:[e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Assign Student Subject"})}),e.jsx(v,{p:3,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:T,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(Q,{label:"Class",options:S,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:S.find(N=>String(N.value)===String(a))??null,onChange:q})})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(v,{children:e.jsx(Q,{label:"Section",options:E,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:E.find(N=>String(N.value)===String(r))??null,onChange:N=>l(N?.value||"")})})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:U,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:16,children:e.jsx(z,{name:"searchField",type:"text",label:"Search By Keyword",value:o,onChange:N=>d(N.target.value)})}),e.jsx(n.Col,{xs:24,md:8,children:e.jsx(ne,{type:"submit",value:"Submit",color:"primary"})})]})})})]})})]})}),e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(v,{pt:3,children:e.jsx(Ie,{parentCallback:R,data:{newData:D,columns:F,action:!1,Loading:k,error:O,pageController:f}})})]})})]}),m&&e.jsx(Gy,{open:m,DrawerUpdate:I,studentId:C,token:t,onUpdate:j,onUpdate2:P}),e.jsx("style",{children:".noDisplay { display: none; } .buttonCoustom { margin-top: 8px; }"})]})}function Gy({open:t,DrawerUpdate:a,studentId:s,token:r,onUpdate:l,onUpdate2:o}){const[d,c]=i.useState([]),[g,y]=i.useState([]),[p,m]=i.useState([]),[A,C]=i.useState(!1),[b,f]=i.useState([]),[x,R]=i.useState([]),[k,O]=i.useState([]),{trigger:D}=rt(Hl,async(F,{arg:q})=>await K(`${F}?id=${q.id}`,r)),{trigger:_}=rt(Js,async()=>await K(`${Js}?student_id=${s}`,r)),{trigger:u}=rt(cu,async(F,{arg:q})=>await K(`${F}?id=${q.id}`,r));i.useEffect(()=>{(async()=>{if(!s)return;C(!0);const q=await D({id:s});q?.studentBasicDetails?.[0];const T=await _(),U=await u({id:s});c(q),m(U),q&&y(T),C(!1)})()},[s,D,_,u]);const h=F=>{R(F);const q=d?.data?.filter(T=>!F.includes(T.value));f(JSON.stringify(q))},S=F=>{O(F)},E=d?.studentBasicDetails?.[0];return!A&&s?e.jsx("div",{style:{position:"fixed",top:0,right:0,width:400,height:"100vh",background:"#fff",boxShadow:"-2px 0 8px rgba(0,0,0,0.15)",zIndex:9999,overflow:"auto"},children:e.jsxs(v,{p:3,children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Edit Assigned Subjects"})}),e.jsxs(v,{p:3,children:[E&&e.jsxs("div",{style:{marginBottom:16},children:[e.jsxs(pe,{level:4,children:["Name: ",E?.firstname," ",E?.lastname]}),e.jsxs("div",{style:{fontSize:15},children:["Class: ",E?.class," (",E?.section,")"]}),e.jsxs("div",{style:{fontSize:15},children:["Admission No: ",E?.admission_no]})]}),e.jsx("form",{onSubmit:l,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsxs(n.Col,{xs:24,children:[e.jsx(pe,{level:5,children:"Subjects"}),e.jsx(Ki,{options:d?.data?.map(F=>({label:F.label||F.name,value:F.value})),value:x,onChange:h,style:{display:"grid",gap:8}})]}),e.jsxs(n.Col,{xs:24,children:[e.jsx("input",{name:"student_id",type:"hidden",value:s||"",readOnly:!0}),e.jsx("input",{name:"subjectUncheck[]",type:"hidden",value:b,readOnly:!0})]}),d?.data?.length===0?e.jsx(n.Col,{xs:24,children:e.jsx("span",{style:{cursor:"pointer",fontSize:15,color:"blue",textDecoration:"underline"},children:"Please Assign Subject"})}):e.jsx(n.Col,{xs:24,className:"buttonCoustom",children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Update",color:"primary"})})})})})]})}),g?.data?.length>0&&e.jsx("form",{onSubmit:o,style:{marginTop:24},children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsxs(n.Col,{xs:24,children:[e.jsx(pe,{level:5,children:"Extra Curricular Activities"}),e.jsx(Ki,{options:g?.data?.map(F=>({label:F.label||F.name,value:F.value})),value:k,onChange:S,style:{display:"grid",gap:8}})]}),e.jsx(n.Col,{xs:24,children:e.jsx("input",{name:"student_id",type:"hidden",value:s||"",readOnly:!0})}),e.jsx(n.Col,{xs:24,className:"buttonCoustom",children:e.jsx(n.Row,{justify:"end",children:e.jsx(n.Col,{children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:"Update",color:"primary"})})})})})]})})]})]})}):e.jsx("div",{style:{position:"fixed",top:0,right:0,width:400,height:"100vh",background:"#fff",boxShadow:"-2px 0 8px rgba(0,0,0,0.15)",zIndex:9999,overflow:"auto"},children:e.jsx(v,{p:3,children:e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(n.Spin,{size:"large"})})})})}function Jy({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(""),[o,d]=i.useState(0),[c,g]=i.useState(null),[y,p]=i.useState(!1),{data:m}=H(t?[tn,t]:null,([u,h])=>K(u,h)),{data:A}=H(t&&a?[`${an}?class_id=${a}`,t]:null,([u,h])=>K(u,h)),{data:C}=H(t?[mu,t]:null,([u,h])=>K(`${u}?page=1&per_page=10`,h)),b=i.useMemo(()=>m?Array.isArray(m)?m:Array.isArray(m?.data)?m.data:[]:[],[m]),f=i.useMemo(()=>A?Array.isArray(A)?A:Array.isArray(A?.data)?A.data:[]:[],[A]),x=i.useMemo(()=>[{id:"1",name:"Category Id",selector:"id",sortable:!0},{id:"2",name:"Category",selector:"category",sortable:!0}],[]),R=u=>{s(u?.value||""),l(""),d(h=>h+1)},k=u=>{l(u?.value||"")},O=()=>{const u=document.createElement("a");u.href="/sample_student.xlsx",u.download="sample_student.xlsx",u.click()},D=u=>{u.fileList.length>0?g(u.fileList[0].originFileObj):g(null)},_=async u=>{if(u.preventDefault(),!a){w.error("Please select class",{duration:1e3});return}if(!r){w.error("Please select section",{duration:1e3});return}if(!c){w.error("Please select file",{duration:1e3});return}p(!0);const h=new FormData;h.append("file",c),h.append("class_id",a),h.append("section_id",r);try{const S=await Sc(pu,h,t);S?.Status==="Failed"?w.error(S?.msg||"Upload failed",{duration:2e3}):(w.success(S?.msg||"Upload successful",{duration:2e3}),g(null),s(""),l(""))}catch(S){w.error(S?.response?.data?.msg||"Upload failed",{duration:2e3})}finally{p(!1)}};return e.jsx(v,{pt:5,pb:1,children:e.jsx(n.Row,{gutter:[16,16],children:e.jsx(n.Col,{xs:24,children:e.jsxs(n.Card,{children:[e.jsx(v,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(pe,{level:5,style:{margin:0,color:"#fff"},children:"Bulk Upload Students"})}),e.jsxs(v,{p:3,children:[e.jsx(n.Row,{justify:"end",style:{marginBottom:16},children:e.jsx(n.Col,{children:e.jsx(n.Button,{type:"primary",icon:e.jsx(ee.DownloadOutlined,{}),onClick:O,style:{background:"#368fed"},children:"Download Sample Import File"})})}),e.jsxs("div",{style:{marginBottom:16,padding:16,background:"#f5f5f5",borderRadius:8},children:[e.jsx(pe,{level:5,style:{marginBottom:8},children:"Information"}),e.jsx("div",{children:"1. Your Excel data should be in the format below. The first line of your Excel file should be the column headers as in the table example. Also make sure that your file is UTF-8 to avoid unnecessary encoding problems."}),e.jsx("div",{children:"2. If the column you are trying to import is date make sure that is formatted in format Y-m-d (2024-01-10)."}),e.jsx("div",{children:"3. Duplicate Admission Number, ec_no, aadhaar_number, (unique) rows will not be imported."}),e.jsx("div",{children:"4. For student Gender use Male, Female value."}),e.jsx("div",{children:"5. For student Blood Group use A+, A-, B+, B-, O+, O-, AB+, AB- value."}),e.jsx("div",{children:"6. * Imported field are admission_no, ec_no, firstname, lastname, roll_no, guardian_phone, aadhaar_number, category_id"})]}),e.jsxs("div",{style:{marginBottom:24},children:[e.jsx(pe,{level:5,style:{marginBottom:8},children:"Category Table"}),e.jsx(Ie,{parentCallback:()=>{},data:{newData:C,columns:x,action:!1,Loading:!1,error:null,pageController:{page:1,rowsPerPage:10}}})]}),e.jsx("form",{onSubmit:_,children:e.jsxs(n.Row,{gutter:[16,16],children:[e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{label:"Class",options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0,value:b.find(u=>String(u.value)===String(a))??null,onChange:R})})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsx(v,{children:e.jsx(Q,{label:"Section",options:f,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0,value:f.find(u=>String(u.value)===String(r))??null,onChange:k},`section-${o}`)})}),e.jsx(n.Col,{xs:24,md:6,children:e.jsxs(v,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"File"}),e.jsx(n.Upload,{beforeUpload:()=>!1,onChange:D,maxCount:1,accept:".xlsx,.xls",children:e.jsx(n.Button,{icon:e.jsx(ee.UploadOutlined,{}),style:{width:"100%"},children:c?c.name:"Select Excel File"})})]})}),e.jsx(n.Col,{xs:24,md:6,style:{display:"flex",alignItems:"flex-end"},children:e.jsx(v,{children:e.jsx(ne,{type:"submit",value:y?"Processing...":"Save",color:"primary",loading:y})})})]})})]})]})})})})}function Qy(){return null}const cs=t=>t??localStorage.getItem("authToken")??"",So=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},vo=()=>JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1",Re={uploadNotes:"api/branchapi/Academy/uploadNotes",master:{classes:{dropdown:"api/branchapi/academy/classdropdownlist",table:"api/branchapi/academy/classestableList",add:"api/branchapi/academy/addclasses",edit:"api/branchapi/academy/editclass",remove:"api/branchapi/academy/deleteclass",show:"api/branchapi/academy/classShowdata"},sections:{list:"api/branchapi/academy/sectionlist",table:"api/branchapi/academy/sectiontableList",add:"api/branchapi/academy/addsections",edit:"api/branchapi/academy/editsection",remove:"api/branchapi/academy/deletesection",show:"api/branchapi/academy/sectionShowdata",byClass:"api/branchapi/academy/sectionoftheClass"},subjects:{dropdown:"api/branchapi/Academy/getClassSubjectdropdown",byClassLabelValue:"api/branchapi/Academy/getSubjectsbyClassaslablevalue",table:"api/branchapi/academy/subjecttableList",add:"api/branchapi/academy/addsubjects",edit:"api/branchapi/academy/editsubject",remove:"api/branchapi/academy/deletesubject",show:"api/branchapi/academy/subjectShowdata"},holidays:{table:"api/branchapi/academy/holidayList",add:"api/branchapi/academy/addholidays",edit:"api/branchapi/academy/editholidays",remove:"api/branchapi/academy/deleteholiday",show:"api/branchapi/academy/getByIdholidays"}},assignSubjects:{assign:"api/branchapi/Academy/assign_class_subjects",list:"api/branchapi/academy/getSubjectsbyClass",update:"api/branchapi/academy/updateAssignSubject",editByClass:"api/branchapi/academy/editSubjectsbyClass"},assignByClass:{teacherDropdown:"api/branchapi/topics/getTeacherDropdown",classWithSection:"api/branchapi/academy/getClasswithSection",assignedSubjectsOfTeacher:"api/branchapi/academy/getassignedSubjectsofTeacher",subjectsOfTeacherByTeacherId:"api/branchapi/academy/getSubjectsofTeacherbyTeacherID",assignClassToTeacher:"api/branchapi/academy/assignClasstoTeacher",deleteTeacherSub:"api/branchapi/academy/deleteTeacherSub"},promoteStudents:{searchByClassSection:"api/branchapi/student/currentSessionStudentlist",sessionDropdown:"api/branchapi/generalSettings/sessiondropdown",promote:"api/branchapi/student/promotestudent"},timeGroup:{table:"api/branchapi/academy/getTimeGroupTable",add:"api/branchapi/academy/addTimeGroup",edit:"api/branchapi/academy/editTimeGroup",remove:"api/branchapi/academy/deleteTimeGroup",show:"api/branchapi/academy/getTimeGroupDataById",dropdown:"api/branchapi/academy/getTimeGroupDropDown"},assignTimeGroup:{classIdByTimeGroup:"api/branchapi/academy/getClassIdByTimeGroup",table:"api/branchapi/academy/getAssignedTimeGroupTable",show:"api/branchapi/academy/getAssignedTimeGroupDataById",assign:"api/branchapi/academy/assignTimeGroup"},timetable:{save:"api/timetable/save",byClassSection:"api/timetable/class",teacherTimetable:"api/timetable/teacher/",teachersBySubject:"api/branchapi/Academy/gettechersSubject"},notes:{table:"api/branchapi/Academy/getNotesTable",add:"api/branchapi/Academy/addNotes"},syllabus:{table:"api/branchapi/Academy/getsyllabusTable",add:"api/branchapi/Academy/addsyllabus",edit:"api/branchapi/Academy/editsyllabus",uploadFile:"api/SuperAdmin/uploadFile"},transferCertificate:{studentList:"api/branchapi/student/getstudenttransferCertificateList",addData:"api/branchapi/academy/addtransferCertificatedata",view:"api/branchapi/academy/gettransferCertificateUrl"},coscholastic:{table:"api/branchapi/academy/getcoscholastic",addSkill:"api/branchapi/academy/add_coscholastic_skill",deleteSkill:"api/branchapi/academy/deleteCoscholastic",categoryDropdown:"api/branchapi/academy/coscholastic_categorydropdown",addCategory:"api/branchapi/academy/addcoscholastic_category",deleteCategory:"api/branchapi/academy/coscholasticCategoryDelete"}},Xy=()=>So(bt(),Re.uploadNotes),Zy=()=>So(bt(),Re.syllabus.uploadFile),eg=async({baseUrl:t,page:a=1,perPage:s=10},r)=>{const l=t.includes("?")?"&":"?",o=`${t}${l}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(s))}`;return K(o,cs(r))},At=async(t,a,s,{includeSession:r=!1}={})=>{const l=a instanceof FormData?a:new FormData;return r&&!l.has("session_id")&&l.append("session_id",vo()),Ne(t,l,cs(s))},zt=async(t,a,s,{includeSession:r=!1}={})=>{const l=a instanceof FormData?a:new FormData;return r&&!l.has("session_id")&&l.append("session_id",vo()),We(t,l,cs(s))},Yt=async(t,a,s)=>He(t,a,cs(s)),Wn=Re.master.sections,on=({baseUrl:t,page:a=1,perPage:s=10,token:r})=>H(r&&t?[t,a,s,r]:null,([o,d,c,g])=>eg({baseUrl:o,page:d,perPage:c},g)),tg=({token:t,page:a=1,perPage:s=10})=>on({token:t,baseUrl:Wn.table,page:a,perPage:s}),ag=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function ng({token:t}){const[a,s]=i.useState({page:1,perPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c]=n.Form.useForm(),{data:g,isLoading:y,mutate:p}=tg({token:t,page:a.page,perPage:a.perPage}),m=i.useMemo(()=>ag(g),[g]),A=i.useMemo(()=>g?.pagination?.total_rows??g?.pagination?.total??m.length??0,[g,m]),C=async k=>{k.preventDefault();const O=new FormData(k.target);try{await At(Wn.add,O,t),w.success("Success! Added new item.",{duration:1e3}),k.target.reset(),p()}catch(D){w.error(D?.response?.data?.msg??D?.message??"Failed to add the new item.",{duration:1500})}},b=async k=>{try{await Yt(Wn.remove,k,t),w.success("Success! Deleted item.",{duration:1e3}),p()}catch(O){w.error(O?.response?.data?.msg??O?.message??"Failed to delete the item.",{duration:1500})}},f=k=>{d(k),l(!0),c.setFieldsValue({section:k?.section??""})},x=async k=>{const O=new FormData;O.append("id",String(o?.id??"")),O.append("section",k.section??"");try{await zt(Wn.edit,O,t),w.success("Success! Updated item.",{duration:1e3}),l(!1),d(null),p()}catch(D){w.error(D?.response?.data?.msg??D?.message??"Failed to update the item.",{duration:1500})}},R=i.useMemo(()=>[{title:"Section",dataIndex:"section",key:"section"},{title:"Actions",key:"actions",width:120,render:(k,O)=>e.jsxs(n.Space,{children:[e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>f(O)}),e.jsx(n.Popconfirm,{title:"Delete this section?",onConfirm:()=>b(O?.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{title:"Edit Section",open:r,onClose:()=>{l(!1),d(null)},width:420,children:e.jsxs(n.Form,{form:c,layout:"vertical",onFinish:x,children:[e.jsx(n.Form.Item,{label:"Section Name",name:"section",rules:[{required:!0,message:"Section Name is required"}],children:e.jsx(n.Input,{placeholder:"Section Name"})}),e.jsxs(n.Space,{children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Section"}),children:e.jsx("form",{onSubmit:C,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(z,{type:"text",name:"section",label:"Section Name",required:!0}),e.jsx(ne,{type:"submit",value:"Submit",color:"primary"})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Section List"}),extra:e.jsx(n.Space,{}),children:e.jsx(n.Table,{rowKey:k=>k.id,columns:R,dataSource:m,loading:y,pagination:{current:a.page,pageSize:a.perPage,total:A,showSizeChanger:!0,onChange:(k,O)=>s({page:k,perPage:O})}})})]})}function sg({token:t}){return e.jsx(ng,{token:t})}const La=Re.master.classes,rg=({token:t,page:a=1,perPage:s=10})=>on({token:t,baseUrl:La.table,page:a,perPage:s}),ig=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},lg=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:[];function og({token:t}){const[a,s]=i.useState({page:1,perPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c]=n.Form.useForm(),[g]=n.Form.useForm(),{data:y}=H(t?[Re.master.sections.list,t]:null,([S,E])=>K(S,E)),p=i.useMemo(()=>lg(y),[y]),m=i.useMemo(()=>p.map(S=>({label:S.label??S.section??String(S.value??""),value:String(S.value??S.id??"")})),[p]),{data:A,isLoading:C,mutate:b}=rg({token:t,page:a.page,perPage:a.perPage}),f=i.useMemo(()=>ig(A),[A]),x=i.useMemo(()=>A?.pagination?.total_rows??A?.pagination?.total??f.length??0,[A,f]),{data:R}=H(t&&o?[`${La.show}?id=${encodeURIComponent(String(o))}`,t]:null,([S,E])=>K(S,E)),k=i.useMemo(()=>{const S=R?.data??R;return Array.isArray(S)?S:Array.isArray(S?.data)?S.data:S?[S]:[]},[R]),O=S=>{const E=S?.id??S?.class_id;E&&(d(E),l(!0))};i.useEffect(()=>{if(!r||!k.length)return;const S=k[0],E=k.map(T=>T?.section_id??T?.fk_sectionId??T?.sectionId??T?.section).filter(T=>T!=null&&String(T).trim()!=="").map(T=>String(T)),F=Array.isArray(S?.section_ids)?S.section_ids.map(T=>String(T)):typeof S?.section_ids=="string"?S.section_ids.split(",").map(T=>T.trim()).filter(Boolean):Array.isArray(S?.section)?S.section.map(T=>String(T)):[],q=E.length?E:F;g.setFieldsValue({name:S?.class??S?.name??"",section:q})},[r,k,g]);const D=async S=>{const E=new FormData;E.append("name",S.name??""),(S.section??[]).forEach(F=>E.append("section[]",String(F)));try{await At(La.add,E,t),w.success("Success! Added new item.",{duration:1e3}),c.resetFields(),b()}catch(F){w.error(F?.response?.data?.msg??F?.message??"Failed to add the new item.",{duration:1500})}},_=async S=>{const E=new FormData;E.append("id",String(o??"")),E.append("name",S.name??""),(S.section??[]).forEach(F=>E.append("section[]",String(F)));try{await zt(La.edit,E,t),w.success("Success! Updated item.",{duration:1e3}),l(!1),d(null),b()}catch(F){w.error(F?.response?.data?.msg??F?.message??"Failed to update the item.",{duration:1500})}},u=async S=>{try{await Yt(La.remove,S,t),w.success("Success! Deleted item.",{duration:1e3}),b()}catch(E){w.error(E?.response?.data?.msg??E?.message??"Failed to delete the item.",{duration:1500})}},h=i.useMemo(()=>[{title:"Class",dataIndex:"class",key:"class",render:(S,E)=>S??E?.name??""},{title:"Section",dataIndex:"sections",key:"sections",render:S=>S??""},{title:"Actions",key:"actions",width:120,render:(S,E)=>e.jsxs(n.Space,{children:[e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>O(E)}),e.jsx(n.Popconfirm,{title:"Delete this class?",onConfirm:()=>u(E?.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{title:"Edit Class",open:r,onClose:()=>{l(!1),d(null)},width:520,children:e.jsxs(n.Form,{form:g,layout:"vertical",onFinish:_,children:[e.jsx(n.Form.Item,{label:"Class",name:"name",rules:[{required:!0,message:"Class is required"}],children:e.jsx(n.Input,{placeholder:"Class"})}),e.jsx(n.Form.Item,{label:"Sections",name:"section",rules:[{required:!0,message:"Please select at least one section"}],children:e.jsx(n.Checkbox.Group,{options:m})}),e.jsxs(n.Space,{children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Class"}),children:e.jsx(n.Form,{form:c,layout:"vertical",onFinish:D,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{name:"name",label:"Class",rules:[{required:!0,message:"Class is required"}],children:e.jsx(n.Input,{placeholder:"Class"})}),e.jsx(n.Form.Item,{name:"section",label:"Sections",rules:[{required:!0,message:"Select at least one section"}],children:e.jsx(n.Checkbox.Group,{options:m})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Class List"}),children:e.jsx(n.Table,{rowKey:S=>S.id,columns:h,dataSource:f,loading:C,pagination:{current:a.page,pageSize:a.perPage,total:x,showSizeChanger:!0,onChange:(S,E)=>s({page:S,perPage:E})}})})]})}function dg({token:t}){return e.jsx(og,{token:t})}const qa=Re.master.subjects,cg=({token:t,page:a=1,perPage:s=10})=>on({token:t,baseUrl:qa.table,page:a,perPage:s}),ug=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Gi=[{value:"Practical",label:"Practical"},{value:"Theory",label:"Theory"}],Ji=[{value:"Main",label:"Main"},{value:"Additional",label:"Minor/Additional"},{value:"extra_curricular_activities",label:"Extra Curricular Activities"}];function pg({token:t}){const[a,s]=i.useState({page:1,perPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c]=n.Form.useForm(),[g]=n.Form.useForm(),{data:y,isLoading:p,mutate:m}=cg({token:t,page:a.page,perPage:a.perPage}),A=i.useMemo(()=>ug(y),[y]),C=i.useMemo(()=>y?.pagination?.total_rows??y?.pagination?.total??A.length??0,[y,A]),{data:b,isLoading:f}=H(t&&o?[`${qa.show}?id=${encodeURIComponent(String(o))}`,t]:null,([u,h])=>K(u,h)),x=i.useMemo(()=>{const u=b?.data??b;return Array.isArray(u)?u[0]:u??null},[b]);i.useEffect(()=>{if(!r||!x)return;const u=[];["yes","1","true"].includes(String(x?.is_practical??"").toLowerCase())&&u.push("Practical"),["yes","1","true"].includes(String(x?.is_theory??"").toLowerCase())&&u.push("Theory"),g.setFieldsValue({name:x?.name??"",subject_type:x?.subject_type??x?.type??"",type:"",subject_types:u,code:x?.code??""})},[r,x,g]);const R=async u=>{const h=u?.type??u?.subject_type??"",S=Array.isArray(u?.subject_types)?u.subject_types:[],E={name:u?.name??"",subject_type:h,type:h,subject_types:S,code:u?.code??"",is_practical:S.includes("Practical")?"yes":"no",is_theory:S.includes("Theory")?"yes":"no"};try{await Ne(qa.add,E,t),w.success("Success! Added new item.",{duration:1e3}),c.resetFields(),m()}catch(F){w.error(F?.response?.data?.msg??F?.message??"Failed to add the new item.",{duration:1500})}},k=async u=>{const h=new FormData,S=u?.type??u?.subject_type??"",E=Array.isArray(u?.subject_types)?u.subject_types:[];h.append("id",String(o??"")),h.append("name",u.name??""),h.append("subject_type",u.subject_type??""),h.append("subject_type",S),h.append("type",S),h.append("code",u.code??""),h.append("is_practical",E.includes("Practical")?"yes":"no"),h.append("is_theory",E.includes("Theory")?"yes":"no");try{await zt(qa.edit,h,t),w.success("Success! Updated item.",{duration:1e3}),l(!1),d(null),m()}catch(F){w.error(F?.response?.data?.msg??F?.message??"Failed to update the item.",{duration:1500})}},O=async u=>{try{await Yt(qa.remove,u,t),w.success("Success! Deleted item.",{duration:1e3}),m()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to delete the item.",{duration:1500})}},D=u=>{const h=u?.id;h&&(d(h),l(!0))},_=i.useMemo(()=>[{title:"Subject Name",dataIndex:"name",key:"name"},{title:"Subject",dataIndex:"subject_type",key:"subject_type"},{title:"Subject Code",dataIndex:"code",key:"code"},{title:"Subject Type",key:"subject_types",render:(u,h)=>{const S=[],E=h?.subject_types;Array.isArray(E)?E.forEach(j=>{const P=String(j??"").trim();if(!P)return;const I=P.toLowerCase();["yes","1","true"].includes(I)||S.push(P)}):typeof E=="string"&&E.split(",").map(j=>j.trim()).filter(Boolean).forEach(j=>{const P=j.toLowerCase();["yes","1","true"].includes(P)||S.push(j)});const F=["yes","1","true"].includes(String(h?.is_practical??"").toLowerCase()),q=["yes","1","true"].includes(String(h?.is_theory??"").toLowerCase());F&&S.push("Practical"),q&&S.push("Theory");const T=S.map(j=>String(j??"").trim()).filter(Boolean).map(j=>j.toLowerCase()==="practical"?"Practical":j.toLowerCase()==="theory"?"Theory":j),U=Array.from(new Set(T));return U.length?U.join(", "):"-"}},{title:"Actions",key:"actions",width:120,render:(u,h)=>e.jsxs(n.Space,{children:[e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>D(h)}),e.jsx(n.Popconfirm,{title:"Delete this subject?",onConfirm:()=>O(h?.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{title:"Edit Subject",open:r,onClose:()=>{l(!1),d(null)},width:560,children:f?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(n.Spin,{size:"large"})}):e.jsxs(n.Form,{form:g,layout:"vertical",onFinish:k,children:[e.jsx(n.Form.Item,{label:"Subject Name",name:"name",rules:[{required:!0,message:"Subject Name is required"}],children:e.jsx(z,{placeholder:"Subject Name"})}),e.jsx(n.Form.Item,{label:"Subject",name:"subject_type",rules:[{required:!0,message:"Select subject category"}],children:e.jsx(n.Radio.Group,{options:Ji})}),e.jsx(n.Form.Item,{label:"Subject Type",name:"subject_types",rules:[{required:!0,type:"array",min:1,message:"Please choose at least one field"}],children:e.jsx(n.Checkbox.Group,{options:Gi})}),e.jsx(n.Form.Item,{label:"Subject Code",name:"code",children:e.jsx(z,{placeholder:"Subject Code"})}),e.jsxs(n.Space,{children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Subject"}),children:e.jsx(n.Form,{form:c,layout:"vertical",onFinish:R,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{name:"name",label:"Subject Name",rules:[{required:!0,message:"Subject Name is required"}],children:e.jsx(z,{placeholder:"Subject Name"})}),e.jsx(n.Form.Item,{name:"subject_type",label:"Subject",rules:[{required:!0,message:"Select subject"}],children:e.jsx(n.Radio.Group,{options:Ji})}),e.jsx(n.Form.Item,{name:"subject_types",label:"Subject Type",rules:[{required:!0,type:"array",min:1,message:"Please choose at least one field"}],children:e.jsx(n.Checkbox.Group,{options:Gi})}),e.jsx(n.Form.Item,{name:"code",label:"Subject Code",children:e.jsx(z,{placeholder:"Subject Code"})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Subject List"}),children:e.jsx(n.Table,{rowKey:u=>u.id,columns:_,dataSource:A,loading:p,pagination:{current:a.page,pageSize:a.perPage,total:C,showSizeChanger:!0,onChange:(u,h)=>s({page:u,perPage:h})}})})]})}function mg({token:t}){return e.jsx(pg,{token:t})}const za=Re.master.holidays,hg=({token:t,page:a=1,perPage:s=10})=>on({token:t,baseUrl:za.table,page:a,perPage:s}),fg=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Tn={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function yg({token:t}){const[a,s]=i.useState({page:1,perPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c]=n.Form.useForm(),[g]=n.Form.useForm(),{data:y,isLoading:p,mutate:m}=hg({token:t,page:a.page,perPage:a.perPage}),A=i.useMemo(()=>fg(y),[y]),C=i.useMemo(()=>y?.pagination?.total_rows??y?.pagination?.total??A.length??0,[y,A]),{data:b}=H(t&&o?[`${za.show}?id=${encodeURIComponent(String(o))}`,t]:null,([_,u])=>K(_,u)),f=i.useMemo(()=>{const _=b?.data??b;return Array.isArray(_)?_[0]:_??null},[b]);i.useEffect(()=>{r&&f&&g.setFieldsValue({title:f?.holiday_title??"",description:f?.holiday_description??"",from:f?.start_date?te(f.start_date):null,to:f?.end_date?te(f.end_date):null})},[r,f,g]);const x=async _=>{const u=new FormData;u.append("title",_.title??""),u.append("description",_.description??""),u.append("from",_.from?te(_.from).format("YYYY-MM-DD"):""),u.append("to",_.to?te(_.to).format("YYYY-MM-DD"):"");try{await At(za.add,u,t,{includeSession:!0}),w.success("Success! Added new item.",{duration:1e3}),c.resetFields(),m()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to add the new item.",{duration:1500})}},R=async _=>{const u=new FormData;u.append("id",String(o??"")),u.append("title",_.title??""),u.append("description",_.description??""),u.append("from",_.from?te(_.from).format("YYYY-MM-DD"):""),u.append("to",_.to?te(_.to).format("YYYY-MM-DD"):"");try{await zt(za.edit,u,t,{includeSession:!0}),w.success("Success! Updated item.",{duration:1e3}),l(!1),d(null),m()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to update the item.",{duration:1500})}},k=async _=>{try{await Yt(za.remove,_,t),w.success("Success! Deleted item.",{duration:1e3}),m()}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to delete the item.",{duration:1500})}},O=_=>{const u=_?.id;u&&(d(u),l(!0))},D=i.useMemo(()=>[{title:"Holiday Title",dataIndex:"holiday_title",key:"holiday_title"},{title:"Holiday Description",dataIndex:"holiday_description",key:"holiday_description"},{title:"Start From",dataIndex:"start_date",key:"start_date"},{title:"End At",dataIndex:"end_date",key:"end_date"},{title:"Actions",key:"actions",width:120,render:(_,u)=>e.jsxs(n.Space,{children:[e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>O(u)}),e.jsx(n.Popconfirm,{title:"Delete this holiday?",onConfirm:()=>k(u?.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{title:"Edit Holiday",open:r,onClose:()=>{l(!1),d(null)},width:560,children:e.jsxs(n.Form,{form:g,layout:"vertical",onFinish:R,children:[e.jsx(n.Form.Item,{label:"Holiday Title",name:"title",rules:[{required:!0,message:"Holiday Title is required"}],children:e.jsx(z,{placeholder:"Holiday Title"})}),e.jsx(n.Form.Item,{label:"Holiday Description",name:"description",rules:[{required:!0,message:"Holiday Description is required"}],children:e.jsx(z,{placeholder:"Holiday Description"})}),e.jsx(n.Form.Item,{label:"Start From",name:"from",rules:[{required:!0,message:"Start date is required"}],children:e.jsx(n.DatePicker,{format:"YYYY-MM-DD",style:Tn})}),e.jsx(n.Form.Item,{label:"End At",name:"to",rules:[{required:!0,message:"End date is required"}],children:e.jsx(n.DatePicker,{format:"YYYY-MM-DD",style:Tn})}),e.jsxs(n.Space,{children:[e.jsx(ne,{type:"submit",value:"Update",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Holidays"}),children:e.jsx(n.Form,{form:c,layout:"vertical",onFinish:x,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{name:"title",label:"Holiday Title",rules:[{required:!0,message:"Holiday Title is required"}],children:e.jsx(z,{placeholder:"Holiday Title"})}),e.jsx(n.Form.Item,{name:"description",label:"Holiday Description",rules:[{required:!0,message:"Holiday Description is required"}],children:e.jsx(lt,{placeholder:"Holiday Description"})}),e.jsx(n.Form.Item,{name:"from",label:"Start From",rules:[{required:!0,message:"Start date is required"}],children:e.jsx(n.DatePicker,{format:"YYYY-MM-DD",style:Tn})}),e.jsx(n.Form.Item,{name:"to",label:"End At",rules:[{required:!0,message:"End date is required"}],children:e.jsx(n.DatePicker,{format:"YYYY-MM-DD",style:Tn})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Holidays List"}),children:e.jsx(n.Table,{rowKey:_=>_.id,columns:D,dataSource:A,loading:p,pagination:{current:a.page,pageSize:a.perPage,total:C,showSizeChanger:!0,onChange:(_,u)=>s({page:_,perPage:u})}})})]})}function gg({token:t}){return e.jsx(yg,{token:t})}const Hn=Re.assignSubjects,xg=({token:t,page:a=1,perPage:s=50})=>on({token:t,baseUrl:Hn.list,page:a,perPage:s}),Qi=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[],bg=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function jg({token:t}){const[a,s]=i.useState({page:1,perPage:50}),[r,l]=i.useState(null),[o,d]=i.useState([]),[c,g]=i.useState(!1),[y,p]=i.useState(!1),[m,A]=i.useState(null),[C,b]=i.useState([]),{data:f}=H(t?[Re.master.classes.dropdown,t]:null,([j,P])=>K(j,P)),{data:x}=H(t?[Re.master.subjects.dropdown,t]:null,([j,P])=>K(j,P)),R=i.useMemo(()=>Qi(f),[f]),k=i.useMemo(()=>Qi(x),[x]),O=i.useMemo(()=>k.map(j=>({label:j.label??j.subject??String(j.value??""),value:j.value??j.id})),[k]),{data:D,isLoading:_,mutate:u}=xg({token:t,page:a.page,perPage:a.perPage}),h=i.useMemo(()=>bg(D),[D]),S=i.useMemo(()=>D?.pagination?.total_rows??D?.pagination?.total??h.length??0,[D,h]),{data:E}=H(t&&m?[`${Hn.editByClass}?class_id=${encodeURIComponent(String(m))}`,t]:null,([j,P])=>K(j,P));i.useEffect(()=>{if(!y)return;const j=E?.data??E,P=Array.isArray(j)?j:Array.isArray(j?.data)?j.data:[];b(P.map(I=>I.subject_id).filter(Boolean))},[y,E]);const F=async j=>{if(j.preventDefault(),!r?.value){w.error("Please select class",{duration:1200});return}if(!o.length){w.error("Please select subjects",{duration:1200});return}const P=new FormData;P.append("class_id",String(r.value)),o.forEach(I=>P.append("subject[]",String(I)));try{g(!0),await zt(Hn.assign,P,t),w.success("Success! Updated item.",{duration:1e3}),l(null),d([]),u()}catch(I){w.error(I?.response?.data?.msg??I?.message??"Failed to update the item.",{duration:1500})}finally{g(!1)}},q=j=>{j&&(A(j),p(!0))},T=async()=>{if(!m)return;if(!C.length){w.error("Please select subjects",{duration:1200});return}const j=new FormData;j.append("class_id",String(m)),C.forEach(P=>j.append("subject[]",String(P)));try{await zt(Hn.update,j,t),w.success("Success! Updated item.",{duration:1e3}),p(!1),A(null),u()}catch(P){w.error(P?.response?.data?.msg??P?.message??"Failed to update the item.",{duration:1500})}},U=i.useMemo(()=>[{title:"Class",dataIndex:"class",align:"center",width:"15%"},{title:"Subject",dataIndex:"subject_name",width:"70%",render:(j,P)=>e.jsx("div",{style:{paddingLeft:10,paddingRight:10,fontSize:14},children:(P?.subject_name??j??"").split(",").join(", ")})},{title:"Action",width:"10%",render:(j,P)=>e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>q(P?.class_id)})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{title:"Edit Assigned Subjects",open:y,onClose:()=>{p(!1),A(null)},width:520,extra:e.jsxs(n.Space,{children:[e.jsx(n.Button,{onClick:()=>p(!1),children:"Cancel"}),e.jsx(n.Button,{type:"primary",onClick:T,children:"Update"})]}),children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(Q,{options:R,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,value:R.find(j=>String(j.value)===String(m))??null,onChange:()=>{},isDisabled:!0}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Subjects"}),e.jsx(n.Checkbox.Group,{options:O,value:C,onChange:b})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Assign Subject"}),children:e.jsx("form",{onSubmit:F,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:R,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",required:!0,allowSelectAll:!1,value:r,onChange:j=>l(j??null)}),e.jsxs("div",{style:{gridColumn:"1 / -1"},children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Subjects"}),e.jsx(n.Checkbox.Group,{options:O,value:o,onChange:d})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:c?"Please Wait..":"Save",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Assigned Subject List"}),children:e.jsx(n.Table,{rowKey:j=>j.id,columns:U,dataSource:h,loading:_,pagination:{current:a.page,pageSize:a.perPage,total:S,showSizeChanger:!0,onChange:(j,P)=>s({page:j,perPage:P})}})})]})}function Sg({token:t}){return e.jsx(jg,{token:t})}const ha=Re.assignByClass,wo=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(typeof t?.data?.Status=="string"&&Array.isArray(t?.data?.data))return t.data.data;if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Ea=t=>wo(t),vg=t=>wo(t),$a=t=>Array.isArray(t)?t:t==null||t===""?[]:[t];function wg({token:t}){const[a,s]=i.useState(null),[r,l]=i.useState(null),[o,d]=i.useState(null),[c,g]=i.useState("No"),[y,p]=i.useState([]),[m,A]=i.useState([]),[C,b]=i.useState(null),[f,x]=i.useState(null),[R,k]=i.useState(!1),[O,D]=i.useState(""),{data:_}=H(t?[ha.teacherDropdown,t]:null,([oe,ie])=>K(oe,ie)),{data:u}=H(t?[Re.master.classes.dropdown,t]:null,([oe,ie])=>K(oe,ie)),{data:h}=H(t&&f?[f,t]:null,([oe,ie])=>K(oe,ie)),{data:S}=H(t&&C?[C,t]:null,([oe,ie])=>K(oe,ie)),E=i.useMemo(()=>Ea(_),[_]),F=i.useMemo(()=>Ea(u),[u]),q=i.useMemo(()=>Ea(h),[h]),T=i.useMemo(()=>Ea(S),[S]),{data:U}=H(t&&a&&r&&o?[`${ha.subjectsOfTeacherByTeacherId}?teacher_id=${encodeURIComponent(String(a))}&class_id=${encodeURIComponent(String(r))}&section_id=${encodeURIComponent(String(o))}`,t]:null,([oe,ie])=>K(oe,ie)),j=U?.data??U??null;i.useEffect(()=>{j&&(p(Array.isArray(j?.subject_ids)?j.subject_ids:[]),g(j?.isClassTeacher||"No"),A([]))},[j]);const{data:P}=H(t?[ha.classWithSection,t]:null,([oe,ie])=>K(oe,ie)),I=i.useMemo(()=>Ea(P),[P]),[N,V]=i.useState(null),[W,B]=i.useState({page:1,perPage:25});i.useEffect(()=>{N||I?.[0]&&V(`${I[0].class_id}val${I[0].section_id}`)},[I,N]);const $=i.useMemo(()=>typeof window>"u"?"1":JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1",[]),M=i.useMemo(()=>{if(!N)return null;const[oe,ie]=String(N).split("val");if(!oe||!ie)return null;const Se=W.page??1,Ee=W.perPage??25;return`${ha.assignedSubjectsOfTeacher}?page=${encodeURIComponent(String(Se))}&per_page=${encodeURIComponent(String(Ee))}&session_id=${encodeURIComponent(String($))}&class_id=${encodeURIComponent(String(oe))}&section_id=${encodeURIComponent(String(ie))}`},[N,W.page,W.perPage,$]),{data:L,isLoading:Y,mutate:se}=H(t&&M?[M,t]:null,([oe,ie])=>K(oe,ie),{revalidateOnFocus:!1}),X=i.useMemo(()=>vg(L),[L]),G=i.useMemo(()=>{const oe=L?.pagination??L?.data?.pagination??L?.data?.data?.pagination;return oe?.total_rows??oe?.total??X.length??0},[L,X]),J=async oe=>{if(oe.preventDefault(),D(""),!a||!r||!o){w.error("Please select Teacher, Class and Section",{duration:1200});return}if(!Array.isArray(y)||y.length===0){D("error"),w.error("Please Select Subject",{duration:1200});return}const ie=new FormData;ie.append("teacher_id",String(a)),ie.append("class_id",String(r)),ie.append("section_id",String(o)),ie.append("isClassTeacher",String(c??"No")),$a(y).forEach(Se=>ie.append("subject_ids[]",String(Se))),$a(m).forEach(Se=>ie.append("delete_subject[]",String(Se)));try{await At(ha.assignClassToTeacher,ie,t,{includeSession:!0}),w.success("Success! Added new item.",{duration:1e3}),D(""),se()}catch(Se){w.error(Se?.response?.data?.msg??Se?.message??"Failed to add the new item.",{duration:1500})}},re=async oe=>{try{await Yt(ha.deleteTeacherSub,oe,t),w.success("Success! Deleted item.",{duration:1e3}),se(),window.location.reload()}catch(ie){w.error(ie?.response?.data?.msg??ie?.message??"Failed to delete the item.",{duration:1500})}},de=oe=>{const ie=Array.isArray(oe?.child)?oe.child:[],Se=[{title:"Subject",dataIndex:"subject",key:"subject",align:"center"},{title:"Subject Code",dataIndex:"code",key:"code",align:"center"},{title:"Action",key:"action",align:"center",render:(Ee,Xe)=>e.jsx(n.Popconfirm,{title:"Delete this subject?",onConfirm:()=>re(Xe?.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})}];return e.jsx("div",{style:{margin:12},children:e.jsx(n.Table,{columns:Se,bordered:!0,size:"small",dataSource:ie,pagination:!1,rowKey:Ee=>Ee.id})})},Ce=[{title:"Teacher Name",dataIndex:"teacher_name",key:"teacher_name",align:"center",render:(oe,ie)=>e.jsxs("div",{children:[ie.teacher_name,ie.classTeacher==="Yes"?e.jsx("span",{style:{fontWeight:700},children:" (Class Teacher)"}):null]})}],le=i.useMemo(()=>(I??[]).map(oe=>({label:oe.label??`${oe.class_name??""} ${oe.section_name??""}`.trim(),key:`${oe.class_id}val${oe.section_id}`,children:e.jsx(n.Table,{size:"small",columns:Ce,bordered:!0,dataSource:Array.isArray(X)?X:[],loading:Y,rowKey:ie=>ie.id,expandable:{expandedRowRender:de},pagination:{current:W.page,pageSize:W.perPage,total:G,showSizeChanger:!0,onChange:(ie,Se)=>B({page:ie,perPage:Se})}})})),[I,W.page,W.perPage,X,Y,G]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(320px, 380px) 1fr",gap:20},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Assign by Class"}),children:e.jsx("form",{onSubmit:J,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(Q,{options:E,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Teachers",name:"teacher_id",required:!0,allowSelectAll:!1,value:E.find(oe=>String(oe.value)===String(a))??null,onChange:oe=>s(oe?.value??null)}),e.jsx(Q,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",required:!0,allowSelectAll:!1,value:F.find(oe=>String(oe.value)===String(r))??null,onChange:oe=>{const ie=oe?.value??null;l(ie),d(null),b(ie?`${Re.master.subjects.byClassLabelValue}?class_id=${encodeURIComponent(String(ie))}`:null),x(ie?`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(ie))}`:null),k(Se=>!Se)}}),e.jsx(Q,{options:q,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",required:!0,allowSelectAll:!1,value:q.find(oe=>String(oe.value)===String(o))??null,onChange:oe=>d(oe?.value??null)},`section_${R}`),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Is Class Teacher?"}),(()=>{const oe=[{label:"Yes",value:"Yes"},{label:"No",value:"No"}];return e.jsx(Q,{style:{width:"100%"},options:oe,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:oe.find(ie=>String(ie.value)===String(c??"No"))??oe[1],onChange:ie=>g(ie?.value??"No")})})()]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Subject"}),e.jsx(Q,{isMulti:!0,style:{width:"100%"},placeholder:"select Subject",options:T,value:(T??[]).filter(oe=>$a(y).some(ie=>String(ie)===String(oe.value))),onChange:(oe,ie)=>{const Ee=(Array.isArray(oe)?oe:[]).map(Oe=>Oe?.value).filter(Oe=>Oe!=null&&Oe!=="");p(Ee);const Xe=Array.isArray(j?.subject_ids)?j.subject_ids.map(String):[],be=ie?.removedValue?.value,ve=ie?.option?.value;(ie?.action==="remove-value"||ie?.action==="pop-value")&&be!=null&&Xe.includes(String(be))&&A(Oe=>Array.from(new Set([...$a(Oe).map(String),String(be)]))),ie?.action==="select-option"&&ve!=null&&Xe.includes(String(ve))&&A(Oe=>$a(Oe).filter(Ye=>String(Ye)!==String(ve)))}},`subjects_${R}`),O?e.jsx("div",{style:{color:"#ff4d4f",marginTop:6,fontSize:12},children:"Please select subject"}):null]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Submit",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Assign Teacher List"}),children:e.jsx(n.Tabs,{activeKey:N??void 0,onChange:oe=>{V(oe),B(ie=>({...ie,page:1}))},items:le,type:"card",size:"small"})})]})]})}function _g({token:t}){return e.jsx(wg,{token:t})}const Fa=Re.timeGroup,Cg=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Nt={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Rn(t){if(!t)return null;const a=te(String(t),["h:mm a","HH:mm:ss","HH:mm"],!0);return a.isValid()?a:null}function Bt(t){return t?te(t).format("h:mm a"):""}function Ag({token:t}){const[a,s]=i.useState({page:1,perPage:50}),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c]=n.Form.useForm(),[g]=n.Form.useForm(),y=`${Fa.table}?page=${encodeURIComponent(String(a.page))}&per_page=${encodeURIComponent(String(a.perPage))}`,{data:p,isLoading:m,mutate:A}=H(t?[y,t]:null,([h,S])=>K(h,S)),C=i.useMemo(()=>Cg(p),[p]),b=i.useMemo(()=>p?.pagination?.total_rows??p?.pagination?.total??C.length??0,[p,C]),{data:f,isLoading:x}=H(t&&o?[`${Fa.show}?id=${encodeURIComponent(String(o))}`,t]:null,([h,S])=>K(h,S)),R=i.useMemo(()=>{const h=f?.data??f;return Array.isArray(h)?h[0]:h??null},[f]);i.useEffect(()=>{r&&R&&g.setFieldsValue({title:R?.title??"",start_time_from:Rn(R?.start_time_from),start_time_to:Rn(R?.start_time_to),end_time_from:Rn(R?.end_time_from),end_time_to:Rn(R?.end_time_to)})},[r,R,g]);const k=async h=>{const S=new FormData;S.append("title",h.title??""),S.append("start_time_from",Bt(h.start_time_from)),S.append("start_time_to",Bt(h.start_time_to)),S.append("end_time_from",Bt(h.end_time_from)),S.append("end_time_to",Bt(h.end_time_to));try{await At(Fa.add,S,t),w.success("Success! Added new item.",{duration:1e3}),c.resetFields(),A()}catch(E){w.error(E?.response?.data?.msg??E?.message??"Failed to add the new item.",{duration:1500})}},O=async h=>{const S=new FormData;S.append("id",String(o??"")),S.append("title",h.title??""),S.append("start_time_from",Bt(h.start_time_from)),S.append("start_time_to",Bt(h.start_time_to)),S.append("end_time_from",Bt(h.end_time_from)),S.append("end_time_to",Bt(h.end_time_to));try{await zt(Fa.edit,S,t),w.success("Success! Updated item.",{duration:1e3}),l(!1),d(null),A()}catch(E){w.error(E?.response?.data?.msg??E?.message??"Failed to update the item.",{duration:1500})}},D=async h=>{try{await Yt(Fa.remove,h,t),w.success("Success! Deleted item.",{duration:1e3}),A()}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to delete the item.",{duration:1500})}},_=h=>{h?.id&&(d(h.id),l(!0))},u=i.useMemo(()=>[{title:"Title",dataIndex:"title",align:"center"},{title:"Start Time From",dataIndex:"start_time_from",align:"center"},{title:"Start Time To",dataIndex:"start_time_to",align:"center"},{title:"End Time From",dataIndex:"end_time_from",align:"center"},{title:"End Time To",dataIndex:"end_time_to",align:"center"},{title:"Action",align:"center",width:120,render:(h,S)=>e.jsxs(n.Space,{children:[e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>_(S)}),e.jsx(n.Popconfirm,{title:"Delete this time group?",onConfirm:()=>D(S?.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{title:"Edit Time Group",open:r,onClose:()=>{l(!1),d(null)},width:520,children:x?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(n.Spin,{size:"large"})}):e.jsxs(n.Form,{form:g,layout:"vertical",onFinish:O,children:[e.jsx(n.Form.Item,{name:"title",label:"Title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(z,{placeholder:"Title"})}),e.jsx(n.Form.Item,{name:"start_time_from",label:"Start Time From",rules:[{required:!0,message:"Start Time From is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsx(n.Form.Item,{name:"start_time_to",label:"Start Time To",rules:[{required:!0,message:"Start Time To is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsx(n.Form.Item,{name:"end_time_from",label:"End Time From",rules:[{required:!0,message:"End Time From is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsx(n.Form.Item,{name:"end_time_to",label:"End Time To",rules:[{required:!0,message:"End Time To is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsxs(n.Space,{children:[e.jsx(ne,{type:"submit",value:"Submit",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>{l(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Create Time Group"}),children:e.jsx(n.Form,{form:c,layout:"vertical",onFinish:k,initialValues:{},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{name:"title",label:"Title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(z,{placeholder:"Title"})}),e.jsx(n.Form.Item,{name:"start_time_from",label:"Start Time From",rules:[{required:!0,message:"Start Time From is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsx(n.Form.Item,{name:"start_time_to",label:"Start Time To",rules:[{required:!0,message:"Start Time To is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsx(n.Form.Item,{name:"end_time_from",label:"End Time From",rules:[{required:!0,message:"End Time From is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsx(n.Form.Item,{name:"end_time_to",label:"End Time To",rules:[{required:!0,message:"End Time To is required"}],children:e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm a",style:Nt})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Submit",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Time Group List"}),children:e.jsx(n.Table,{rowKey:h=>h.id,columns:u,dataSource:C,loading:m,pagination:{current:a.page,pageSize:a.perPage,total:b,showSizeChanger:!0,onChange:(h,S)=>s({page:h,perPage:S})}})})]})}function Dg({token:t}){return e.jsx(Ag,{token:t})}const Ua=Re.assignTimeGroup,Tg=Re.timeGroup.dropdown,Rg=Re.master.classes.dropdown,Xi=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[],Ig=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function kg({token:t}){const[a,s]=i.useState({page:1,perPage:50}),[r,l]=i.useState(null),[o,d]=i.useState([]),[c,g]=i.useState(""),[y,p]=i.useState(""),[m,A]=i.useState(null),[C,b]=i.useState(!1),[f,x]=i.useState(!1),[R,k]=i.useState(null),[O,D]=i.useState([]),[_,u]=i.useState(""),[h,S]=i.useState(""),{data:E}=H(t?[Tg,t]:null,([G,J])=>K(G,J)),{data:F}=H(t?[Rg,t]:null,([G,J])=>K(G,J)),q=i.useMemo(()=>Xi(E?.data??E),[E]),T=i.useMemo(()=>Xi(F),[F]),{data:U}=H(t&&m?[m,t]:null,([G,J])=>K(G,J));i.useEffect(()=>{const G=Array.isArray(U?.data)?U.data.map(J=>J.fk_classId):[];G.length&&d(G)},[U]);const j=`${Ua.table}?page=${encodeURIComponent(String(a.page))}&per_page=${encodeURIComponent(String(a.perPage))}`,{data:P,isLoading:I,mutate:N}=H(t?[j,t]:null,([G,J])=>K(G,J)),V=i.useMemo(()=>Ig(P),[P]),W=i.useMemo(()=>P?.pagination?.total_rows??P?.pagination?.total??V.length??0,[P,V]),{data:B,isLoading:$}=H(t&&R?[`${Ua.show}?id=${encodeURIComponent(String(R))}`,t]:null,([G,J])=>K(G,J)),M=B?.data??B??null;i.useEffect(()=>{if(!f||!M)return;const G=Array.isArray(M?.class_ids)?M.class_ids:[];D(G);const J=Array.isArray(q)?q.find(re=>String(re.value)===String(M?.timegroup_id)):null;J&&S(`${J.start_time_from} -> ${J.end_time_from}`)},[f,M,q]);const L=async G=>{if(G.preventDefault(),g(""),!r?.value){w.error("Select Time Group",{duration:1200});return}if(!o.length){g("error"),w.error("Please Select Classes",{duration:1200});return}const J=new FormData;J.append("timegroup_id",String(r.value)),o.forEach(re=>J.append("class_ids[]",String(re)));try{await At(Ua.assign,J,t),w.success("Success! Added new item.",{duration:1e3}),d([]),l(null),p(""),N()}catch(re){w.error(re?.response?.data?.msg??re?.message??"Failed to add the new item.",{duration:1500})}},Y=async()=>{if(u(""),!R)return;if(!O.length){u("error"),w.error("Please Select Classes",{duration:1200});return}const G=new FormData;G.append("id",String(R)),G.append("timegroup_id",String(M?.timegroup_id??"")),O.forEach(J=>G.append("class_ids[]",String(J)));try{await zt(Ua.assign,G,t),w.success("Success! Updated item.",{duration:1e3}),x(!1),k(null),N()}catch(J){w.error(J?.response?.data?.msg??J?.message??"Failed to update the item.",{duration:1500})}},se=G=>{G&&(k(G),x(!0))},X=i.useMemo(()=>[{title:"Title",dataIndex:"title",align:"center"},{title:"Class Names",dataIndex:"class_names",align:"center"},{title:"Start Time From",dataIndex:"start_time_from",align:"center"},{title:"Start Time To",dataIndex:"start_time_to",align:"center"},{title:"End Time From",dataIndex:"end_time_from",align:"center"},{title:"End Time To",dataIndex:"end_time_to",align:"center"},{title:"Action",align:"center",width:90,render:(G,J)=>J?.class_names?e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>se(J?.id)}):null}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Drawer,{title:"Edit Assigned Time Group",open:f,onClose:()=>{x(!1),k(null)},width:520,extra:e.jsxs(n.Space,{children:[e.jsx(n.Button,{onClick:()=>x(!1),children:"Cancel"}),e.jsx(n.Button,{type:"primary",onClick:Y,children:"Submit"})]}),children:$?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(n.Spin,{size:"large"})}):e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(Q,{options:Array.isArray(q)?q:[],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Select Time Group",name:"timegroup_id",allowSelectAll:!1,value:q.find(G=>String(G.value)===String(M?.timegroup_id))??null,onChange:()=>{},isDisabled:!0}),e.jsx("div",{style:{marginTop:4,fontSize:16},children:h}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Select Classes"}),e.jsx(n.Select,{mode:"multiple",style:{width:"100%"},status:_,value:O,placeholder:"Select Classes",onChange:G=>D(G),options:Array.isArray(T)?T:[]})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Assign Time Group"}),children:e.jsx("form",{onSubmit:L,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsxs("div",{children:[e.jsx(Q,{options:Array.isArray(q)?q:[],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Select Time Group",name:"timegroup_id",required:!0,allowSelectAll:!1,value:r,onChange:G=>{l(G??null),d([]),g(""),G?.value?(A(`${Ua.classIdByTimeGroup}?id=${encodeURIComponent(String(G.value))}`),p(`${G.start_time_from} -> ${G.end_time_from}`)):(A(null),p("")),b(J=>!J)}}),e.jsx("div",{style:{marginTop:6},children:y})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Select Classes"}),e.jsx(Q,{isMulti:!0,style:{width:"100%"},status:c,value:(T??[]).filter(G=>Array.isArray(o)&&o.some(J=>String(J)===String(G.value))),placeholder:"Select Classes",onChange:G=>{const J=Array.isArray(G)?G:[];d(J.map(re=>re?.value).filter(re=>re!=null&&re!==""))},options:Array.isArray(T)?T:[]},`class_${C}`)]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Assigned Time group List"}),children:e.jsx(n.Table,{rowKey:G=>G.id,columns:X,dataSource:V,loading:I,pagination:{current:a.page,pageSize:a.perPage,total:W,showSizeChanger:!0,onChange:(G,J)=>s({page:G,perPage:J})}})})]})}function Pg({token:t}){return e.jsx(kg,{token:t})}const Qs=Re.promoteStudents,Og=({token:t})=>H(t?[Qs.sessionDropdown,t]:null,([a,s])=>K(a,s)),In=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Mg=(t,a)=>{const s=t?.pagination??t?.data?.pagination??t?.data?.data?.pagination,r=s?.total_rows??s?.total??s?.totalItems;return Number.isFinite(Number(r))?Number(r):a};function Eg({token:t}){const[a]=n.Form.useForm(),[s,r]=i.useState({page:1,perPage:300}),[l,o]=i.useState({classId:null,sectionId:null}),[d,c]=i.useState({sessionId:null,classId:null}),[g,y]=i.useState(!1),[p,m]=i.useState([]),A=i.useMemo(()=>new Set(p),[p]),[C,b]=i.useState({}),[f,x]=i.useState({}),{data:R}=H(t?[Re.master.classes.dropdown,t]:null,([L,Y])=>K(L,Y)),k=i.useMemo(()=>In(R),[R]),O=i.useMemo(()=>l.classId?`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(l.classId))}`:null,[l.classId]),{data:D}=H(t&&O?[O,t]:null,([L,Y])=>K(L,Y)),_=i.useMemo(()=>In(D),[D]),u=i.useMemo(()=>d.classId?`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(d.classId))}`:null,[d.classId]),{data:h}=H(t&&u?[u,t]:null,([L,Y])=>K(L,Y),{revalidateOnFocus:!1}),S=i.useMemo(()=>In(h),[h]),{data:E}=Og({token:t}),F=i.useMemo(()=>In(E),[E]),{trigger:q,data:T,isMutating:U}=rt(t?Qs.searchByClassSection:null,(L,{arg:Y})=>Qt(L,{arg:Y},t)),j=i.useMemo(()=>{const L=T?.data?.data??T?.data??T??[];return Array.isArray(L)?L:Array.isArray(L?.data)?L.data:[]},[T]),P=i.useMemo(()=>Mg(T,j.length??0),[T,j.length]),I=i.useMemo(()=>{const L=new Map;return(Array.isArray(j)?j:[]).forEach(Y=>{Y?.id!==void 0&&Y?.id!==null&&L.set(String(Y.id),Y)}),L},[j]),N=i.useCallback((L,Y)=>{const se=String(L);x(X=>({...X,[se]:{...X?.[se]??{},...Y}}))},[]),V=i.useCallback((L,Y)=>{const se=String(L),X=Y==="Leave";b(G=>({...G,[se]:X}))},[]),W=L=>{const Y=L?.class_id?.value??L?.class_id??null,se=L?.section_id?.value??L?.section_id??null;if(!Y||!se){w.error("Please select Class and Section",{duration:1200});return}r(X=>({...X,page:1})),o({classId:Y,sectionId:se}),m([]),b({}),x({})},B=async()=>{if(!d.sessionId||!d.classId){w.error("Please select Session and Class for promotion",{duration:1300});return}if(!Array.isArray(p)||p.length===0){w.error("Please select students to promote",{duration:1200});return}const L=p.map(G=>String(G)).map(G=>{const J=I.get(G)??{},re=!!C?.[G],de=f?.[G]??{},Ce=String(de.current_result??"Pass");if(re){const ie=String(de.leave_date??"");return{student_id:G,current_result:Ce,next_session_status:"Leave",leave_date:ie}}const le=String(de.roll_no??J?.roll_no??""),oe=String(de.section_id??"");return{student_id:G,roll_no:le,section_id:oe,current_result:Ce,next_session_status:"Continue"}});if(L.some(G=>G?.next_session_status==="Leave"&&!String(G?.leave_date??"").trim())){w.error("Leave date is required for Leave students.",{duration:1500});return}if(L.some(G=>G?.next_session_status==="Continue"&&!String(G?.section_id??"").trim())){w.error("Section is required for Continue students.",{duration:1500});return}const X={class_id:String(d.classId),session_id:String(d.sessionId),students:L};try{const G=await We(Qs.promote,X,t);if(G?.Status&&String(G.Status)!=="success")throw new Error(G?.msg||"Failed to update");w.success("Success! Updated.",{duration:1e3});const J=Number(G?.success_count??0)+Number(G?.leave_count??0),re=s.page===Math.ceil((Number(P)||0)/s.perPage||1),de=J>0&&J===j.length&&j.length===p.length,Ce=re&&de&&s.page>1?s.page-1:s.page;r(le=>({...le,page:Ce})),q?.({cID:l.classId,sID:l.sectionId,page:Ce,per_page:s.perPage}),m([]),b({}),x({})}catch(G){w.error(G?.response?.data?.msg??G?.message??"Failed to update",{duration:1500})}},$=i.useMemo(()=>[{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:140},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:120,render:(L,Y)=>{const se=String(Y?.id??""),X=A.has(se),G=!!C?.[se],re=(f?.[se]??{}).roll_no??(G?"":Y?.roll_no??"");return e.jsx(n.Input,{value:X?re:Y?.roll_no,style:X?{textAlign:"center"}:{textAlign:"center",border:"none",background:"transparent",cursor:"default"},disabled:!X||G,onChange:de=>N(se,{roll_no:de.target.value})})}},{title:"Name",dataIndex:"firstname",key:"name",render:(L,Y)=>`${Y?.firstname??""} ${Y?.lastname??""}`.trim()},{title:"Section",dataIndex:"section",key:"section",width:160,render:(L,Y)=>{const se=String(Y?.id??""),X=A.has(se),G=!!C?.[se],re=(f?.[se]??{}).section_id??"",de=Array.isArray(S)?S:[];return e.jsx(n.Select,{options:de,placeholder:X&&!G?"Select Section":"Section",disabled:!X||G,value:X&&!G&&re||void 0,style:{width:"100%"},onChange:Ce=>N(se,{section_id:Ce})},`section_${se}_${g}_${G?"L":"C"}`)}},{title:"Current Result",dataIndex:"current_result",key:"current_result",width:160,render:(L,Y)=>{const se=String(Y?.id??""),X=A.has(se),G=f?.[se]??{},J=String(G.current_result??"Pass");return e.jsxs(n.Radio.Group,{value:J,disabled:!X,buttonStyle:"solid",onChange:re=>N(se,{current_result:re.target.value}),children:[e.jsx(n.Radio.Button,{value:"Pass",children:"Pass"}),e.jsx(n.Radio.Button,{value:"Fail",children:"Fail"})]})}},{title:"Next Session Status",dataIndex:"next_session_status",key:"next_session_status",width:220,render:(L,Y)=>{const se=String(Y?.id??""),X=A.has(se),G=!!C?.[se],J=f?.[se]??{},re=String(J.leave_date??"");return e.jsxs("div",{style:{display:"grid",gap:6},children:[e.jsxs(n.Radio.Group,{value:G?"Leave":"Continue",disabled:!X,buttonStyle:"solid",onChange:de=>V(se,de.target.value),children:[e.jsx(n.Radio.Button,{value:"Continue",children:"Continue"}),e.jsx(n.Radio.Button,{value:"Leave",children:"Leave"})]}),X&&G&&e.jsx(n.DatePicker,{style:{width:"100%"},value:re?te(re):null,onChange:de=>N(se,{leave_date:de?de.format("YYYY-MM-DD"):""}),placeholder:"Leave date"})]})}}],[V,C,f,A,g,S,N]),M=i.useMemo(()=>({selectedRowKeys:p,onChange:L=>m((Array.isArray(L)?L:[]).map(Y=>String(Y)))}),[p]);return i.useEffect(()=>{!l.classId||!l.sectionId||q&&q({cID:l.classId,sID:l.sectionId,page:s.page,per_page:s.perPage})},[s.page,s.perPage,q,l.classId,l.sectionId]),e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Promote Students"}),children:e.jsx(n.Form,{form:a,layout:"vertical",onFinish:W,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{name:"class_id",label:"Class",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:L=>L,children:e.jsx(Q,{options:k,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:L=>{const Y=L?.value??null;a.setFieldValue("section_id",null),o({classId:Y,sectionId:null})}})}),e.jsx(n.Form.Item,{name:"section_id",label:"Section",rules:[{required:!0,message:"Section is required"}],getValueFromEvent:L=>L,children:e.jsx(Q,{options:_,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Promote Students In Next Session"}),extra:e.jsx(Wt,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs(n.Typography.Text,{children:["Selected: ",p.length]}),e.jsx(n.Typography.Text,{type:"secondary",children:"Select students → set Continue/Leave → Save"})]}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{label:"Session",options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:F.find(L=>String(L.value)===String(d.sessionId))??null,onChange:L=>c(Y=>({...Y,sessionId:L?.value??null}))}),e.jsx(Q,{label:"Class",options:k,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:k.find(L=>String(L.value)===String(d.classId))??null,onChange:L=>{const Y=L?.value??null;c(se=>({...se,classId:Y})),y(se=>!se)}}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"button",value:"Save",color:"primary",onClick:B})})]}),e.jsx(n.Table,{rowKey:L=>String(L.id),rowSelection:M,columns:$,dataSource:j,loading:U,pagination:{current:s.page,pageSize:s.perPage,total:P,showSizeChanger:!0,onChange:(L,Y)=>{r({page:L,perPage:Y}),m([]),b({}),x({})}}})]})})]})}function $g({token:t}){return e.jsx(Eg,{token:t})}const ya=Re.coscholastic,Fg=({token:t})=>H(t?[ya.table,t]:null,([a,s])=>K(a,s),{revalidateOnFocus:!1}),Ug=({token:t})=>H(t?[ya.categoryDropdown,t]:null,([a,s])=>K(a,s),{revalidateOnFocus:!1}),Zi=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]};function Ng({token:t}){const[a,s]=i.useState(""),[r,l]=i.useState(null),[o,d]=i.useState(null),c=i.useRef(null),{data:g}=H(t?[Re.master.classes.dropdown,t]:null,([h,S])=>K(h,S)),y=i.useMemo(()=>Zi(g),[g]),{data:p,isLoading:m,mutate:A}=Fg({token:t}),C=i.useMemo(()=>{const h=p?.data?.data??p?.data??p??[];return Array.isArray(h)?h:Array.isArray(h?.data)?h.data:[]},[p]),{data:b,mutate:f}=Ug({token:t}),x=i.useMemo(()=>Zi(b),[b]),R=i.useMemo(()=>(Array.isArray(x)?x:[]).map(h=>({value:h?.value??h?.id,label:h?.label??h?.title??""})),[x]),k=async()=>{const h=String(a??"").trim();if(!h){w.error("Please enter category title",{duration:1200});return}try{await Ne(ya.addCategory,{title:h},t),w.success("Success! Added category.",{duration:1e3}),s(""),f()}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to add category",{duration:1500})}},O=async h=>{try{await Yt(ya.deleteCategory,h,t),w.success("Success! Deleted category.",{duration:1e3}),f()}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to delete category",{duration:1500})}},D=async h=>{if(h.preventDefault(),!r){w.error("Please select Category",{duration:1200});return}if(!o){w.error("Please select Class",{duration:1200});return}if(!h?.target?.skill?.value){w.error("Please enter Skill Name",{duration:1200});return}const E=new FormData(h.target);E.append("scholastic_catid",String(r)),E.append("class_id",String(o));try{await At(ya.addSkill,E,t),w.success("Success! Added new item.",{duration:1e3}),h.target.reset(),d(null),A()}catch(F){w.error(F?.response?.data?.msg??F?.message??"Failed to add the new item.",{duration:1500})}},_=async h=>{try{await Yt(ya.deleteSkill,h,t),w.success("Success! Deleted item.",{duration:1e3}),A()}catch(S){w.error(S?.response?.data?.msg??S?.message??"Failed to delete the item.",{duration:1500})}},u=i.useMemo(()=>[{title:"Skill Category",dataIndex:"title",key:"title"},{title:"Class",dataIndex:"class",key:"class"},{title:"Skill Name",dataIndex:"skill",key:"skill"},{title:"Action",key:"action",width:90,render:(h,S)=>e.jsx(n.Popconfirm,{title:"Delete this skill?",onConfirm:()=>_(S?.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Co Scholastic Area"}),children:e.jsx("form",{onSubmit:D,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Category"}),e.jsx(Q,{style:{width:"100%"},value:R.find(h=>String(h.value)===String(r))??null,placeholder:"Select Category",onChange:h=>l(h?.value??null),options:R}),e.jsxs("div",{style:{display:"flex",gap:10,alignItems:"center",marginTop:10},children:[e.jsx(z,{placeholder:"New category",ref:c,value:a,onChange:h=>s(h.target.value)}),e.jsx(n.Button,{type:"text",icon:e.jsx(ee.PlusOutlined,{}),onClick:k}),e.jsx(n.Popconfirm,{title:"Delete selected category?",onConfirm:()=>{r&&(O(r),l(null))},children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{}),disabled:!r})})]})]}),e.jsx(Q,{label:"Class",options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:y.find(h=>String(h.value)===String(o))??null,onChange:h=>d(h?.value??null)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Skill Name"}),e.jsx(z,{name:"skill",placeholder:"Skill Name"})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Co Scholastic Area List"}),extra:e.jsx(Wt,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx(n.Table,{rowKey:h=>h.id,columns:u,dataSource:C,loading:m,pagination:!1})})]})}function Bg({token:t}){return e.jsx(Ng,{token:t})}const Lg=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",_o=({token:t,value:a,onChange:s,action:r,filePath:l})=>{const o=i.useMemo(()=>{if(t)return{Authorization:t}},[t]),d=r??Xy(),c=i.useMemo(()=>{if(!l)return d;const g=d.includes("?")?"&":"?";return`${d}${g}filepath=${encodeURIComponent(l)}`},[d,l]);return e.jsx(n.Upload,{maxCount:1,action:c,headers:o,onChange:g=>{if(g?.file?.status==="done"){const y=Lg(g?.file?.response);y&&s?.(y)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})})},el=Re.notes,qg=({token:t,url:a})=>H(t&&a?[a,t]:null,([s,r])=>K(s,r),{revalidateOnFocus:!1}),kn=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},zg=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r};function Yg({token:t}){const[a]=n.Form.useForm(),[s]=n.Form.useForm(),[r,l]=i.useState({page:1,perPage:50}),[o,d]=i.useState({classId:null,sectionId:null}),[c,g]=i.useState(!1),[y,p]=i.useState(""),{data:m}=H(t?[Re.master.classes.dropdown,t]:null,([M,L])=>K(M,L)),A=i.useMemo(()=>kn(m),[m]),C=i.useMemo(()=>o.classId?`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(o.classId))}`:null,[o.classId]),{data:b}=H(t&&C?[C,t]:null,([M,L])=>K(M,L)),f=i.useMemo(()=>kn(b),[b]),x=i.useMemo(()=>!o.classId||!o.sectionId?null:`${el.table}?class_id=${encodeURIComponent(String(o.classId))}&section_id=${encodeURIComponent(String(o.sectionId))}&page=${encodeURIComponent(String(r.page))}&per_page=${encodeURIComponent(String(r.perPage))}`,[o.classId,o.sectionId,r.page,r.perPage]),{data:R,isLoading:k,mutate:O}=qg({token:t,url:x}),D=i.useMemo(()=>{const M=R?.data?.data??R?.data??R??[];return Array.isArray(M)?M:Array.isArray(M?.data)?M.data:[]},[R]),_=i.useMemo(()=>R?.pagination?.total_rows??R?.pagination?.total??D.length??0,[R,D.length]),[u,h]=i.useState(null),[S,E]=i.useState(null),[F,q]=i.useState(null),[T,U]=i.useState(!1),{data:j}=H(t&&F?[F,t]:null,([M,L])=>K(M,L),{revalidateOnFocus:!1}),P=i.useMemo(()=>kn(j),[j]),{data:I}=H(t&&S?[S,t]:null,([M,L])=>K(M,L)),N=i.useMemo(()=>kn(I),[I]),V=M=>{const L=M?.class_id?.value??null,Y=M?.section_id?.value??null;!L||!Y||(l(se=>({...se,page:1})),d({classId:L,sectionId:Y}))},W=()=>{p(""),g(!0),h(null),E(null),q(null),U(M=>!M),s.resetFields()},B=async M=>{const L=M?.class_id?.value??null,Y=M?.section_id?.value??null,se=M?.sub_id?.value??null,X=M?.status?.value??"publish",G=M?.title??"",J=M?.remark??"";if(!L||!Y||!se||!G||!J||!y){w.error("Please fill all fields",{duration:1200});return}const re=new FormData;re.append("class_id",String(L)),re.append("section_id",String(Y)),re.append("sub_id",String(se)),re.append("title",String(G)),re.append("remark",String(J)),re.append("status",String(X)),re.append("file",String(y));try{await At(el.add,re,t),w.success("Success! Added new item.",{duration:1e3}),g(!1),O()}catch(de){w.error(de?.response?.data?.msg??de?.message??"Failed to add the new item.",{duration:1500})}},$=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title",align:"center"},{title:"Remarks",dataIndex:"remark",key:"remark",align:"center"},{title:"Subject",dataIndex:"subject",key:"subject",align:"center"},{title:"Staff Name",dataIndex:"teacher_name",key:"teacher_name",align:"center"},{title:"Status",key:"status",align:"center",render:(M,L)=>{const Y=String(L?.status??"").toLowerCase();return e.jsx(n.Tag,{color:Y==="publish"?"green":"red",children:L?.status??"-"})}},{title:"File",key:"file",align:"center",render:(M,L)=>{const Y=L?.file;if(!Y)return"-";const se=zg(Ke(),`uploads/school_${L?.fk_branchID}/student/note/${Y}`);return e.jsx("a",{href:se,target:"_blank",rel:"noreferrer",children:"View File"})}},{title:"Date",dataIndex:"date",key:"date",align:"center"}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{title:"Add Note",open:c,onCancel:()=>g(!1),footer:null,width:820,destroyOnClose:!0,children:e.jsx(n.Form,{form:s,layout:"vertical",onFinish:B,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:M=>M,children:e.jsx(Q,{options:A,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:M=>{const L=M?.value??null;h(L),s.setFieldValue("section_id",null),s.setFieldValue("sub_id",null),q(L?`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(L))}`:null),E(L?`${Re.master.subjects.dropdown}?class_id=${encodeURIComponent(String(L))}`:null),U(Y=>!Y)}},`class_${T}`)}),e.jsx(n.Form.Item,{label:"Section",name:"section_id",rules:[{required:!0,message:"Section is required"}],getValueFromEvent:M=>M,children:e.jsx(Q,{options:P,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`section_${T}_${u??"none"}`)}),e.jsx(n.Form.Item,{label:"Subject",name:"sub_id",rules:[{required:!0,message:"Subject is required"}],getValueFromEvent:M=>M,children:e.jsx(Q,{options:N,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`sub_${T}_${S??"none"}`)}),e.jsx(n.Form.Item,{label:"Title",name:"title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(z,{placeholder:"Title"})}),e.jsx(n.Form.Item,{label:"Remark",name:"remark",rules:[{required:!0,message:"Remark is required"}],children:e.jsx(z,{placeholder:"Remark"})}),e.jsx(n.Form.Item,{label:"Status",name:"status",initialValue:{label:"Publish",value:"publish"},getValueFromEvent:M=>M,children:e.jsx(Q,{options:[{label:"Publish",value:"publish"},{label:"Unpublish",value:"unpublish"}],closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx(n.Form.Item,{label:"File",required:!0,children:e.jsx(_o,{token:t,value:y,onChange:p})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(ne,{type:"submit",value:"Save",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>g(!1),children:"Cancel"})]})]})})}),e.jsx(n.Card,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Notes"}),e.jsx(Wt,{actions:["add","export","print","download","filter"],onAdd:W,onPrint:()=>window.print()})]}),children:e.jsx(n.Form,{form:a,layout:"vertical",onFinish:V,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:M=>M,children:e.jsx(Q,{options:A,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:M=>{const L=M?.value??null;a.setFieldValue("section_id",null),d({classId:L,sectionId:null})}})}),e.jsx(n.Form.Item,{label:"Section",name:"section_id",rules:[{required:!0,message:"Section is required"}],getValueFromEvent:M=>M,children:e.jsx(Q,{options:f,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Note List"}),children:e.jsx(n.Table,{rowKey:M=>M.id,columns:$,dataSource:D,loading:k,pagination:{current:r.page,pageSize:r.perPage,total:_,showSizeChanger:!0,onChange:(M,L)=>l({page:M,perPage:L})}})})]})}function Vg({token:t}){return e.jsx(Yg,{token:t})}const Wg=({token:t})=>H(t?[Re.promoteStudents.sessionDropdown,t]:null,([a,s])=>K(a,s),{revalidateOnFocus:!1}),tl=Re.transferCertificate,Es=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Hg={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},Kg=(t,a)=>t.inputtype==="Select"?null:t.inputtype==="date"?te():"",al=t=>[{name:"ncc_details",inputtype:"text",label:"Ncc Details",required:!1},{name:"extra_curricular_activites",inputtype:"text",label:"Games played or extra-curricular activities in which the pupil usually took part",required:!1},{name:"generalConduct",inputtype:"text",label:"General conduct",required:!1},{name:"qualified_class",inputtype:"Select",label:"Qualified class",required:!1},{name:"application_date",inputtype:"date",label:"Date of application for certificate",required:!1},{name:"issue_date",inputtype:"date",label:"Date of issue of certificate",required:!1},{name:"reason_of_leaving",inputtype:"text",label:"Reason for leaving the school",required:!1},{name:"otherRemarks",inputtype:"text",label:"Any other remarks",required:!1},{name:"student_id",inputtype:"hidden",label:"",required:!1,value:t},{name:"qualified_for_promotion",inputtype:"radio",label:"Qualified for promotion",required:!1},{name:"failed",inputtype:"radio",label:"Failed",required:!1},{name:"nationality",inputtype:"text",label:"Nationality",required:!1},{name:"checked_by",inputtype:"text",label:"Checked By",required:!1},{name:"checked_by_designation",inputtype:"text",label:"Checked By Designation",required:!1}],nl=t=>[{name:"change_of_school",inputtype:"text",label:"Change of School",required:!1},{name:"character_remark",inputtype:"text",label:"Character",required:!1},{name:"generalConduct",inputtype:"text",label:"General conduct",required:!1},{name:"application_date",inputtype:"date",label:"Date of application for certificate",required:!1},{name:"issue_date",inputtype:"date",label:"Date of issue of certificate",required:!1},{name:"last_attendance",inputtype:"date",label:"Last Class Attendence",required:!1},{name:"otherRemarks",inputtype:"text",label:"Any other remarks",required:!1},{name:"student_id",inputtype:"hidden",label:"",required:!1,value:t},{name:"qualified_for_promotion",inputtype:"radio",label:"Qualified for promotion",required:!1}];function Gg({token:t,transferCertificateViewPath:a="/AcademicsDashboard/TransferCertificateView",onOpenTransferCertificateView:s}){const[r]=n.Form.useForm(),[l]=n.Form.useForm(),[o,d]=i.useState({page:1,perPage:10}),[c,g]=i.useState({classId:null,sectionId:null,sessionId:null}),[y,p]=i.useState(null),[m,A]=i.useState(!1),{data:C}=H(t?[Re.master.classes.dropdown,t]:null,([$,M])=>K($,M)),b=i.useMemo(()=>Es(C),[C]),{data:f}=H(t&&y?[y,t]:null,([$,M])=>K($,M)),x=i.useMemo(()=>Es(f),[f]),{data:R}=Wg({token:t}),k=i.useMemo(()=>Es(R),[R]),O=i.useMemo(()=>!c.classId||!c.sectionId||!c.sessionId?null:`${tl.studentList}?class_id=${encodeURIComponent(String(c.classId))}&section_id=${encodeURIComponent(String(c.sectionId))}&session_id=${encodeURIComponent(String(c.sessionId))}&page=${encodeURIComponent(String(o.page))}&per_page=${encodeURIComponent(String(o.perPage))}`,[c.classId,c.sectionId,c.sessionId,o.page,o.perPage]),{data:D,isLoading:_,mutate:u}=H(t&&O?[O,t]:null,([$,M])=>K($,M),{revalidateOnFocus:!1,onSuccess:$=>{const M=$?.data?.data??$?.data??[];Array.isArray(M)&&M[0]?.transefer_certificate_id&&j(String(M[0].transefer_certificate_id))}}),h=i.useMemo(()=>{const $=D?.data?.data??D?.data??D??[];return Array.isArray($)?$:Array.isArray($?.data)?$.data:[]},[D]),S=i.useMemo(()=>D?.pagination?.total_rows??D?.pagination?.total??h.length??0,[D,h.length]),[E,F]=i.useState(!1),[q,T]=i.useState(null),[U,j]=i.useState("1"),P=$=>{T($);const M=U==="1"?al($):nl($),L={};M.forEach(Y=>{L[Y.name]=Y.value??Kg(Y)}),l.setFieldsValue(L),F(!0)},I=async $=>{if(!$)return;if(typeof s=="function")return s($);const M=`${a}?id=${encodeURIComponent(String($))}`;window.location.href=M},N=$=>{const M=$?.class_id?.value??null,L=$?.section_id?.value??null,Y=$?.session_id?.value??null;if(!M||!L||!Y){w.error("Please select Class, Section and Session",{duration:1200});return}d(se=>({...se,page:1})),g({classId:M,sectionId:L,sessionId:Y})},V=async $=>{const M=new FormData;Object.entries($??{}).forEach(([L,Y])=>{if(Y!=null){if(te.isDayjs(Y)){M.append(L,Y.format("YYYY-MM-DD"));return}M.append(L,String(Y))}});try{await At(tl.addData,M,t),w.success("Success! Added new item.",{duration:1e3}),F(!1),T(null),u()}catch(L){w.error(L?.response?.data?.msg??L?.message??"Failed to add the new item.",{duration:1500})}},W=i.useMemo(()=>U==="1"?al(q):nl(q),[U,q]),B=i.useMemo(()=>[{title:"Admission no",dataIndex:"admission_no",key:"admission_no",align:"center"},{title:"Roll NO",dataIndex:"roll_no",key:"roll_no",align:"center"},{title:"Name",dataIndex:"full_name",key:"full_name",align:"center"},{title:"Class",dataIndex:"class",key:"class",align:"center"},{title:"Section",dataIndex:"section",key:"section",align:"center"},{title:"Guardian Name",dataIndex:"guardian_name",key:"guardian_name",align:"center"},{title:"Mobile No",dataIndex:"mobileno",key:"mobileno",align:"center"},{title:"Action",key:"action",align:"center",width:80,render:($,M)=>e.jsx(n.Button,{type:"text",icon:M?.transfer_certificate_data==="not_present"?e.jsx(ee.EyeOutlined,{}):e.jsx(ee.CheckOutlined,{}),onClick:()=>{M?.transfer_certificate_data==="not_present"?P(M?.id):I(M?.id)}})}],[U]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{title:"Transfer Certificate",open:E,onCancel:()=>F(!1),footer:null,width:820,destroyOnClose:!0,children:e.jsxs(n.Form,{form:l,layout:"vertical",onFinish:V,children:[e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:16},children:W.map($=>$.inputtype==="hidden"?e.jsx(n.Form.Item,{name:$.name,initialValue:$.value??"",style:{display:"none"},children:e.jsx("input",{type:"hidden"})},$.name):$.inputtype==="date"?e.jsx(n.Form.Item,{label:$.label,name:$.name,children:e.jsx(n.DatePicker,{format:"YYYY-MM-DD",style:Hg})},$.name):$.inputtype==="radio"?e.jsx(n.Form.Item,{label:$.label,name:$.name,children:e.jsx(n.Radio.Group,{options:[{label:"Yes",value:"Yes"},{label:"No",value:"No"}]})},$.name):$.inputtype==="Select"?e.jsx(n.Form.Item,{label:$.label,name:$.name,getValueFromEvent:M=>M,children:e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})},$.name):e.jsx(n.Form.Item,{label:$.label,name:$.name,children:e.jsx(z,{placeholder:$.label})},$.name))}),e.jsxs(n.Space,{style:{width:"100%",justifyContent:"flex-end"},children:[e.jsx(ne,{type:"submit",value:"Submit",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>F(!1),children:"Cancel"})]})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Student History"}),children:e.jsx(n.Form,{form:r,layout:"vertical",onFinish:N,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:$=>$,children:e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:$=>{const M=$?.value??null;p(M?`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(M))}`:null),A(L=>!L),r.setFieldValue("section_id",null)}})}),e.jsx(n.Form.Item,{label:"Section",name:"section_id",getValueFromEvent:$=>$,children:e.jsx(Q,{options:x,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`section_${m}`)}),e.jsx(n.Form.Item,{label:"Session",name:"session_id",rules:[{required:!0,message:"Session is required"}],getValueFromEvent:$=>$,children:e.jsx(Q,{options:k,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Student List"}),extra:e.jsx(Wt,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx(n.Table,{rowKey:$=>$.id,columns:B,dataSource:h,loading:_,pagination:{current:o.page,pageSize:o.perPage,total:S,showSizeChanger:!0,onChange:($,M)=>d({page:$,perPage:M})}})})]})}function Jg({token:t,transferCertificateViewPath:a,onOpenTransferCertificateView:s}){return e.jsx(Gg,{token:t,transferCertificateViewPath:a,onOpenTransferCertificateView:s})}const Qg=({token:t,url:a})=>H(t&&a?[a,t]:null,([s,r])=>K(s,r),{revalidateOnFocus:!1}),$s=Re.syllabus,sl=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Xg=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r};function Zg({token:t}){const[a]=n.Form.useForm(),[s]=n.Form.useForm(),[r,l]=i.useState({page:1,perPage:50}),[o,d]=i.useState({classId:null}),[c,g]=i.useState(!1),[y,p]=i.useState(null),[m,A]=i.useState(""),{data:C}=H(t?[Re.master.classes.dropdown,t]:null,([I,N])=>K(I,N)),b=i.useMemo(()=>sl(C),[C]),f=i.useMemo(()=>o.classId?`${$s.table}?class_id=${encodeURIComponent(String(o.classId))}&page=${encodeURIComponent(String(r.page))}&per_page=${encodeURIComponent(String(r.perPage))}`:null,[o.classId,r.page,r.perPage]),{data:x,isLoading:R,mutate:k}=Qg({token:t,url:f}),O=i.useMemo(()=>{const I=x?.data?.data??x?.data??x??[];return Array.isArray(I)?I:Array.isArray(I?.data)?I.data:[]},[x]),D=i.useMemo(()=>x?.pagination?.total_rows??x?.pagination?.total??O.length??0,[x,O.length]),[_,u]=i.useState(null),[h,S]=i.useState(!1),{data:E}=H(t&&_?[_,t]:null,([I,N])=>K(I,N),{revalidateOnFocus:!1}),F=i.useMemo(()=>sl(E),[E]),q=I=>{const N=I?.class_id?.value??null;N&&(l(V=>({...V,page:1})),d({classId:N}))},T=()=>{p(null),A(""),u(null),S(I=>!I),s.resetFields(),g(!0)},U=I=>{p(I),A(I?.attchement??"");const N=I?.class_id;u(N?`${Re.master.subjects.dropdown}?class_id=${encodeURIComponent(String(N))}`:null),S(V=>!V),s.setFieldsValue({class_id:b.find(V=>String(V.value)===String(N))??null,sub_id:F.find(V=>String(V.value)===String(I?.sub_id??I?.subject_id))??(I?.sub_id||I?.subject_id?{label:I?.subject_title??"Subject",value:I?.sub_id??I?.subject_id}:null),title:I?.title??"",description:I?.description??""}),g(!0)},j=async I=>{const N=I?.class_id?.value??null,V=I?.sub_id?.value??null,W=I?.title??"",B=I?.description??"";if(!N||!V||!W||!B||!m){w.error("Please fill all fields",{duration:1200});return}const $=new FormData;$.append("class_id",String(N)),$.append("sub_id",String(V)),$.append("title",String(W)),$.append("description",String(B)),$.append("file",String(m));try{y?.id?($.append("id",String(y.id)),await At($s.edit,$,t),w.success("Success! Updated item.",{duration:1e3})):(await At($s.add,$,t),w.success("Success! Added new item.",{duration:1e3})),g(!1),p(null),k()}catch(M){w.error(M?.response?.data?.msg??M?.message??"Failed to save",{duration:1500})}},P=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title",align:"center"},{title:"Description",dataIndex:"description",key:"description",align:"center"},{title:"Subject",dataIndex:"subject_title",key:"subject_title",align:"center"},{title:"File",key:"file",align:"center",render:(I,N)=>{const V=N?.attchement;if(!V)return"-";const W=Xg(Ke(),`uploads/school_${N?.fk_branchID}/student/syllabus/${V}`);return e.jsx("a",{href:W,target:"_blank",rel:"noreferrer",children:"View File"})}},{title:"Action",key:"action",width:80,align:"center",render:(I,N)=>e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>U(N)})}],[F,b]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Modal,{title:y?"Edit Syllabus":"Add Syllabus",open:c,onCancel:()=>{g(!1),p(null),A("")},footer:null,width:820,destroyOnClose:!0,children:e.jsx(n.Form,{form:s,layout:"vertical",onFinish:j,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:I=>I,children:e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:I=>{const N=I?.value??null;s.setFieldValue("sub_id",null),u(N?`${Re.master.subjects.dropdown}?class_id=${encodeURIComponent(String(N))}`:null),S(V=>!V)}},`class_${y?.id??"add"}_${h}`)}),e.jsx(n.Form.Item,{label:"Subject",name:"sub_id",rules:[{required:!0,message:"Subject is required"}],getValueFromEvent:I=>I,children:e.jsx(Q,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`sub_${y?.id??"add"}_${h}_${_??"none"}`)}),e.jsx(n.Form.Item,{label:"Title",name:"title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(z,{placeholder:"Title"})}),e.jsx(n.Form.Item,{label:"Description",name:"description",rules:[{required:!0,message:"Description is required"}],children:e.jsx(lt,{placeholder:"Description"})}),e.jsx(n.Form.Item,{label:"File",required:!0,children:e.jsx(_o,{token:t,value:m,onChange:A,action:Zy(),filePath:"student/syllabus"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(ne,{type:"submit",value:"Save",color:"primary"}),e.jsx(n.Button,{type:"text",onClick:()=>g(!1),children:"Cancel"})]})]})})}),e.jsx(n.Card,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Syllabus"}),e.jsx(Wt,{actions:["add","export","print","download","filter"],onAdd:T,onPrint:()=>window.print()})]}),children:e.jsx(n.Form,{form:a,layout:"vertical",onFinish:q,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:I=>I,children:e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Syllabus List"}),children:e.jsx(n.Table,{rowKey:I=>I.id,columns:P,dataSource:O,loading:R,pagination:{current:r.page,pageSize:r.perPage,total:D,showSizeChanger:!0,onChange:(I,N)=>l({page:I,perPage:N})}})})]})}function ex({token:t}){return e.jsx(Zg,{token:t})}const us=Re.timetable,rl=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},il=t=>{if(!t)return"";const a=te(t,"HH:mm:ss");return a.isValid()?a.format("h:mm a"):String(t)},tx=t=>{const a=String(t).trim().toLowerCase();if(!a)return"default";let s=0;for(let l=0;l<a.length;l+=1)s=(s*31+a.charCodeAt(l))%1e5;const r=["magenta","red","volcano","orange","gold","lime","green","cyan","blue","geekblue","purple"];return r[s%r.length]},ll=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],ax=t=>{const a=String(t||"");return a?a.charAt(0).toUpperCase()+a.slice(1):"-"};function nx({token:t}){const[a,s]=i.useState(null),[r,l]=i.useState(!1),[o,d]=i.useState(null),[c,g]=i.useState(""),[y,p]=i.useState(""),{data:m}=H(t?[Re.master.classes.dropdown,t]:null,([u,h])=>K(u,h)),A=i.useMemo(()=>rl(m),[m]),{data:C}=H(t&&a?[a,t]:null,([u,h])=>K(u,h)),b=i.useMemo(()=>rl(C),[C]),{data:f,isLoading:x}=H(t&&o?[o,t]:null,([u,h])=>K(u,h),{revalidateOnFocus:!1}),R=i.useMemo(()=>f?.days??f?.data?.days??f?.data?.data?.days??{},[f]),{dataSource:k,daySpanByFirstKey:O}=i.useMemo(()=>{const u=Object.entries(R||{}).slice().sort((E,F)=>ll.indexOf(String(E[0]).toLowerCase())-ll.indexOf(String(F[0]).toLowerCase())),h=new Map,S=[];for(const[E,F]of u){const q=(Array.isArray(F)?F:[]).slice().sort((U,j)=>Number(U?.order_no||0)-Number(j?.order_no||0)),T=q.length;for(let U=0;U<T;U+=1){const j=q[U],P=j?.id||`${E}-${j?.order_no}-${U}`;U===0&&h.set(P,T),S.push({key:P,_dayKey:E,...j})}}return{dataSource:S,daySpanByFirstKey:h}},[R]),D=i.useMemo(()=>[{title:"Day",dataIndex:"_dayKey",key:"_dayKey",width:140,render:(u,h)=>{const S=O.get(h.key);return S===void 0?{children:null,props:{rowSpan:0}}:{children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(ee.CalendarOutlined,{style:{color:"#5080f8"}}),e.jsx(n.Tag,{color:"geekblue",style:{margin:0,fontWeight:500},children:ax(u)})]}),props:{rowSpan:S}}}},{title:"Period",dataIndex:"order_no",key:"order_no",width:90,render:u=>e.jsx(n.Tag,{color:"#5080f8",style:{fontWeight:500},children:u})},{title:"Time",key:"time",width:180,render:(u,h)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(ee.ClockCircleOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsxs(n.Typography.Text,{children:[il(h?.time_from)," - ",il(h?.time_to)]})]})},{title:"Subject",key:"subject",render:(u,h)=>{if(String(h?.is_break)==="1")return e.jsx(n.Tag,{color:"orange",style:{fontWeight:500},children:"Tiffin Break"});const E=h?.subject_name||"-";return e.jsx(n.Tag,{color:tx(E),style:{fontWeight:500},children:E})}},{title:"Teacher",key:"teacher",render:(u,h)=>{const S=String(h?.is_break)==="1";return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(ee.UserOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsx(n.Typography.Text,{children:S?"-":h?.teacher_full_name||"-"})]})}},{title:"Room",key:"room_no",width:120,render:(u,h)=>{const S=String(h?.is_break)==="1";return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(ee.HomeOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsx(n.Typography.Text,{children:S?"-":h?.room_no||"-"})]})}}],[O]),_=u=>{u.preventDefault();const h=u.target.class_id?.value,S=u.target.section_id?.value;if(!h||!S)return;const E=A.find(U=>String(U.value)===String(h)),F=b.find(U=>String(U.value)===String(S));g(E?.label||""),p(F?.label||"");const T=`${us.byClassSection}/${h}/section/${S}`;d(T)};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Class / Section Wise Timetable"}),extra:e.jsx(Wt,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx("form",{onSubmit:_,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:A,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,required:!0,onChange:u=>{s(`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(u?.value??""))}`),l(h=>!h)}}),e.jsx(Q,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",allowSelectAll:!1,required:!0},`section_${r}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:c||y?`Timetable: ${c} ${y}`:"Timetable"}),children:e.jsx(n.Table,{size:"middle",bordered:!1,pagination:!1,dataSource:k,columns:D,rowKey:"key",loading:x,scroll:{x:"max-content"}})})]})}const sx=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},ol=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],rx=t=>{const a=String(t||"");return a?a.charAt(0).toUpperCase()+a.slice(1):"-"},dl=t=>{if(!t)return"";const a=te(t,"HH:mm:ss");return a.isValid()?a.format("h:mm a"):String(t)},ix=t=>{const a=String(t).trim().toLowerCase();if(!a)return"default";let s=0;for(let l=0;l<a.length;l+=1)s=(s*31+a.charCodeAt(l))%1e5;const r=["magenta","red","volcano","orange","gold","lime","green","cyan","blue","geekblue","purple"];return r[s%r.length]};function lx({token:t}){const[a,s]=i.useState(null),[r,l]=i.useState(null),{data:o}=H(t?[Re.assignByClass.teacherDropdown,t]:null,([C,b])=>K(C,b)),d=i.useMemo(()=>sx(o),[o]),{data:c,isLoading:g}=H(t&&r?[r,t]:null,([C,b])=>K(C,b),{revalidateOnFocus:!1}),{dataSource:y,daySpanByFirstKey:p}=i.useMemo(()=>{const b=(Array.isArray(c?.data)&&c.data||Array.isArray(c?.data?.data)&&c.data.data||[]).slice().sort((k,O)=>{const D=ol.indexOf(String(k?.day_name||"").toLowerCase()),_=ol.indexOf(String(O?.day_name||"").toLowerCase());if(D!==_)return D-_;const u=Number(k?.order_no||0),h=Number(O?.order_no||0);return u!==h?u-h:String(k?.time_from||"").localeCompare(String(O?.time_from||""))}),f=new Map,x=[];let R=0;for(;R<b.length;){const k=String(b[R]?.day_name||"").toLowerCase();let O=R;for(;O<b.length&&String(b[O]?.day_name||"").toLowerCase()===k;)O+=1;const D=O-R;for(let _=R;_<O;_+=1){const u=b[_],h=u?.id||`${k}-${u?.order_no}-${_}`;_===R&&f.set(h,D),x.push({key:h,_dayKey:k,...u})}R=O}return{dataSource:x,daySpanByFirstKey:f}},[c]),m=i.useMemo(()=>[{title:"Day",dataIndex:"_dayKey",key:"_dayKey",width:140,render:(C,b)=>{const f=p.get(b.key);return f===void 0?{children:null,props:{rowSpan:0}}:{children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(ee.CalendarOutlined,{style:{color:"#5080f8"}}),e.jsx(n.Tag,{color:"geekblue",style:{margin:0,fontWeight:500},children:rx(C)})]}),props:{rowSpan:f}}}},{title:"Period",dataIndex:"order_no",key:"order_no",width:90,render:C=>e.jsx(n.Tag,{color:"#5080f8",style:{fontWeight:500},children:C})},{title:"Time",key:"time",width:180,render:(C,b)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(ee.ClockCircleOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsxs(n.Typography.Text,{children:[dl(b?.time_from)," - ",dl(b?.time_to)]})]})},{title:"Subject",key:"subject",render:(C,b)=>{if(String(b?.is_break)==="1")return e.jsx(n.Tag,{color:"orange",style:{fontWeight:500},children:"Tiffin Break"});const x=b?.subject_name||"-";return e.jsx(n.Tag,{color:ix(x),style:{fontWeight:500},children:x})}},{title:"Class",key:"class",width:160,render:(C,b)=>e.jsxs(n.Tag,{color:"purple",style:{fontWeight:500},children:[b?.class_name||b?.class_id||"-"," ",b?.section_name?`(${b.section_name})`:""]})},{title:"Room",key:"room_no",width:120,render:(C,b)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(ee.HomeOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsx(n.Typography.Text,{children:b?.room_no||"-"})]})}],[p]),A=C=>{C.preventDefault();const b=C.target.teacher_id?.value;if(!b)return;s(b);const x=`${us.teacherTimetable}${encodeURIComponent(String(b))}`;l(x)};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Teacher Wise Timetable"}),extra:e.jsx(Wt,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx("form",{onSubmit:A,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(Q,{options:d,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Teacher",name:"teacher_id",allowSelectAll:!1,required:!0}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Timetable"}),children:e.jsx(n.Table,{size:"middle",bordered:!1,pagination:!1,dataSource:y,columns:m,rowKey:"key",loading:g,scroll:{x:"max-content"}})})]})}function cl(t){if(!t)return null;const a=String(t).trim().replaceAll(".",":");if(!a)return null;const s=a.toLowerCase(),r=s.includes("am")||s.includes("pm");let l=0,o=0,d=0;if(r){const g=s.replace(/\s+/g," ").match(/^(\d{1,2})\s*:\s*(\d{1,2})(?:\s*:\s*(\d{1,2}))?\s*(am|pm)$/i);if(!g)return null;l=Number.parseInt(g[1],10),o=Number.parseInt(g[2],10),d=Number.parseInt(g[3]||"0",10);const y=g[4].toLowerCase();y==="pm"&&l<12&&(l+=12),y==="am"&&l===12&&(l=0)}else{const c=a.split(":").map(g=>g.trim());if(c.length<2)return null;l=Number.parseInt(c[0],10),o=Number.parseInt(c[1],10),d=Number.parseInt(c[2]||"0",10)}return![l,o,d].every(c=>Number.isFinite(c))||l<0||l>23||o<0||o>59||d<0||d>59?null:te().hour(l).minute(o).second(d).millisecond(0)}function Na(t,a){const s=Number.parseInt(a,10);return!Number.isFinite(s)||s<=0||!t||!t.isValid?.()?null:t.add(s,"minute")}const Kn=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Ya={0:"sunday",1:"monday",2:"tuesday",3:"wednesday",4:"thursday",5:"friday",6:"saturday"},ox=t=>{const a=Ya[String(t)];return a?a.charAt(0).toUpperCase()+a.slice(1):String(t)},dx=({token:t,classId:a,sectionId:s,subjectId:r,value:l,onChange:o,disabled:d})=>{const c=t&&a&&s&&r?`${us.teachersBySubject}?subject_id=${encodeURIComponent(String(r))}&class_id=${encodeURIComponent(String(a))}&section_id=${encodeURIComponent(String(s))}`:null,{data:g,isLoading:y}=H(c?[c,t]:null,([m,A])=>K(m,A),{revalidateOnFocus:!1}),p=i.useMemo(()=>Kn(g?.data??g).map(A=>({value:A?.value??A?.id,label:A?.label??A?.name??A?.teacher_name??""})),[g]);return e.jsx(n.Select,{placeholder:d?"-":"Select Teacher",loading:y,disabled:d,style:{width:"100%"},options:p,value:l?String(l):void 0,onChange:m=>o?.(m),showSearch:!0,optionFilterProp:"label"})};function cx({token:t}){const[a]=n.Form.useForm(),[s,r]=i.useState({classId:null,sectionId:null,dayKey:"1",daysEnabled:{0:!1,1:!0,2:!0,3:!0,4:!0,5:!0,6:!0}}),[l,o]=i.useState({startTime:null,endTime:null,duration:40,interval:0,roomNo:"",tiffinEnabled:!1,tiffinAfterPeriod:3,tiffinDuration:20}),[d,c]=i.useState({0:[],1:[],2:[],3:[],4:[],5:[],6:[]}),[g,y]=i.useState(!1),p=i.useMemo(()=>t?Re.master.classes.dropdown:null,[t]),{data:m}=H(p?[p,t]:null,([T,U])=>K(T,U)),A=i.useMemo(()=>Kn(m).map(T=>({value:T?.value??T?.id,label:T?.label??T?.title??""})),[m]),C=i.useMemo(()=>!t||!s.classId?null:`${Re.master.sections.byClass}?class_id=${encodeURIComponent(String(s.classId))}`,[s.classId,t]),{data:b}=H(C?[C,t]:null,([T,U])=>K(T,U)),f=i.useMemo(()=>Kn(b).map(T=>({value:T?.value??T?.id,label:T?.label??T?.title??""})),[b]),x=i.useMemo(()=>!t||!s.classId?null:`${Re.master.subjects.byClassLabelValue}?class_id=${encodeURIComponent(String(s.classId))}`,[s.classId,t]),{data:R}=H(x?[x,t]:null,([T,U])=>K(T,U)),k=i.useMemo(()=>Kn(R).map(T=>({value:T?.value??T?.id,label:T?.label??T?.title??""})),[R]),O=i.useMemo(()=>Array.isArray(d?.[s.dayKey])?d[s.dayKey]:[],[s.dayKey,d]),D=i.useCallback((T,U,j)=>{c(P=>{const I={...P},N=Array.isArray(I[T])?I[T].slice():[];return N[U]={...N[U]??{},...j},I[T]=N,I})},[]),_=i.useCallback((T,U)=>{c(j=>{const P={...j},I=Array.isArray(P[T])?P[T].slice():[];return I.splice(U,1),P[T]=I.map((N,V)=>({...N,order_no:V+1})),P})},[]),u=i.useCallback(T=>{c(U=>{const j={...U},P=Array.isArray(j[T])?j[T].slice():[];let I=null,N=null;const V=P[P.length-1];if(V?.time_to){const W=cl(V.time_to),B=Number.parseInt(l.interval,10)||0,$=Number.parseInt(l.duration,10)||0,M=Na(W,B),L=$>0?Na(M,$):null;I=M?.isValid?.()?M.format("HH:mm:ss"):null,N=L?.isValid?.()?L.format("HH:mm:ss"):null}return P.push({order_no:P.length+1,subject_id:"",teacher_id:"",room_no:l.roomNo??"",time_from:I,time_to:N,is_break:!1}),j[T]=P,j})},[l.duration,l.interval,l.roomNo]),h=i.useCallback(()=>{const T=l.startTime,U=l.endTime,j=Number.parseInt(l.duration,10),P=Number.parseInt(l.interval,10);if(!T||!T.isValid?.()){w.error("Start time is required",{duration:1500});return}if(!U||!U.isValid?.()){w.error("End time is required",{duration:1500});return}if(!U.isAfter(T)){w.error("End time must be after start time",{duration:1500});return}if(!Number.isFinite(j)||j<=0){w.error("Duration must be a positive number",{duration:1500});return}if(!Number.isFinite(P)||P<0){w.error("Interval must be 0 or more",{duration:1500});return}const I=()=>{const N=[];let V=T;for(let W=0;W<50;W+=1){const B=Na(V,j);if(!B||!B.isValid?.()||B.isAfter(U))break;N.push({order_no:N.length+1,subject_id:"",teacher_id:"",room_no:l.roomNo??"",time_from:V.format("HH:mm:ss"),time_to:B.format("HH:mm:ss"),is_break:!1});const $=Na(B,P);if(!$||!$.isValid?.()||$.isAfter(U)||$.isSame(U))break;V=$}if(l.tiffinEnabled){const W=Math.max(0,Number.parseInt(l.tiffinAfterPeriod,10)||0),B=Math.max(0,Number.parseInt(l.tiffinDuration,10)||0),$=Math.min(W,N.length);if($>0&&B>0){const M=N[$-1],L=M?.time_to?cl(M.time_to):null,Y=L?Na(L,B):null;L?.isValid?.()&&Y?.isValid?.()&&!Y.isAfter(U)&&N.splice($,0,{order_no:$+1,subject_id:"",teacher_id:"",room_no:l.roomNo??"",time_from:L.format("HH:mm:ss"),time_to:Y.format("HH:mm:ss"),is_break:!0})}}return N.map((W,B)=>({...W,order_no:B+1}))};c(N=>{const V={...N};return Object.keys(Ya).forEach(W=>{s.daysEnabled?.[W]&&(V[W]=I())}),V}),w.success("Generated schedule",{duration:1e3})},[l,s.daysEnabled]),S=i.useCallback(()=>{const T=localStorage.getItem("genrall_settings"),j=(T?JSON.parse(T):{})?.session_id??"1",P=s.classId,I=s.sectionId,N=Object.keys(Ya).map(V=>{const W=(Array.isArray(d?.[V])?d[V]:[]).map((B,$)=>({order_no:$+1,subject_id:B?.is_break?0:B?.subject_id??null,teacher_id:B?.is_break?0:B?.teacher_id??null,room_no:B?.room_no??"",time_from:B?.time_from??null,time_to:B?.time_to??null,is_break:B?.is_break?1:0}));return{day:Ya[V],class_id:P,section_id:I,session_id:j,args:W}});return{class_id:P,section_id:I,session_id:j,days:N}},[s.classId,s.sectionId,d]),E=i.useCallback(async()=>{if(!s.classId||!s.sectionId){w.error("Please select Class and Section",{duration:1500});return}const T=S(),U=Array.isArray(T?.days)?T.days:[];if(!U.some(I=>Array.isArray(I?.args)&&I.args.length>0)){w.error("No timetable rows to submit",{duration:1500});return}const P=I=>{const N=I?.is_break;return N===1||N==="1"||N===!0?!0:String(N??"").toLowerCase()==="true"};U.some(I=>(Array.isArray(I?.args)?I.args:[]).some(N=>String(N?.time_from??"").trim()&&String(N?.time_to??"").trim()?P(N)?!1:!String(N?.subject_id??"").trim()||!String(N?.teacher_id??"").trim():!0)),y(!0);try{const I=us.save,N=I==="api/timetable/save"?"timetable/save":null,V=async $=>{const M=await ss($,T,t);if(M&&typeof M=="object")return M;throw new Error("No response from server")};let W;try{W=await V(I)}catch{W=await V(N)}const B=String(W?.msg??"");if(String(W?.Status)==="Success"){if(Array.isArray(W?.data)&&W.data.length===0&&B){w.error(B,{duration:3e3});return}w.success(B||"Weekly Time Table added successfully!",{duration:1200});return}w.error(B||"Failed to add time table",{duration:3e3})}catch(I){w.error(I?.response?.data?.msg??I?.message??"Failed to add time table",{duration:3e3})}finally{y(!1)}},[S,s.classId,s.sectionId,t]),F=i.useMemo(()=>[{title:"Period",dataIndex:"order_no",key:"order_no",width:80},{title:"Time From",dataIndex:"time_from",key:"time_from",width:120,render:T=>T?te(T,"HH:mm:ss").format("h:mm a"):"-"},{title:"Time To",dataIndex:"time_to",key:"time_to",width:120,render:T=>T?te(T,"HH:mm:ss").format("h:mm a"):"-"},{title:"Break",dataIndex:"is_break",key:"is_break",width:90,render:(T,U,j)=>e.jsx(n.Switch,{checked:!!U?.is_break,onChange:P=>{D(s.dayKey,j,{is_break:P,subject_id:P?"":U?.subject_id??"",teacher_id:P?"":U?.teacher_id??""})}})},{title:"Subject",dataIndex:"subject_id",key:"subject_id",width:220,render:(T,U,j)=>e.jsx(n.Select,{placeholder:U?.is_break?"-":"Select Subject",disabled:!!U?.is_break,style:{width:"100%"},options:k,value:U?.subject_id?String(U.subject_id):void 0,onChange:P=>D(s.dayKey,j,{subject_id:P,teacher_id:""}),showSearch:!0,optionFilterProp:"label"})},{title:"Teacher",dataIndex:"teacher_id",key:"teacher_id",width:240,render:(T,U,j)=>e.jsx(dx,{token:t,classId:s.classId,sectionId:s.sectionId,subjectId:U?.subject_id,disabled:!!U?.is_break||!U?.subject_id,value:U?.teacher_id,onChange:P=>D(s.dayKey,j,{teacher_id:P})})},{title:"Room",dataIndex:"room_no",key:"room_no",width:140,render:(T,U,j)=>e.jsx(n.Input,{value:U?.room_no??"",onChange:P=>D(s.dayKey,j,{room_no:P.target.value})})},{title:"Action",key:"action",width:90,render:(T,U,j)=>e.jsx(n.Popconfirm,{title:"Delete this row?",onConfirm:()=>_(s.dayKey,j),children:e.jsx(n.Button,{danger:!0,type:"text",children:"Delete"})})}],[s.classId,s.dayKey,s.sectionId,_,k,t,D]),q=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Create Time Table"}),children:e.jsx(n.Form,{form:a,layout:"vertical",initialValues:{duration:l.duration,interval:l.interval,roomNo:l.roomNo,tiffinEnabled:l.tiffinEnabled,tiffinAfterPeriod:l.tiffinAfterPeriod,tiffinDuration:l.tiffinDuration},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(n.Form.Item,{label:"Class",required:!0,children:e.jsx(n.Select,{placeholder:"Select Class",options:A,value:s.classId?String(s.classId):void 0,onChange:T=>{r(U=>({...U,classId:T,sectionId:null})),c({0:[],1:[],2:[],3:[],4:[],5:[],6:[]})},showSearch:!0,optionFilterProp:"label"})}),e.jsx(n.Form.Item,{label:"Section",required:!0,children:e.jsx(n.Select,{placeholder:"Select Section",options:f,value:s.sectionId?String(s.sectionId):void 0,onChange:T=>r(U=>({...U,sectionId:T})),disabled:!s.classId,showSearch:!0,optionFilterProp:"label"})}),e.jsx(n.Form.Item,{label:"Start Time",required:!0,children:e.jsx(n.TimePicker,{value:l.startTime,onChange:T=>o(U=>({...U,startTime:T})),use12Hours:!0,format:"h:mm a",style:{width:"100%"}})}),e.jsx(n.Form.Item,{label:"End Time",required:!0,children:e.jsx(n.TimePicker,{value:l.endTime,onChange:T=>o(U=>({...U,endTime:T})),use12Hours:!0,format:"h:mm a",style:{width:"100%"}})}),e.jsx(n.Form.Item,{label:"Duration (min)",required:!0,children:e.jsx(n.InputNumber,{min:1,value:l.duration,onChange:T=>o(U=>({...U,duration:T})),style:{width:"100%"}})}),e.jsx(n.Form.Item,{label:"Interval (min)",children:e.jsx(n.InputNumber,{min:0,value:l.interval,onChange:T=>o(U=>({...U,interval:T})),style:{width:"100%"}})}),e.jsx(n.Form.Item,{label:"Room No",children:e.jsx(n.Input,{value:l.roomNo,onChange:T=>o(U=>({...U,roomNo:T.target.value}))})}),e.jsx(n.Form.Item,{label:"Tiffin Break",children:e.jsxs(n.Space,{children:[e.jsx(n.Switch,{checked:l.tiffinEnabled,onChange:T=>o(U=>({...U,tiffinEnabled:T}))}),e.jsx(n.Typography.Text,{type:"secondary",children:l.tiffinEnabled?"Enabled":"Disabled"})]})}),e.jsx(n.Form.Item,{label:"After Period",tooltip:"Insert break row after this period",style:{marginBottom:0},children:e.jsx(n.InputNumber,{min:1,value:l.tiffinAfterPeriod,onChange:T=>o(U=>({...U,tiffinAfterPeriod:T})),style:{width:"100%"},disabled:!l.tiffinEnabled})}),e.jsx(n.Form.Item,{label:"Break Duration (min)",style:{marginBottom:0},children:e.jsx(n.InputNumber,{min:1,value:l.tiffinDuration,onChange:T=>o(U=>({...U,tiffinDuration:T})),style:{width:"100%"},disabled:!l.tiffinEnabled})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(n.Button,{onClick:h,children:"Generate"}),e.jsx(n.Button,{type:"primary",loading:g,onClick:E,children:"Save"})]})]})})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Edit Week"}),extra:e.jsxs(n.Space,{children:[e.jsx(n.Typography.Text,{type:"secondary",children:"Day"}),e.jsx(n.Select,{style:{width:160},value:s.dayKey,onChange:T=>r(U=>({...U,dayKey:T})),options:Object.keys(Ya).map(T=>({value:String(T),label:ox(T)}))}),e.jsx(n.Button,{onClick:()=>u(s.dayKey),children:"Add Row"})]}),children:e.jsx(n.Table,{rowKey:(T,U)=>`${s.dayKey}_${U}`,columns:F,dataSource:O,pagination:!1,size:"middle",scroll:{x:"max-content"}})})]});return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(n.Typography.Title,{level:4,style:{margin:0},children:"Time Table"}),e.jsx(n.Tabs,{type:"card",items:[{key:"create",label:"Create",children:q},{key:"routine",label:"Routine",children:e.jsx(nx,{token:t})},{key:"teacher",label:"Teacher Wise",children:e.jsx(lx,{token:t})}]})]})}function ux({token:t}){return e.jsx(cx,{token:t})}function px(){return null}const ta=t=>t??localStorage.getItem("authToken")??"",mx=(t,a)=>{const s=String(t??""),r=String(a);return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},jt={organization:{get:"api/branchapi/generalSettings/getorganizationsettingsData",save:"api/branchapi/generalSettings/addorganizationSetting",currencyDropdown:"api/branchapi/generalSettings/currencyDropdown",countryCodeDropdown:"api/branchapi/generalSettings/contrycodeDropdown",timezoneDropdown:"api/branchapi/generalSettings/timezoneDropdown",boardsDropdown:"api/branchapi/generalSettings/getAffliatedBoardsDropDown",uploadLogo:"api/superAdmin/upload_logo",uploadSignature:"api/branchapi/generalSettings/upload_signature",uploadFirebaseJson:"api/branchapi/generalSettings/firebaseJsonUpload"},academicYear:{table:"api/branchapi/generalSettings/sessiontable",add:"api/branchapi/generalSettings/addsession",setActive:"api/branchapi/generalSettings/setsession",remove:"api/branchapi/generalSettings/deletesession"},feeReceiptSetting:{get:"api/branchapi/generalSettings/feesReceiptSettingData",save:"api/branchapi/generalSettings/feesReceiptSetting"},marksheetSetting:{templateTypes:"api/branchapi/GeneralSettings/getmarkssheetTemplate",classDropdown:"api/exam/exam/getClassforAssignMarksSheetType",assignedTable:"api/branchapi/GeneralSettings/getassign_templete",assign:"api/branchapi/GeneralSettings/assign_templete",remove:"api/branchapi/GeneralSettings/deleteTemplate"},legalPages:{get:"api/branchapi/generalSettings/getlegalpage",termsSave:"api/branchapi/generalSettings/terms",privacySave:"api/branchapi/generalSettings/privacy",aboutSave:"api/branchapi/generalSettings/about_us"},feesInfo:{get:"api/branchapi/generalSettings/getFeesInfo",save:"api/branchapi/generalSettings/addFeesInfo",statesDropdown:"api/superAdmin/states"},payrollSettings:{table:"api/branchapi/GeneralSettings/getsetting_allowances_dedection",add:"api/branchapi/GeneralSettings/addsetting_allowances_dedection",edit:"api/branchapi/GeneralSettings/updatesetting_allowances_dedection",remove:"api/branchapi/GeneralSettings/deletesetting_allowances_dedection",byId:"api/branchapi/GeneralSettings/getsetting_allowances_dedectionById"},paymentGateway:{get:"api/payment_gateway/PaymentProcess/getPaymentGatewayList",save:"api/payment_gateway/PaymentProcess"}},hx=t=>mx(bt(),t),fx=async({baseUrl:t,page:a=1,perPage:s=10},r)=>{const l=t.includes("?")?"&":"?",o=`${t}${l}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(s))}`;return K(o,ta(r))},yx=async(t,a)=>K(t,ta(a)),dn=async(t,a,s)=>Ne(t,a,ta(s)),Co=async(t,a,s)=>We(t,a,ta(s)),ur=async(t,a,s)=>He(t,a,ta(s)),gx=async(t,a,s)=>ss(t,{arg:a},ta(s)),Ao=async(t,a,s)=>Ha(t,{arg:a},ta(s)),Do=({baseUrl:t,page:a=1,perPage:s=10,token:r})=>H(r&&t?[t,a,s,r]:null,([o,d,c,g])=>fx({baseUrl:o,page:d,perPage:c},g)),St=({url:t,token:a})=>H(a&&t?[t,a]:null,([r,l])=>yx(r,l)),xx={border:"1px solid #d9d9d9",borderRadius:8,padding:12,minHeight:320,background:"#fff"};function bx({value:t,onChange:a,placeholder:s}){const[r,l]=i.useState(t??""),o=i.useMemo(()=>typeof t=="string"?t:r,[r,t]);return e.jsx("div",{style:xx,children:e.jsx(Xl,{html:o||"",onChange:d=>{const c=d?.target?.value??"";l(c),a?.(c)},style:{outline:"none",minHeight:280},placeholder:s})})}function Ht({title:t,actions:a,children:s,headerExtra:r}){return e.jsx("div",{style:{display:"grid",gap:20},children:s})}const jx=t=>t?Array.isArray(t?.data)?t.data[0]??null:Array.isArray(t?.data?.data)?t.data.data[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null:null;function pr({token:t,title:a,fetchUrl:s,saveUrl:r,fieldName:l,initialHtmlFieldName:o}){const d=i.useRef(null),c=St({url:s,token:t}),y=i.useMemo(()=>jx(c.data),[c.data])?.[o??l]??"",[p,m]=i.useState("");i.useEffect(()=>{m(typeof y=="string"?y:"")},[y]);const A=()=>m(typeof y=="string"?y:""),C=()=>{const x=new Blob([String(p??"")],{type:"text/html"}),R=URL.createObjectURL(x),k=document.createElement("a");k.href=R,k.download=`${String(a??"legal").toLowerCase().replaceAll(" ","-")}.html`,k.click(),URL.revokeObjectURL(R)},b=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(ee.SaveOutlined,{}),onClick:()=>d.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(ee.SyncOutlined,{}),onClick:()=>d.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:A},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:C,disabled:!p}],[p,y]),f=async x=>{x.preventDefault();try{(await Ao(r,{[l]:p??""},t))?.Status==="Success"?w.success("Updated successfully.",{duration:1e3}):w.success("Updated.",{duration:1e3}),c.mutate?.()}catch(R){w.error(R?.response?.data?.msg??R?.message??"Failed to update.",{duration:1500})}};return c.isLoading&&!c.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:a,actions:b,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Editor"}),children:e.jsxs("form",{ref:d,onSubmit:f,children:[e.jsx(bx,{value:p,onChange:m,placeholder:`Enter ${a} content...`}),e.jsx(n.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Update"})})]})})})]})}const Sx=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",vx=t=>/^https?:\/\//i.test(String(t??""))||String(t??"").startsWith("data:");function Va({token:t,value:a,onChange:s,action:r,accept:l,maxCount:o=1,previewUrl:d,data:c}){const g=i.useMemo(()=>{if(t)return{Authorization:t}},[t]),y=i.useMemo(()=>a?d||(vx(a)?a:""):"",[d,a]);return e.jsxs("div",{style:{display:"grid",gap:8},children:[y?e.jsx("img",{src:y,alt:"upload-preview",style:{width:88,height:88,objectFit:"cover",borderRadius:8,border:"1px solid #d9d9d9",background:"#fafafa"}}):null,e.jsx(n.Upload,{maxCount:o,action:r,data:c,accept:l,headers:g,onChange:p=>{if(p?.file?.status==="removed"&&s?.(""),p?.file?.status==="done"){const m=Sx(p?.file?.response);m&&s?.(m)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})})]})}const aa=jt.organization,wx=()=>hx(aa.uploadFirebaseJson),_x=t=>t?Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t?.data?.data?.data)?t.data.data.data:[]:[],Cx=({token:t})=>St({url:aa.get,token:t}),Ax=({token:t})=>St({url:aa.currencyDropdown,token:t}),Dx=({token:t})=>St({url:aa.countryCodeDropdown,token:t}),Tx=({token:t})=>St({url:aa.timezoneDropdown,token:t}),Rx=({token:t})=>St({url:aa.boardsDropdown,token:t}),Pn=t=>_x(t?.data),Ix=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},To=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},kx=(t,a)=>{const s=`${t||""}`.trim();if(!s)return"";if(/^https?:\/\//i.test(s))return s;const r=To(a),l=s.startsWith("/")?s.slice(1):s;return Ix(Ke(),`uploads/school_${r}/schoolFile/${l}`)},ul={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},Px=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"].map(t=>({value:t,label:t})),pl=[{value:"Yes",label:"Yes"},{value:"No",label:"No"}],ml=[{value:"yes",label:"Yes"},{value:"no",label:"No"}],Ox=t=>{const a=t?.data;return Array.isArray(a?.data)?a.data[0]??null:Array.isArray(a)?a[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null},Mx=t=>t?.data?.inout_setting?.[0]??t?.inout_setting?.[0]??null,Ex=t=>t?.data?.notification_settings?.[0]??t?.notification_settings?.[0]??null;function $x({token:t}){const a=i.useRef(null),s=Cx({token:t}),r=Ax({token:t}),l=Dx({token:t}),o=Tx({token:t}),d=Rx({token:t}),c=i.useMemo(()=>Ox(s.data),[s.data]),g=i.useMemo(()=>Mx(s.data),[s.data]),y=i.useMemo(()=>Ex(s.data),[s.data]),p=i.useMemo(()=>Pn(r),[r.data]),m=i.useMemo(()=>Pn(l),[l.data]),A=i.useMemo(()=>Pn(o),[o.data]),C=i.useMemo(()=>Pn(d),[d.data]),[b,f]=i.useState(null),[x,R]=i.useState(null),[k,O]=i.useState(null),[D,_]=i.useState(null),[u,h]=i.useState([]),[S,E]=i.useState("No"),[F,q]=i.useState("yes"),[T,U]=i.useState("no"),[j,P]=i.useState("Yes"),[I,N]=i.useState(""),[V,W]=i.useState(""),[B,$]=i.useState(!1),[M,L]=i.useState(""),[Y,se]=i.useState(null),[X,G]=i.useState(null),[J,re]=i.useState(null),[de,Ce]=i.useState(null),le=()=>{const be=(()=>{try{const ve=c?.weekly_off;if(!ve)return[];const Oe=Array.isArray(ve)?ve:JSON.parse(ve);return Array.isArray(Oe)?Oe.filter(Boolean).map(Ye=>({value:Ye,label:Ye})):[]}catch{return[]}})();h(be),f(p.find(ve=>ve?.value===c?.currency)??null),R(m.find(ve=>ve?.value===c?.country_code)??null),O(A.find(ve=>ve?.value===c?.time_zone)??null),_(C.find(ve=>ve?.value===c?.affliated_board_id)??null),N(c?.logo??""),W(c?.json_file??""),E(c?.attendance_salary_calculation??"No"),q(c?.salary_period??"yes"),U(c?.multiple_shift??"no"),P(c?.readmission_charges??"Yes"),se(g?.in_from?te(g.in_from,"h:mm A"):null),G(g?.in_to?te(g.in_to,"h:mm A"):null),re(g?.out_from?te(g.out_from,"h:mm A"):null),Ce(g?.out_to?te(g.out_to,"h:mm A"):null)};i.useEffect(()=>{c&&le()},[c,p,m,A,C]);const oe=()=>{a.current?.reset?.(),le()},ie=()=>{const be=new FormData(a.current??void 0),ve=Object.fromEntries(be.entries());ve.weekly_off_day=u.map(Le=>Le?.value).filter(Boolean);const Oe=new Blob([JSON.stringify(ve,null,2)],{type:"application/json"}),Ye=URL.createObjectURL(Oe),Be=document.createElement("a");Be.href=Ye,Be.download="organization-setting.json",Be.click(),URL.revokeObjectURL(Ye)},Se=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(ee.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(ee.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:oe},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:ie,disabled:!c}],[c,u]),Ee=async be=>{be.preventDefault();try{const ve=new FormData(be.target);ve.set("currency",b?.value??""),ve.set("code",x?.value??""),ve.set("time_zone",k?.value??""),ve.set("affliated_board_id",D?.value??""),ve.set("board_name",D?.label??""),ve.set("attendance_salary_calculation",S),ve.set("salary_period",F),ve.set("multiple_shift",T),ve.set("readmission_charges",j),u.forEach(Be=>{Be?.value&&ve.append("weekly_off_day[]",Be.value)}),ve.set("logo",I??""),ve.set("json_file",V??""),ve.set("server_key",y?.server_key??""),ve.set("in_time_start",Y?te(Y).format("h:mm A"):""),ve.set("in_time_end",X?te(X).format("h:mm A"):""),ve.set("out_time_start",J?te(J).format("h:mm A"):""),ve.set("out_time_end",de?te(de).format("h:mm A"):""),await dn(aa.save,ve,t);const Ye={...JSON.parse(localStorage.getItem("genrall_settings")??"null")??{},logo:I||c?.logo||"",affliated_board_id:D?.value??c?.affliated_board_id??"",board_name:D?.label??c?.board_name??"",multiple_shift:T??c?.multiple_shift??""};localStorage.setItem("genrall_settings",JSON.stringify(Ye)),w.success("Organization settings saved.",{duration:1e3}),s.mutate?.()}catch(ve){w.error(ve?.response?.data?.msg??ve?.message??"Failed to save settings.",{duration:1500})}},Xe=S==="Yes";return s.isLoading&&!s.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:"Organization",actions:Se,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Organization Details"}),children:e.jsxs("form",{ref:a,onSubmit:Ee,children:[e.jsxs("div",{style:ul,children:[e.jsx(z,{type:"text",name:"name",label:"Organization Name*",required:!0,defaultValue:c?.name??""}),e.jsxs("div",{children:[e.jsx(Q,{label:"Currency*",options:p,value:b,onChange:be=>f(be)}),e.jsx("input",{type:"hidden",name:"currency",value:b?.value??""})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Default Country Code*",options:m,value:x,onChange:be=>R(be)}),e.jsx("input",{type:"hidden",name:"code",value:x?.value??""})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Time Zone*",options:A,value:k,onChange:be=>O(be)}),e.jsx("input",{type:"hidden",name:"time_zone",value:k?.value??""})]}),e.jsx(z,{type:"text",name:"admission_prefix",label:"Receipt Prefix*",required:!0,defaultValue:c?.admission_prefix??""}),e.jsx(z,{type:"number",name:"admission_start_number",label:"Admission Start Number*",required:!0,defaultValue:c?.admission_no_prefix??c?.admission_start_number??""}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Re-admission Charges"}),e.jsx(n.Radio.Group,{options:pl,optionType:"button",buttonStyle:"solid",value:j,onChange:be=>P(be.target.value)}),e.jsx("input",{type:"hidden",name:"readmission_charges",value:j})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Weekly off Day",options:Px,isMulti:!0,value:u,onChange:be=>h(be??[])}),u.map(be=>e.jsx("input",{type:"hidden",name:"weekly_off_day[]",value:be.value},be.value))]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"In Time Start*"}),e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm A",value:Y,onChange:be=>se(be),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time_start",value:Y?te(Y).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"In Time End*"}),e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm A",value:X,onChange:be=>G(be),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time_end",value:X?te(X).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Out Time Start*"}),e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm A",value:J,onChange:be=>re(be),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"out_time_start",value:J?te(J).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Out Time End*"}),e.jsx(n.TimePicker,{use12Hours:!0,format:"h:mm A",value:de,onChange:be=>Ce(be),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"out_time_end",value:de?te(de).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Salary Period"}),e.jsx(n.Radio.Group,{options:ml,optionType:"button",buttonStyle:"solid",value:F,onChange:be=>q(be.target.value)}),e.jsx("input",{type:"hidden",name:"salary_period",value:F})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Salary Deduction"}),e.jsx(n.Radio.Group,{options:pl,optionType:"button",buttonStyle:"solid",value:S,onChange:be=>E(be.target.value)}),e.jsx("input",{type:"hidden",name:"attendance_salary_calculation",value:S})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Multiple Shift"}),e.jsx(n.Radio.Group,{options:ml,optionType:"button",buttonStyle:"solid",value:T,onChange:be=>U(be.target.value)}),e.jsx("input",{type:"hidden",name:"multiple_shift",value:T})]}),Xe?e.jsx(z,{type:"number",name:"late_absent_day",label:"No of Late",defaultValue:c?.late_absent_day??""}):e.jsx("input",{type:"hidden",name:"late_absent_day",value:""})]}),e.jsx(n.Divider,{}),e.jsxs("div",{style:ul,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Logo Upload"}),e.jsx(n.Upload,{action:`${Ke()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${To(t)}/schoolFile`},headers:{Authorization:t},maxCount:1,accept:"image/*",onChange:be=>{if(be.file.status==="removed"&&N(""),be.file.status==="done"){const ve=be.file.response?.data??be.file.response?.file??"";N(String(ve??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:I?"Change":"Upload"})}),I&&e.jsxs("div",{style:{marginTop:8,display:"flex",alignItems:"center",gap:8},children:[e.jsx("a",{style:{fontSize:12,color:"#1677ff",textDecoration:"underline",cursor:"pointer"},onClick:()=>{L(kx(I,t)),$(!0)},children:"View existing logo"}),e.jsx("a",{style:{fontSize:12,color:"#1677ff",textDecoration:"underline",cursor:"pointer"},onClick:()=>N(""),children:"Remove"})]}),e.jsx("input",{type:"hidden",name:"logo",value:I??""})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Select Affiliated Board",options:C,value:D,onChange:be=>_(be)}),e.jsx("input",{type:"hidden",name:"affliated_board_id",value:D?.value??""}),e.jsx("input",{type:"hidden",name:"board_name",value:D?.label??""})]}),e.jsx(lt,{label:"Address",name:"address",rows:3,defaultValue:c?.location_name??c?.address??""}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Json for Notification"}),e.jsx(Va,{token:t,action:wx(),value:V,accept:".json",onChange:be=>W(be)}),e.jsx("input",{type:"hidden",name:"json_file",value:V??""})]})]}),e.jsx(n.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(n.Modal,{open:B,onCancel:()=>{$(!1),L("")},footer:null,width:500,closable:!0,children:M?e.jsx("img",{src:M,alt:"Organization Logo",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(pe,{children:"No logo found"})})]})}function Fx({token:t}){return e.jsx($x,{token:t})}const Gn=jt.academicYear,Ux=({token:t,page:a=1,perPage:s=10})=>Do({baseUrl:Gn.table,token:t,page:a,perPage:s}),Nx={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},Bx=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t?.data?.data?.data)?t.data.data.data:[],Lx=(t,a=0)=>t?.pagination?.total_rows??t?.data?.pagination?.total_rows??t?.data?.data?.pagination?.total_rows??a;function qx({token:t}){const[a,s]=i.useState({page:1,rowsPerPage:10}),[r,l]=i.useState(!1),[o,d]=i.useState(()=>{const u=te(),h=te().add(1,"year");return`${u.format("YYYY")}-${h.format("YYYY")}`}),[c,g]=i.useState(te()),[y,p]=i.useState(te().add(1,"year")),{isLoading:m,data:A,mutate:C}=Ux({token:t,page:a.page,perPage:a.rowsPerPage}),b=i.useMemo(()=>Bx(A),[A]),f=i.useMemo(()=>Lx(A,b.length),[A,b.length]),x=async()=>{if(!o){w.error("Session name is required.");return}if(y&&c&&te(y).isBefore(c)){w.error("End date must be after start date.");return}try{const u=new FormData;u.set("name",o),u.set("start_date",c?te(c).format("YYYY-MM-DD"):""),u.set("end_date",y?te(y).format("YYYY-MM-DD"):""),await dn(Gn.add,u,t),w.success("Academic year added.",{duration:1e3}),l(!1),C?.()}catch(u){w.error(u?.response?.data?.msg??u?.message??"Failed to add academic year.",{duration:1500})}},R=async u=>{try{const h=new FormData;h.set("session",String(u)),await Co(Gn.setActive,h,t);const S=JSON.parse(localStorage.getItem("genrall_settings")??"null")??{};localStorage.setItem("genrall_settings",JSON.stringify({...S,session_id:String(u)})),w.success("Academic year activated.",{duration:1e3}),C?.()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to activate academic year.",{duration:1500})}},k=async u=>{try{await C(ur(Gn.remove,u,t)),w.success("Academic year deleted.",{duration:1e3})}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to delete academic year.",{duration:1500})}},O=()=>{const u=new Blob([JSON.stringify(b,null,2)],{type:"application/json"}),h=URL.createObjectURL(u),S=document.createElement("a");S.href=h,S.download="academic-years.json",S.click(),URL.revokeObjectURL(h)},D=i.useMemo(()=>[{key:"add",label:"Add",icon:e.jsx(ee.PlusOutlined,{}),onClick:()=>l(!0)},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:()=>C?.()},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:O,disabled:b.length===0}],[b.length,C]),_=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name"},{title:"Start Date",dataIndex:"start_date",key:"start_date"},{title:"End Date",dataIndex:"end_date",key:"end_date"},{title:"Active",key:"active",render:(u,h)=>{const S=h.status==="Active";return e.jsxs("span",{children:[e.jsx(n.Popconfirm,{title:S?"Deactivate Academic Year?":"Activate Academic Year?",description:S?"Deactivate is not allowed. Activate another session to switch.":"This will set this year as the current academic session.",onConfirm:()=>{S?w.error("Deactivate is not allowed. Activate another session to switch."):R(h.id)},okText:"Yes",cancelText:"No",children:e.jsx(n.Switch,{checked:S})}),S&&e.jsx(n.Tag,{color:"green",style:{marginLeft:8},children:"Active"})]})}},{title:"Action",key:"action",render:(u,h)=>e.jsx(n.Popconfirm,{title:"Delete academic year?",description:"This will remove the session.",onConfirm:()=>k(h.id),okText:"Yes",cancelText:"No",children:e.jsx(n.Button,{type:"link",danger:!0,children:"Delete"})})}],[t,b.length]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:"Academic Year",actions:D,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Sessions"}),children:e.jsx(n.Table,{rowKey:"id",dataSource:b,columns:_,loading:m,pagination:{current:a.page,pageSize:a.rowsPerPage,total:f,showSizeChanger:!0,onChange:(u,h)=>s({page:u,rowsPerPage:Number(h)})}})})}),e.jsx(n.Modal,{open:r,onCancel:()=>l(!1),footer:null,title:"Add Academic Year",children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:Nx,children:[e.jsx(z,{label:"Session Name*",value:o,onChange:u=>d(u.target.value)}),e.jsxs("div",{children:[e.jsx(Ue,{Desplay:"Start Date*",value:c,onChange:u=>g(u),format:"YYYY-MM-DD"}),e.jsx("input",{type:"hidden",value:c?te(c).format("YYYY-MM-DD"):""})]}),e.jsxs("div",{children:[e.jsx(Ue,{Desplay:"End Date*",value:y,onChange:u=>p(u),format:"YYYY-MM-DD"}),e.jsx("input",{type:"hidden",value:y?te(y).format("YYYY-MM-DD"):""})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(ne,{value:"Submit",type:"button",onClick:x}),e.jsx(n.Button,{onClick:()=>l(!1),children:"Cancel"})]})]})})]})}function zx({token:t}){return e.jsx(qx,{token:t})}const Ro=jt.feeReceiptSetting,Yx=({token:t})=>St({url:Ro.get,token:t}),Fs={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(260px, 1fr))",gap:16,alignItems:"start"},Vx=t=>t?Array.isArray(t?.data)?t.data[0]??null:Array.isArray(t?.data?.data)?t.data.data[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null:null;function Wx({token:t}){const a=i.useRef(null),s=Yx({token:t}),r=i.useMemo(()=>Vx(s.data),[s.data]),[l,o]=i.useState(""),[d,c]=i.useState(!1),[g,y]=i.useState(!1),[p,m]=i.useState(!1),[A,C]=i.useState("0"),[b,f]=i.useState("0"),[x,R]=i.useState("0"),[k,O]=i.useState(!1),[D,_]=i.useState(!1),[u,h]=i.useState(""),[S,E]=i.useState("0"),[F,q]=i.useState("0"),[T,U]=i.useState("0"),[j,P]=i.useState(""),[I,N]=i.useState(!1),V=()=>{o(r?.number_of_receipt??""),c(String(r?.roll_number??"0")==="1"),y(String(r?.address??"0")==="1"),m(String(r?.gardian_name??"0")==="1"),C(String(r?.authorized_signatory??"0")),f(String(r?.parent_signatory??"0")),R(String(r?.dynamic_qr_code_device??"0")),O(String(r?.sequence_payment??"0")==="1"),_(String(r?.previois_fees??"0")==="1"),h(r?.title??""),E(String(r?.class_id??"0")),q(String(r?.discount??"0")),U(String(r?.sections??"0")),P(r?.upfront_payment_months??"")};i.useEffect(()=>{r&&V()},[r]);const W=()=>{a.current?.reset?.(),V()},B=()=>{const L={number_of_receipt:l,rollnumber:d?1:0,address:g?1:0,gardianname:p?1:0,authorizedsignatory:A,parentsignatory:b,dynamic_qr_code_device:x,sequence_payment:k?1:0,previois_fees:D?1:0,upfront_payment_months:j,title:u,class_id:S,discount:F,sections:T},Y=new Blob([JSON.stringify(L,null,2)],{type:"application/json"}),se=URL.createObjectURL(Y),X=document.createElement("a");X.href=se,X.download="fee-receipt-setting.json",X.click(),URL.revokeObjectURL(se)},$=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(ee.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(ee.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:W},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:B,disabled:!r}],[r,l,d,g,p,A,b,x,k,D,j,u,S,F,T]),M=async L=>{L.preventDefault(),N(!0);try{const Y=new FormData;Y.set("number_of_receipt",String(l??"")),Y.set("rollnumber",d?"1":"0"),Y.set("address",g?"1":"0"),Y.set("gardianname",p?"1":"0"),Y.set("authorizedsignatory",String(A??"0")),Y.set("parentsignatory",String(b??"0")),Y.set("dynamic_qr_code_device",String(x??"0")),Y.set("sequence_payment",k?"1":"0"),Y.set("previois_fees",D?"1":"0"),Y.set("upfront_payment_months",String(j??"")),Y.set("title",String(u??"")),Y.set("class_id",String(S??"0")),Y.set("discount",String(F??"0")),Y.set("sections",String(T??"0")),await dn(Ro.save,Y,t),w.success("Fee receipt settings updated.",{duration:1e3}),s.mutate?.()}catch(Y){w.error(Y?.response?.data?.msg??Y?.message??"Failed to update settings.",{duration:1500})}finally{N(!1)}};return s.isLoading&&!s.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:"Fee Receipt Setting",actions:$,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Settings Form"}),children:e.jsxs("form",{ref:a,onSubmit:M,children:[e.jsxs("div",{style:Fs,children:[e.jsx(z,{type:"number",name:"number_of_receipt",label:"Number Of Receipt",value:l,onChange:L=>o(L.target.value)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Roll Number"}),e.jsx(n.Checkbox,{checked:d,onChange:L=>c(L.target.checked),children:"Show Roll Number in Fees Receipt"})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Address"}),e.jsx(n.Checkbox,{checked:g,onChange:L=>y(L.target.checked),children:"Show address in Fees Receipt"})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Guardian Name"}),e.jsx(n.Checkbox,{checked:p,onChange:L=>m(L.target.checked),children:"Show Guardian Name in Fees Receipt"})]})]}),e.jsx(n.Divider,{}),e.jsxs("div",{style:Fs,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Authorized Signatory"}),e.jsxs(n.Radio.Group,{value:A,onChange:L=>C(L.target.value),children:[e.jsx(n.Radio,{value:"1",children:"Enable"}),e.jsx(n.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Parent Signatory"}),e.jsxs(n.Radio.Group,{value:b,onChange:L=>f(L.target.value),children:[e.jsx(n.Radio,{value:"1",children:"Enable"}),e.jsx(n.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Dynamic QR Code Device"}),e.jsxs(n.Radio.Group,{value:x,onChange:L=>R(L.target.value),children:[e.jsx(n.Radio,{value:"1",children:"Enable"}),e.jsx(n.Radio,{value:"0",children:"Disable"})]})]})]}),e.jsx(n.Divider,{}),e.jsxs("div",{style:Fs,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Sequence Payment"}),e.jsx(n.Checkbox,{checked:k,onChange:L=>O(L.target.checked),children:"Student can pay in sequence"})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Previous Fees"}),e.jsx(n.Checkbox,{checked:D,onChange:L=>_(L.target.checked),children:"Previous Fees Carry Over to Next Year"})]}),e.jsx(z,{type:"text",name:"title",label:"Title",value:u,onChange:L=>h(L.target.value)}),e.jsxs("div",{style:{display:"none"},children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Class"}),e.jsxs(n.Radio.Group,{value:S,onChange:L=>E(L.target.value),children:[e.jsx(n.Radio,{value:"1",children:"Enable"}),e.jsx(n.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Discount"}),e.jsxs(n.Radio.Group,{value:F,onChange:L=>q(L.target.value),children:[e.jsx(n.Radio,{value:"1",children:"Enable"}),e.jsx(n.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Sections"}),e.jsxs(n.Radio.Group,{value:T,onChange:L=>U(L.target.value),children:[e.jsx(n.Radio,{value:"1",children:"Enable"}),e.jsx(n.Radio,{value:"0",children:"Disable"})]})]}),e.jsx(z,{type:"number",name:"upfront_payment_months",label:"Max Advance Payment (Months)",value:j,onChange:L=>P(L.target.value)})]}),e.jsx(n.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:I?"Updating...":"Done",disabled:I})})]})})})]})}function Hx({token:t}){return e.jsx(Wx,{token:t})}const Ga=jt.marksheetSetting,Kx=({token:t})=>St({url:Ga.templateTypes,token:t}),Gx=({token:t})=>St({url:Ga.classDropdown,token:t}),Jx=({token:t})=>St({url:Ga.assignedTable,token:t}),Qx={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(260px, 1fr))",gap:20,alignItems:"end"},hl=t=>t?Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t?.data?.data?.data)?t.data.data.data:[]:[],Xx=Array.from({length:12},(t,a)=>({value:String(a+1),label:`Design ${a+1}`})),Zx=t=>t?Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t)?t:[]:[];function eb({token:t}){const a=i.useRef(null),s=Kx({token:t}),r=Gx({token:t}),l=Jx({token:t}),o=i.useMemo(()=>hl(s.data),[s.data]),d=i.useMemo(()=>hl(r.data),[r.data]),c=i.useMemo(()=>Zx(l.data),[l.data]),[g,y]=i.useState(null),[p,m]=i.useState(null),[A,C]=i.useState([]),b=()=>{a.current?.reset?.(),y(null),m(null),C([])},f=()=>{const D=new Blob([JSON.stringify(c,null,2)],{type:"application/json"}),_=URL.createObjectURL(D),u=document.createElement("a");u.href=_,u.download="marksheet-templates.json",u.click(),URL.revokeObjectURL(_)},x=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(ee.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:b},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:f,disabled:c.length===0}],[c.length]),R=async D=>{if(D.preventDefault(),!g?.value){w.error("Select marksheet type.",{duration:1200});return}if(!p?.value){w.error("Select design.",{duration:1200});return}if(!A?.length){w.error("Select at least one class.",{duration:1200});return}try{const _=new FormData;_.set("temp_id",String(g.value)),_.set("ui_id",String(p.value)),A.forEach(u=>_.append("class_id[]",String(u))),await dn(Ga.assign,_,t),w.success("Marksheet template assigned.",{duration:1e3}),l.mutate?.(),b()}catch(_){w.error(_?.response?.data?.msg??_?.message??"Failed to assign template.",{duration:1500})}},k=async D=>{try{await ur(Ga.remove,D,t),w.success("Template removed.",{duration:1e3}),l.mutate?.()}catch(_){w.error(_?.response?.data?.msg??_?.message??"Failed to remove template.",{duration:1500})}},O=i.useMemo(()=>[{title:"Class",dataIndex:"class",key:"class"},{title:"Template Name",dataIndex:"name",key:"name"},{title:"Template Design",dataIndex:"ui_id",key:"ui_id"},{title:"Action",key:"action",render:(D,_)=>e.jsx(yt,{id:_?.id,funcName:k})}],[t]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:"Marksheet Setting",actions:x,children:e.jsxs("div",{style:{display:"grid",gap:20,gridTemplateColumns:"repeat(auto-fit, minmax(320px, 1fr))"},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Assign Template"}),children:e.jsxs("form",{ref:a,onSubmit:R,children:[e.jsxs("div",{style:Qx,children:[e.jsxs("div",{children:[e.jsx(Q,{label:"Select Marksheet Type",options:o,value:g,onChange:D=>y(D)}),e.jsx("input",{type:"hidden",name:"temp_id",value:g?.value??""})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Select Design",options:Xx,value:p,onChange:D=>m(D)}),e.jsx("input",{type:"hidden",name:"ui_id",value:p?.value??""})]})]}),e.jsx(n.Divider,{}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:8},children:"Class"}),e.jsx(n.Checkbox.Group,{options:d,value:A,onChange:D=>C(D)})]}),e.jsx(n.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save"})})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Marksheet List"}),children:e.jsx(n.Table,{size:"small",rowKey:"id",columns:O,dataSource:c,pagination:!1})})]})})]})}function tb({token:t}){return e.jsx(eb,{token:t})}const Us={fetch:`${jt.legalPages.get}?page_name=terms`,save:jt.legalPages.termsSave,fieldName:"terms_data"};function ab({token:t}){return e.jsx(pr,{token:t,title:"Terms",fetchUrl:Us.fetch,saveUrl:Us.save,fieldName:Us.fieldName})}function nb({token:t}){return e.jsx(ab,{token:t})}const Ns={fetch:`${jt.legalPages.get}?page_name=privacy`,save:jt.legalPages.privacySave,fieldName:"privacy_data"};function sb({token:t}){return e.jsx(pr,{token:t,title:"Privacy",fetchUrl:Ns.fetch,saveUrl:Ns.save,fieldName:Ns.fieldName})}function rb({token:t}){return e.jsx(sb,{token:t})}const Bs={fetch:`${jt.legalPages.get}?page_name=about_us`,save:jt.legalPages.aboutSave,fieldName:"about_data"};function ib({token:t}){return e.jsx(pr,{token:t,title:"About",fetchUrl:Bs.fetch,saveUrl:Bs.save,fieldName:Bs.fieldName})}function lb({token:t}){return e.jsx(ib,{token:t})}const mr=jt.feesInfo,ob=({token:t})=>St({url:mr.get,token:t}),db=({token:t})=>St({url:mr.statesDropdown,token:t}),cb=(t,a)=>{const s=String(t??""),r=String(a??"");return s?r?s.endsWith("/")&&r.startsWith("/")?`${s}${r.slice(1)}`:!s.endsWith("/")&&!r.startsWith("/")?`${s}/${r}`:`${s}${r}`:s:r},Wa=t=>{const a=$t(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},Io=(t,a,s)=>{const r=`${t||""}`.trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;const l=Wa(a),o=r.startsWith("/")?r.slice(1):r;return cb(Ke(),`uploads/school_${l}/${s}/${o}`)},Ls={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},ub=t=>t?Array.isArray(t?.data)?t.data[0]??null:Array.isArray(t?.data?.data)?t.data.data[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null:null,pb=t=>t?Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[]:[],mb=(t,a)=>t?Io(t,a,"schoolFile"):"",qs=(t,a)=>t?Io(t,a,"schoolFile"):"";function hb({token:t}){const a=i.useRef(null),s=ob({token:t}),r=db({token:t}),l=i.useMemo(()=>ub(s.data),[s.data]),o=i.useMemo(()=>pb(r.data),[r.data]),[d,c]=i.useState(null),[g,y]=i.useState(""),[p,m]=i.useState(""),[A,C]=i.useState(""),[b,f]=i.useState(""),x=u=>{const h=new FormData(u),S=Object.fromEntries(h.entries());return S.state_id=d?.value??"",S.fees_receipt_logo=g,S.manager_signature=p,S.principal_signature=A,S.stamp=b,S},R=()=>{c(o.find(u=>String(u?.value)===String(l?.fk_state_id??l?.state_id??l?.country_code??""))??null),y(l?.logo??l?.fees_receipt_logo??""),m(l?.manager_signature??""),C(l?.principal_signature??""),f(l?.stamp??"")};i.useEffect(()=>{l&&R()},[l,o]);const k=()=>{a.current?.reset?.(),R()},O=()=>{const u=x(a.current),h=new Blob([JSON.stringify(u,null,2)],{type:"application/json"}),S=URL.createObjectURL(h),E=document.createElement("a");E.href=S,E.download="fees-info.json",E.click(),URL.revokeObjectURL(S)},D=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(ee.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(ee.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:k},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:O,disabled:!l}],[l,d,g,p,A,b]),_=async u=>{u.preventDefault();try{const h=x(u.target);await gx(mr.save,h,t),w.success("Fees info saved.",{duration:1e3}),s.mutate?.()}catch(h){w.error(h?.response?.data?.msg??h?.message??"Failed to save fees info.",{duration:1500})}};return s.isLoading&&!s.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:"Fees Info",actions:D,children:e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"School Information"}),children:e.jsxs("form",{ref:a,onSubmit:_,children:[e.jsxs("div",{style:Ls,children:[e.jsx(z,{name:"Bussiness_name",label:"Business Name*",defaultValue:l?.name??"",required:!0}),e.jsx(z,{name:"cin",label:"Sub Heading",defaultValue:l?.cin??""}),e.jsx(z,{name:"school_no",type:"number",label:"School Number",defaultValue:l?.school_no??""}),e.jsx(z,{name:"website",label:"Website",defaultValue:l?.website??""}),e.jsx(z,{name:"school_Code",label:"School Code",defaultValue:l?.school_Code??""}),e.jsx(z,{name:"offical_number",label:"Official Number",defaultValue:l?.offical_number??""}),e.jsx(z,{name:"email_id",label:"Email",defaultValue:l?.email_id??""}),e.jsx(z,{name:"receipt_prefix",label:"Receipt Prefix",defaultValue:l?.admission_prefix??l?.receipt_prefix??""}),e.jsx(z,{name:"recipt_start_number",type:"number",label:"Receipt Start Number",defaultValue:l?.admission_no_prefix??l?.admission_start_number??l?.recipt_start_number??""}),e.jsxs("div",{children:[e.jsx(Q,{label:"State",options:o,value:d,onChange:c}),e.jsx("input",{type:"hidden",name:"state_id",value:d?.value??""})]}),e.jsx(z,{name:"affiliation_no",label:"Affiliation Number",defaultValue:l?.affiliation_no??""}),e.jsx(z,{name:"affiliation_desc",label:"Affiliation Description",defaultValue:l?.affiliation_desc??l?.affliated_description??""}),e.jsx(z,{name:"udise_code",label:"UDISE Code",defaultValue:l?.udise_code??""}),e.jsx(z,{name:"color_code",label:"Primary Color",defaultValue:l?.color_code??""}),e.jsx(z,{name:"fontcolor_code",label:"Font Color",defaultValue:l?.fontcolor_code??""})]}),e.jsx(n.Divider,{}),e.jsxs("div",{style:Ls,children:[e.jsx(lt,{name:"Bussiness_address",rows:3,label:"Business Address",defaultValue:l?.Bussiness_address??l?.bussiness_address??l?.address??l?.location_name??""}),e.jsx(lt,{name:"note",rows:3,label:"Note",defaultValue:l?.note??""})]}),e.jsx(n.Divider,{}),e.jsxs("div",{style:Ls,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Fees Receipt Logo"}),e.jsx(Va,{token:t,action:`${Ke()}/uploadfile.php`,data:{filepath:`uploads/school_${Wa(t)}/schoolFile`},value:g,previewUrl:mb(g,t),accept:"image/*",onChange:y}),e.jsx("input",{type:"hidden",name:"fees_receipt_logo",value:g})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Manager Signature"}),e.jsx(Va,{token:t,action:`${Ke()}/uploadfile.php`,data:{filepath:`uploads/school_${Wa(t)}/schoolFile`},value:p,previewUrl:qs(p,t),accept:"image/*",onChange:m}),e.jsx("input",{type:"hidden",name:"manager_signature",value:p})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Principal Signature"}),e.jsx(Va,{token:t,action:`${Ke()}/uploadfile.php`,data:{filepath:`uploads/school_${Wa(t)}/schoolFile`},value:A,previewUrl:qs(A,t),accept:"image/*",onChange:C}),e.jsx("input",{type:"hidden",name:"principal_signature",value:A})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Stamp"}),e.jsx(Va,{token:t,action:`${Ke()}/uploadfile.php`,data:{filepath:`uploads/school_${Wa(t)}/schoolFile`},value:b,previewUrl:qs(b,t),accept:"image/*",onChange:f}),e.jsx("input",{type:"hidden",name:"stamp",value:b})]})]}),e.jsx(n.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save"})})]})})})]})}function fb({token:t}){return e.jsx(hb,{token:t})}const Jn=jt.payrollSettings,yb=({token:t,page:a=1,perPage:s=10})=>Do({baseUrl:Jn.table,token:t,page:a,perPage:s}),gb={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},Ba=[{value:"Allowances",label:"Allowances"},{value:"Dedection",label:"Dedection"}],zs=[{value:"Flat",label:"Flat"},{value:"Percentage",label:"Percentage"}],xb=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[],bb=(t,a=0)=>t?.pagination?.total_rows??t?.data?.pagination?.total_rows??t?.data?.data?.pagination?.total_rows??a;function jb({token:t}){const a=i.useRef(null),s=i.useRef(null),[r,l]=i.useState({page:1,rowsPerPage:10}),[o,d]=i.useState(!1),[c,g]=i.useState(null),[y,p]=i.useState(Ba[0]),[m,A]=i.useState(null),[C,b]=i.useState(null),[f,x]=i.useState(null),[R,k]=i.useState(!1),[O,D]=i.useState(!1),_=yb({token:t,page:r.page,perPage:r.rowsPerPage}),u=i.useMemo(()=>xb(_.data),[_.data]),h=i.useMemo(()=>bb(_.data,u.length),[_.data,u.length]),S=async P=>{P.preventDefault(),D(!0);try{const I=new FormData(P.target);I.set("type",y?.value??""),I.set("amount_type",m?.value??""),await dn(Jn.add,I,t),w.success("Payroll setting added.",{duration:1e3}),_.mutate?.(),P.target.reset(),A(null),p(Ba[0])}catch(I){w.error(I?.response?.data?.msg??I?.message??"Failed to add payroll setting.",{duration:1500})}finally{D(!1)}},E=P=>{g(P),b(Ba.find(I=>I.value===P?.type)??null),x(zs.find(I=>I.value===P?.amount_type)??null),d(!0)},F=async P=>{P.preventDefault(),k(!0);try{const I=new FormData(P.target);I.set("id",String(c?.id??"")),I.set("type",C?.value??""),I.set("amount_type",f?.value??""),await Co(Jn.edit,I,t),w.success("Payroll setting updated.",{duration:1e3}),d(!1),_.mutate?.()}catch(I){w.error(I?.response?.data?.msg??I?.message??"Failed to update payroll setting.",{duration:1500})}finally{k(!1)}},q=async P=>{try{await ur(Jn.remove,P,t),w.success("Payroll setting deleted.",{duration:1e3}),_.mutate?.()}catch(I){w.error(I?.response?.data?.msg??I?.message??"Failed to delete payroll setting.",{duration:1500})}},T=()=>{const P=new Blob([JSON.stringify(u,null,2)],{type:"application/json"}),I=URL.createObjectURL(P),N=document.createElement("a");N.href=I,N.download="payroll-settings.json",N.click(),URL.revokeObjectURL(I)},U=i.useMemo(()=>[{key:"add",label:"Add",icon:e.jsx(ee.PlusOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:()=>_.mutate?.()},{key:"save",label:"Save",icon:e.jsx(ee.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:T,disabled:u.length===0}],[u.length]),j=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title"},{title:"Type",dataIndex:"type",key:"type"},{title:"Amount Type",dataIndex:"amount_type",key:"amount_type"},{title:"Amount",dataIndex:"Amount",key:"Amount"},{title:"Action",key:"action",render:(P,I)=>e.jsxs("div",{style:{display:"flex",gap:8},children:[e.jsx(n.Button,{type:"text",icon:e.jsx(ee.EditOutlined,{}),onClick:()=>E(I)}),e.jsx(n.Popconfirm,{title:"Delete payroll setting?",onConfirm:()=>q(I.id),children:e.jsx(n.Button,{type:"text",danger:!0,icon:e.jsx(ee.DeleteOutlined,{})})})]})}],[t]);return e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:"Payroll Settings",actions:U,children:e.jsxs("div",{style:{display:"grid",gap:20,gridTemplateColumns:"minmax(320px, 420px) 1fr"},children:[e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Add Allowances / Deductions"}),children:e.jsxs("form",{ref:a,onSubmit:S,children:[e.jsxs("div",{style:gb,children:[e.jsx(z,{name:"title",label:"Title",required:!0}),e.jsxs("div",{children:[e.jsx(Q,{label:"Type",options:Ba,value:y,onChange:p}),e.jsx("input",{type:"hidden",name:"type",value:y?.value??""})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Amount Type",options:zs,value:m,onChange:A}),e.jsx("input",{type:"hidden",name:"amount_type",value:m?.value??""})]}),e.jsx(z,{name:"Amount",type:"number",label:"Amount",required:!0})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:20},children:e.jsx(ne,{type:"submit",value:O?"Adding...":"Submit",disabled:O,loading:O})})]})}),e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:"Payroll Settings List"}),children:e.jsx(n.Table,{rowKey:"id",columns:j,dataSource:u,loading:_.isLoading,pagination:{current:r.page,pageSize:r.rowsPerPage,total:h,showSizeChanger:!0,onChange:(P,I)=>l({page:P,rowsPerPage:Number(I)})}})})]})}),e.jsx(n.Drawer,{open:o,onClose:()=>d(!1),title:"Edit Payroll Setting",width:420,destroyOnClose:!0,footer:e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(n.Button,{onClick:()=>d(!1),disabled:R,children:"Cancel"}),e.jsx(ne,{type:"submit",value:R?"Updating...":"Update",disabled:R,loading:R,form:"payroll-edit-form"})]}),children:e.jsx(n.Spin,{spinning:R,tip:"Updating...",children:e.jsx("form",{id:"payroll-edit-form",ref:s,onSubmit:F,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(z,{name:"title",label:"Title",required:!0,defaultValue:c?.title??""}),e.jsxs("div",{children:[e.jsx(Q,{label:"Type",options:Ba,value:C,onChange:b}),e.jsx("input",{type:"hidden",name:"type",value:C?.value??""})]}),e.jsxs("div",{children:[e.jsx(Q,{label:"Amount Type",options:zs,value:f,onChange:x}),e.jsx("input",{type:"hidden",name:"amount_type",value:f?.value??""})]}),e.jsx(z,{name:"Amount",type:"number",label:"Amount",required:!0,defaultValue:c?.Amount??""})]})},c?.id??"new")})})]})}function Sb({token:t}){return e.jsx(jb,{token:t})}const ko=jt.paymentGateway,vb=({token:t})=>St({url:ko.get,token:t}),wb=[{id:"Razorpay",title:"Razorpay",fields:["keyId","keySecret"]},{id:"PhonePe",title:"Pine Labs",fields:["merchantId","saltKey","saltIndex"]},{id:"Paytm",title:"HDFC",fields:["merchantId","merchantKey"]},{id:"SabPaisa",title:"SabPaisa",fields:["clientCode","transUserName","transUserPassword","authKey","authIV"]}],Kt={Razorpay:{keyId:"",keySecret:"",isActive:!0},PhonePe:{merchantId:"",saltKey:"",saltIndex:"1",isActive:!1},Paytm:{merchantId:"",merchantKey:"",isActive:!1},SabPaisa:{clientCode:"",transUserName:"",transUserPassword:"",authKey:"",authIV:"",isActive:!1}},fl=t=>{const a=Array.isArray(t?.data)&&t.data[0]||Array.isArray(t?.data?.data)&&t.data.data[0]||Array.isArray(t)&&t[0]||null;if(!a?.data)return Kt;try{const s=JSON.parse(a.data||"{}"),r=s?.data&&typeof s.data=="object"?s.data:s;return{Razorpay:{...Kt.Razorpay,...r?.Razorpay??{}},PhonePe:{...Kt.PhonePe,...r?.PhonePe??r?.PineLab??r?.PineLabs??{}},Paytm:{...Kt.Paytm,...r?.Paytm??r?.HDFC??{}},SabPaisa:{...Kt.SabPaisa,...r?.SabPaisa??{}}}}catch{return Kt}};function _b({token:t}){const a=i.useRef(null),s=vb({token:t}),[r,l]=i.useState(Kt);i.useEffect(()=>{s.data&&l(fl(s.data))},[s.data]);const o=(p,m,A)=>{l(C=>({...C,[p]:{...C[p],[m]:A}}))},d=()=>l(fl(s.data)),c=()=>{const p=new Blob([JSON.stringify(r,null,2)],{type:"application/json"}),m=URL.createObjectURL(p),A=document.createElement("a");A.href=m,A.download="payment-gateway-settings.json",A.click(),URL.revokeObjectURL(m)},g=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(ee.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(ee.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(ee.ReloadOutlined,{}),onClick:d},{key:"export",label:"Export",icon:e.jsx(ee.ExportOutlined,{}),onClick:c}],[r,s.data]),y=async p=>{p.preventDefault();try{await Ao(ko.save,{data:r},t),w.success("Payment gateway settings saved.",{duration:1e3}),s.mutate?.()}catch(m){w.error(m?.response?.data?.msg??m?.message??"Failed to save gateway settings.",{duration:1500})}};return s.isLoading&&!s.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(w.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ht,{title:"Payment Gateway",actions:g,children:e.jsxs("form",{ref:a,onSubmit:y,style:{display:"grid",gap:20},children:[wb.map(p=>{const m=r[p.id]??{};return e.jsx(n.Card,{title:e.jsx(n.Typography.Title,{level:5,style:{margin:0},children:p.title}),children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("span",{style:{fontSize:14,fontWeight:500},children:["Enable ",p.title]}),e.jsx(n.Switch,{checked:!!m.isActive,onChange:A=>o(p.id,"isActive",A)})]}),e.jsx(n.Divider,{style:{margin:0}}),e.jsx("div",{style:{display:"grid",gap:16,gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))"},children:p.fields.map(A=>e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:A}),e.jsx(n.Input,{value:m[A]??"",type:A.toLowerCase().includes("secret")||A.toLowerCase().includes("password")?"password":"text",onChange:C=>o(p.id,A,C.target.value)})]},A))})]})},p.id)}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(ne,{type:"submit",value:"Save"})})]})})]})}function Cb({token:t}){return e.jsx(_b,{token:t})}const Ab=({routes:t=[],onNavigate:a})=>e.jsx(n.Row,{gutter:[16,16],children:t.map((s,r)=>e.jsx(n.Col,{xs:24,md:8,lg:8,children:e.jsx(v,{children:e.jsx(xl,{icon:s?.icon??"",title:s?.title??"",path:s?.path??"",onClick:a})})},`${r}route001`))});exports.About=lb;exports.AcademicYear=zx;exports.Academics=Qy;exports.AddBook=gm;exports.AddDriver=om;exports.AddExpense=$y;exports.AddHomework=hm;exports.AddIncome=Dy;exports.AddStaff=Lh;exports.AdmissionEnquiry=Bu;exports.ApplyLeave=Af;exports.AprroveLeaveRequest=bf;exports.AssignByClass=_g;exports.AssignStudentSubject=Ky;exports.AssignStudentToTransport=lm;exports.AssignSubjects=Sg;exports.AssignTimeGroup=Pg;exports.AssignVehicles=Xp;exports.AttendanceDashboard=dy;exports.BookList=xm;exports.BulkUpload=Jy;exports.BuySellProduct=th;exports.Category=Ym;exports.Class=dg;exports.CoScholasticArea=Bg;exports.Complain=Up;exports.CreateTimeGroup=Dg;exports.DailyAttendance=hy;exports.Department=Pf;exports.Designation=Ef;exports.DownloadExpense=Ly;exports.ErpDashboard=Eo;exports.ExpenseHead=Yy;exports.FeeReceiptSetting=Hx;exports.FeesInfo=fb;exports.GatePass=Kp;exports.GeneralSetting=px;exports.Holidays=gg;exports.IncomeHead=Iy;exports.IssueReturn=jm;exports.LeaveType=Rf;exports.LibraryAssignStudent=Sm;exports.LibraryCategory=vm;exports.LibraryRenewalReport=_m;exports.LibraryReport=wm;exports.ManageStock=hh;exports.MarksheetSetting=tb;exports.MedicalReport=Wy;exports.MenuSubmenu=vu;exports.MonthlyReport=gy;exports.Notes=Vg;exports.NpmReport=jh;exports.Organization=Fx;exports.PaymentGateway=Cb;exports.Payroll=hf;exports.PayrollReceiptDetails=Hf;exports.PayrollSettings=Sb;exports.PhoneCallLog=yp;exports.PostalDispatch=vp;exports.PostalReceive=Tp;exports.Privacy=rb;exports.Products=Bm;exports.PromoteStudents=$g;exports.RoutePage=Ab;exports.RouteTimeTable=dm;exports.SearchExpense=qy;exports.SearchIncome=Ty;exports.Sections=sg;exports.SellReports=uh;exports.SetupFrontOffice=Vp;exports.Shift=Uf;exports.StaffAttendance=sf;exports.StaffAttendanceReport=df;exports.StaffDailyAttendance=Yf;exports.StaffDirectory=Wh;exports.StockReport=bh;exports.Stoppage=um;exports.StudentAttendance=uy;exports.StudentLoginCredential=Vy;exports.SubCategory=Jm;exports.Subjects=mg;exports.SubmissionDetails=fm;exports.Syllabus=ex;exports.Terms=nb;exports.TimeTable=ux;exports.TransferCertificate=Jg;exports.TransportBulkUpload=pm;exports.TransportRoutes=Gp;exports.TransportVehicles=Jp;exports.Unit=rh;exports.Vendor=Pm;exports.VisitorBook=lp;exports.YearlyReport=Sy;exports.getImageBaseUrl=Ke;exports.setBaseUrl=xc;exports.setImageBaseUrl=bc;
59
+ `}),e.jsx(w,{children:e.jsx("div",{style:{display:"flex",justifyContent:"space-between"},children:e.jsx(Jt,{data:{tableRef:$}})})}),e.jsxs("div",{className:"ubk-table-shell",ref:$,style:{marginTop:12},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:16,flexWrap:"wrap",marginBottom:14},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontSize:12,color:"#222"},children:[e.jsx("span",{children:"Show"}),e.jsx(s.Select,{size:"small",value:L.rowsPerPage,onChange:ce=>N(1,ce),options:[10,25,50,100].map(ce=>({label:ce,value:ce})),style:{width:72}}),e.jsx("span",{children:"entries"})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("span",{style:{fontSize:12,color:"#222"},children:"Search:"}),e.jsx(s.Input,{size:"small",allowClear:!0,value:C,onChange:ce=>{E(ce.target.value),B(ve=>({...ve,page:1}))},placeholder:"Enter search keyword",prefix:e.jsx(re.SearchOutlined,{style:{color:"#a3a8cf"}}),style:{width:220,borderWidth:"0 0 1px 0",borderRadius:0,background:"transparent"}})]})]}),e.jsx("div",{className:"print-only",children:e.jsx(da,{})}),De]}),l&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:16,marginTop:16,flexWrap:"wrap"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:`Showing ${we} to ${ke} of ${me} entries`}),e.jsx(s.Pagination,{current:L.page,pageSize:L.rowsPerPage,total:me||0,showSizeChanger:!1,onChange:N})]})]})]})},xg=({token:t,type:a})=>{const[n,r]=i.useState({page:1,rowsPerPage:10}),o="api/branchapi/frontoffice/enquirytablelist",l=o.includes("?")?o.endsWith("?")||o.endsWith("&")?"":"&":"?",d=`${o}${l}page=${n.page}&per_page=${n.rowsPerPage}`,{isLoading:c,data:h,error:f}=q(t?[d,t]:null,([R,I])=>Y(R,I)),[p,m]=i.useState(!1),v=(R,I)=>{r({page:R,rowsPerPage:parseInt(I)})},S=async R=>{},y=R=>{console.log("dsdsdsdsd",R),m(R)},g=()=>{},b=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],T=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0,sorter:{compare:(R,I)=>R.name.localeCompare(I.name)}},{id:"2",name:"Phone",selector:"contact",sortable:!0,sorter:(R,I)=>(R.contact||"").localeCompare(I.contact||"")},{id:"6",name:"Description",selector:"description",sortable:!0,sorter:(R,I)=>(R.description||"").localeCompare(I.description||"")},{id:"3",name:"Source",selector:"source_name",sortable:!0,sorter:(R,I)=>(R.source_name||"").localeCompare(I.source_name||"")},{id:"4",name:"Enquiry Date",selector:"date",sortable:!0,sorter:(R,I)=>new Date(R.date)-new Date(I.date)},{id:"5",name:"Next Follow Up Date",selector:"follow_up_date",sortable:!0,sorter:(R,I)=>new Date(R.follow_up_date)-new Date(I.follow_up_date)}]);return e.jsx("div",{children:e.jsx(Ke,{parentCallback:v,data:{newData:h,columns:T,action:!0,Loading:c,error:f,open:p,viewDetails:g,deleteTodoMutation:S,DrawerUpdate:y,ActionView:b}})})};var bg=au();const yi=Zc(bg),uu=()=>{};class ho extends i.Component{state={value:this.props.value||this.props.defaultValue||""};selectRef=null;setSelectRef=a=>{this.selectRef=a};componentDidUpdate(a){a.value!==this.props.value&&this.setState({value:this.props.value})}onChange=(a,n)=>{this.props.onChange(a,n),this.setState({value:a})};getValue=()=>{const{value:a}=this.state;return a?Array.isArray(a)?a.length?"valid":"":typeof a=="object"?a.value||"":a:""};render(){const{SelectComponent:a,required:n,...r}=this.props,{isDisabled:o}=this.props,l=!o;return e.jsxs("div",{children:[e.jsx(a,{...r,ref:this.setSelectRef,onChange:this.onChange}),l&&e.jsx("input",{tabIndex:-1,autoComplete:"off",style:{opacity:0,width:"100%",height:0,display:"block"},value:this.getValue(),onChange:uu,onFocus:()=>this.selectRef.focus(),required:n})]})}}ho.defaultProps={onChange:uu};ho.protoTypes={selectComponent:yi.func.isRequired,onChange:yi.func,required:yi.bool};const jg={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Sg={menuPortal:t=>({...t,zIndex:9999}),control:(t,a)=>({...t,minHeight:40,height:40,fontSize:"14px",border:"none",borderBottom:`1px solid ${a.isFocused?"#222":"#d9d9d9"}`,borderRadius:0,boxShadow:"none",backgroundColor:"transparent",transition:"border-color 0.2s ease","&:hover":{border:"none",borderBottom:`1px solid ${a.isFocused?"#222":"#a8a8a8"}`}}),valueContainer:t=>({...t,height:40,padding:"0 0",display:"flex",alignItems:"center"}),input:t=>({...t,margin:0,padding:0}),indicatorSeparator:()=>({display:"none"}),indicatorsContainer:t=>({...t,height:40}),dropdownIndicator:(t,a)=>({...t,padding:"0 0 0 8px",color:a.isFocused?"#222":"#b5b5b5"}),singleValue:t=>({...t,color:"#222",marginLeft:0}),placeholder:t=>({...t,color:"#9f9f9f",marginLeft:0}),option:(t,a)=>({...t,fontSize:"14px",backgroundColor:a.isFocused?"#f8f8f8":"#fff",color:"#222",cursor:"pointer"})},pu=t=>e.jsx(jc.components.Input,{...t,className:"input-cont",required:!!t?.selectProps?.required}),wg=t=>e.jsx(ho,{...t,SelectComponent:jc,components:{Input:pu},options:t.options}),ae=i.forwardRef(({...t},a)=>e.jsxs("div",{className:"form-group",style:{height:"auto"},children:[t.label&&e.jsx("label",{className:"labelfont",style:jg,children:t?.label}),e.jsx(wg,{components:{Input:pu},menuPortalTarget:document.body,styles:Sg,className:"input-cont",...t,ref:a})]})),vg={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Cg={width:"100%",height:"40px",background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},_g=(t,a,n)=>a?t>ne(n).endOf("day")||t<ne(a).endOf("day"):!1,Ge=i.forwardRef(function(a,n){const{...r}=a;return e.jsxs("div",{className:"form-group",children:[r.Desplay&&e.jsx("label",{className:`labelfont ${r.classnme?r.classnme:""}`,style:vg,children:r.Desplay}),e.jsx(s.DatePicker,{...r,style:{...Cg,...r.style||{}},className:"form-group",disabledDate:o=>_g(o,r.sessionStart||r.minDate?.subtract(1,"day").format("YYYY-MM-DD"),r.sessionEnd||r.maxDate?.format("YYYY-MM-DD")),required:!0,ref:n})]})}),Ag={minWidth:160,height:36,padding:"0 28px",border:"none",borderRadius:999,background:"linear-gradient(90deg, #f59b1c 0%, #ef3e7b 100%)",color:"#fff",fontSize:14,fontWeight:700,textTransform:"uppercase",cursor:"pointer",boxShadow:"none"},de=i.forwardRef(({error:t,success:a,disabled:n,loading:r,style:o,...l},d)=>e.jsxs("div",{className:"form-group",style:{marginBottom:0,position:"relative"},children:[e.jsx("input",{...l,ref:d,disabled:n||r,style:{...Ag,opacity:n||r?.7:1,cursor:n||r?"not-allowed":"pointer",...o||{}}}),r?e.jsx("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"currentColor",opacity:.8,children:e.jsx("animateTransform",{attributeName:"transform",type:"rotate",dur:"0.8s",values:"0 0 0 0;360 0 0 0",repeatCount:"indefinite",children:e.jsx("circle",{cx:"8",cy:"8",r:"6",strokeWidth:"2",stroke:"currentColor",fill:"none",strokeDasharray:"60",strokeLinecap:"round",children:e.jsx("animate",{attributeName:"stroke-dashoffset",type:"subtract",from:"60",to:"0",dur:"0.8s",repeatCount:"indefinite"})})})})}):null]})),Dg={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Tg={width:"100%",minHeight:80,padding:"8px 0",fontSize:"14px",color:"#222",background:"transparent",border:0,borderTop:0,borderLeft:0,borderRight:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",outline:"none",resize:"vertical",transition:"border-color 0.2s ease"},kt=({style:t,onFocus:a,onBlur:n,...r})=>{const[o,l]=i.useState(!1);return e.jsxs("div",{style:{width:"100%"},children:[r.label&&e.jsx("label",{className:"labelfont",style:Dg,children:r.label}),e.jsx("textarea",{placeholder:r.placeholder||r.label,...r,onFocus:d=>{l(!0),a?.(d)},onBlur:d=>{l(!1),n?.(d)},style:{...Tg,borderBottom:`1px solid ${o?"#222":"#d9d9d9"}`,...t||{}}})]})},pt=t=>({optimisticData:a=>[...a.data,t],populateCache:(a,n)=>[...n.data,a]}),ot=t=>({optimisticData:a=>a.data.filter(n=>n.id!==t),populateCache:(a,n)=>n.data.filter(r=>r.id!==t)}),kg=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Rg="api/branchapi/Frontoffice/visitorbookShowdata",Ig="api/branchapi/Frontoffice/purposedropdown";function Pg({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),o=Rg.replace(/\?.*$/,""),{isLoading:l,data:d}=q(n&&r?[o,r,n]:null,([g,b,T])=>An(g,{id:b},T)),{isLoading:c,data:h}=q(n?[Ig,n]:null,([g,b])=>Y(g,b)),f=i.useMemo(()=>kg(h),[h]),p=d?.data?.[0],[m,v]=i.useState({purpose:void 0,name:"",phone:"",id_card:"",number_of_person:1,date:null,in_time:null,out_time:null,note:"",address:"",image:""});i.useEffect(()=>{p&&v({purpose:p?.purpose,name:p?.name||"",phone:p?.contact||"",id_card:p?.id_proof||"",number_of_person:p?.no_of_pepple||1,date:p?.date?ne(p.date):null,in_time:p?.in_time?ne(p.in_time,"h:mm a"):null,out_time:p?.out_time?ne(p.out_time,"h:mm a"):null,note:p?.note||"",address:p?.address||"",image:p?.image||""})},[p]);const S=(g,b)=>{v(T=>({...T,[g]:b}))},y=`${Nt()}/branchapi/frontoffice/uploadfrontofficeDocument`;return l||c?e.jsx(w,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:g=>a(g,r),children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Visitor"})}),e.jsx(w,{p:2,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:f,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Purpose",name:"purpose",allowSelectAll:!1,value:m.purpose,onChange:g=>S("purpose",g)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"name",type:"text",label:"Name",required:!0,value:m.name,onChange:g=>S("name",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"phone",type:"text",label:"Phone No.",required:!0,value:m.phone,onChange:g=>S("phone",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"id_card",type:"text",label:"ID Card",value:m.id_card,onChange:g=>S("id_card",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"number_of_person",type:"number",label:"Number of Person",value:m.number_of_person,onChange:g=>S("number_of_person",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:m.date,Desplay:"Date",id:"date",name:"date",required:!0,onChange:g=>S("date",g)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",value:m.in_time,onChange:g=>S("in_time",g),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time",value:m.in_time?m.in_time.format("h:mm a"):"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",value:m.out_time,onChange:g=>S("out_time",g),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"out_time",value:m.out_time?m.out_time.format("h:mm a"):"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note",value:m.note,onChange:g=>S("note",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(kt,{type:"text",label:"Address",name:"address",rows:3,required:!0,value:m.address,onChange:g=>S("address",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.Upload,{action:y,headers:{Authorization:n},maxCount:1,onChange:g=>{if(g.file.status==="removed"&&S("image",""),g.file.status==="done"){const b=g.file.response?.data??g.file.response?.file??"";S("image",String(b??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:m.image?"Change":"Upload"})}),e.jsx("input",{type:"hidden",name:"image",value:m.image||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; } .textDanger { color: #dc2626; }"})]})}const Mg=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},nn="api/branchapi/Frontoffice/visitortablelist",Eg="api/branchapi/Frontoffice/purposedropdown",Og="api/branchapi/frontoffice/addvisitors",$g="api/branchapi/frontoffice/editvisitorsdata",Fg="api/branchapi/frontoffice/deletevisitors",Bg=`${Nt()}/branchapi/frontoffice/uploadfrontofficeDocument`;function Lg({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(""),[c,h]=i.useState(""),[f,p]=i.useState("03:30 PM"),m=(k,F)=>{n({page:k,rowsPerPage:Number.parseInt(F,10)})},v=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],S=i.useMemo(()=>{const k=nn.includes("?")?nn.endsWith("?")||nn.endsWith("&")?"":"&":"?";return`${nn}${k}page=${a.page}&per_page=${a.rowsPerPage}`},[nn,a.page,a.rowsPerPage]),{isLoading:y,error:g,data:b,mutate:T}=q(t?[S,t]:null,([k,F])=>Y(k,F)),{isLoading:R,data:I}=q(t?[Eg,t]:null,([k,F])=>Y(k,F)),A=i.useMemo(()=>Mg(I),[I]),_=async(k,F)=>{try{await T(Ze(k,F,t),pt(F)),D.success("Success! Added new item.")}catch{D.error("Failed to add the new item.")}},u=async k=>{try{await T(st(Fg,k,t),ot(k)),D.success("Success! Deleted item.")}catch{D.error("Failed to delete the item.")}},x=async(k,F,C)=>{try{const E=await ct(k,F,t);T(E),Array.isArray(E?.data)&&T(`${nn.replace(/\?.*$/,"")}?id=${C}`,E),D.success("Success! Updated item.")}catch{D.error("Failed to update the item.")}},j=async(k,F)=>{k.preventDefault();const C=new FormData(k.target);await x($g,C,F),k.target.reset(),d(""),o(!1)},M=async k=>{if(k.preventDefault(),!k.target?.date?.value)D.error("Select required dates"),k.target?.date?.focus(),h("textDanger");else{const F=new FormData(k.target);await _(Og,F),k.target.reset(),h(""),d(""),p("03:30 PM")}},O=k=>{o(k)},z=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0},{id:"2",name:"Purpose",selector:"visitors_purpose",sortable:!0},{id:"3",name:"Phone",selector:"contact",sortable:!0},{id:"4",name:"Date",selector:"date",sortable:!0},{id:"5",name:"Address",selector:"address",sortable:!0},{id:"5",name:"In Time",selector:"in_time",sortable:!0},{id:"6",name:"Out Time",selector:"out_time",sortable:!0}],[]);return e.jsxs("div",{children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Visitor"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:M,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:A,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Purpose",name:"purpose",required:!0,allowSelectAll:!1})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"name",type:"text",label:"Name"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{pattern:"[0-9]{3}[0-9]{3}[0-9]{4}",name:"phone",type:"tel",label:"Phone No.",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"id_card",type:"text",label:"ID Card"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{defaultValue:1,name:"number_of_person",type:"number",label:"Number of Person"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:ne(),Desplay:"Date",id:"date",name:"date",classnme:c,onChange:()=>h("")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.TimePicker,{defaultValue:ne("2022-04-17T15:30","h:mm a"),id:"in_time",use12Hours:!0,format:"h:mm a",onChange:(k,F)=>p(F),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time",value:f,readOnly:!0})]})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(kt,{type:"text",label:"Address*",name:"address",rows:3,required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.Upload,{action:Bg,headers:{Authorization:t},maxCount:1,onChange:k=>{if(k.file.status==="removed"&&d(""),k.file.status==="done"){const F=k.file.response?.data??k.file.response?.file??"";d(String(F??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:l?"Change":"Upload"})}),e.jsx("input",{type:"hidden",name:"image",value:l||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Visitor List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:m,data:{newData:b,columns:z,action:!0,ActionView:v,Loading:y,error:g,editDesign:e.jsx(Pg,{data:{handleUpdate:j,token:t}}),deleteTodoMutation:u,open:r,DrawerUpdate:O,viewDetails:""}})})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const Ug="api/branchapi/frontoffice/generalcallsShowdata",Ng=[{value:"Incoming",label:"Incoming"},{value:"Outgoing",label:"Outgoing"}];function zg({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),o=Ug.replace(/\?.*$/,""),{isLoading:l,data:d}=q(n&&r?[o,r,n]:null,([m,v,S])=>An(m,{id:v},S)),c=d?.data?.[0],[h,f]=i.useState({name:"",phone:"",description:"",date:null,next_follow_up_date:null,call_duration:"",note:"",call_type:""});i.useEffect(()=>{c&&f({name:c?.name||"",phone:c?.contact||"",description:c?.description||"",date:c?.date?ne(c.date):null,next_follow_up_date:c?.follow_up_date?ne(c.follow_up_date):null,call_duration:c?.call_dureation||"",note:c?.note||"",call_type:c?.call_type||""})},[c]);const p=(m,v)=>{f(S=>({...S,[m]:v}))};return l?e.jsx(w,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:m=>a(m,r),children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Call Log"})}),e.jsx(w,{p:2,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"name",type:"text",label:"Name",required:!0,value:h.name,onChange:m=>p("name",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"phone",type:"tel",label:"Phone",pattern:"[0-9]{3}[0-9]{3}[0-9]{4}",value:h.phone,onChange:m=>p("phone",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description",value:h.description,onChange:m=>p("description",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:h.date,Desplay:"Date",id:"date",name:"date",onChange:m=>p("date",m)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:h.next_follow_up_date,Desplay:"Next Follow Up Date",id:"fdate",name:"next_follow_up_date",onChange:m=>p("next_follow_up_date",m)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"call_duration",type:"text",label:"Call Duration",value:h.call_duration,onChange:m=>p("call_duration",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note",value:h.note,onChange:m=>p("note",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:Ng,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Call Type",name:"call_type",required:!0,allowSelectAll:!1,value:h.call_type?{value:h.call_type,label:h.call_type}:null,onChange:m=>p("call_type",m?.value||"")})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const sn="api/branchapi/frontoffice/generalcalltablelist",qg="api/branchapi/frontoffice/addgenaralcalls",Yg="api/branchapi/frontoffice/editgeneralcall",Wg="api/branchapi/frontoffice/deletegeneralcall",Vg=[{value:"Incoming",label:"Incoming"},{value:"Outgoing",label:"Outgoing"}],Hg=[{key:"all",label:"All Calls"},{key:"Incoming",label:"Incoming"},{key:"Outgoing",label:"Outgoing"}];function Kg({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(""),[c,h]=i.useState(""),[f,p]=i.useState("all"),[m,v]=i.useState(""),S=i.useRef(null),y=(k,F)=>{n({page:k,rowsPerPage:Number.parseInt(F,10)})},g=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],b=i.useMemo(()=>{const k=sn.includes("?")?sn.endsWith("?")||sn.endsWith("&")?"":"&":"?",F=new URLSearchParams;return F.set("page",String(a.page)),F.set("per_page",String(a.rowsPerPage)),f!=="all"&&F.set("call_type",f),`${sn}${k}${F.toString()}`},[sn,a.page,a.rowsPerPage,f]),{isLoading:T,error:R,data:I,mutate:A}=q(t?[b,t]:null,([k,F])=>Y(k,F)),_=async(k,F)=>{try{await A(Ze(k,F,t),pt(F)),D.success("Success! Added new item.")}catch{D.error("Failed to add the new item.")}},u=async k=>{try{await A(st(Wg,k,t),ot(k)),D.success("Success! Deleted item.")}catch{D.error("Failed to delete the item.")}},x=async(k,F,C)=>{try{const E=await ct(k,F,t);A(E),Array.isArray(E?.data)&&A(`${sn.replace(/\?.*$/,"")}?id=${C}`,E),D.success("Success! Updated item.")}catch{D.error("Failed to update the item.")}},j=async(k,F)=>{k.preventDefault();const C=new FormData(k.target);await x(Yg,C,F),k.target.reset(),d(""),o(!1)},M=async k=>{if(k.preventDefault(),!k.target?.date?.value)D.error("Select required dates"),k.target?.date?.focus(),h("textDanger");else{const F=new FormData(k.target);await _(qg,F),k.target.reset(),h(""),d(""),v("")}},O=k=>{o(k)},z=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0},{id:"2",name:"Phone",selector:"contact",sortable:!0},{id:"3",name:"Description",selector:"description",sortable:!0},{id:"4",name:"Date",selector:"date",sortable:!0},{id:"5",name:"Follow Up Date",selector:"follow_up_date",sortable:!0},{id:"6",name:"Call Duration",selector:"call_dureation",sortable:!0}],[]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Phone Call Log"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:M,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"name",type:"text",label:"Name"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{pattern:"[0-9]{3}[0-9]{3}[0-9]{4}",name:"phone",type:"tel",label:"Phone",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:ne(),Desplay:"Date",id:"date",name:"date",classnme:c,onChange:()=>h("")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",Desplay:"Next Follow Up Date",id:"fdate",name:"follow_up_date"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"call_dureation",type:"text",label:"Call Duration"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:Vg,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Call Type",name:"call_type",required:!0,allowSelectAll:!1,value:m?{value:m,label:m}:null,onChange:k=>v(k?.value||"")})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Phone Call Log List"})}),e.jsxs(w,{pt:3,children:[e.jsx(s.Tabs,{activeKey:f,onChange:p,items:Hg}),e.jsx(Jt,{data:{tableRef:S}}),e.jsx(Ke,{parentCallback:y,data:{newData:I,columns:z,action:!0,ActionView:g,Loading:T,error:R,editDesign:e.jsx(zg,{data:{handleUpdate:j,token:t}}),deleteTodoMutation:u,open:r,DrawerUpdate:O,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const Gg="api/branchapi/frontoffice/postaldispatchreceiveShowdata";function Jg({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),o=Gg.replace(/\?.*$/,""),{isLoading:l,data:d}=q(n&&r?[o,r,n]:null,([m,v,S])=>An(m,{id:v},S)),c=d?.data?.[0],[h,f]=i.useState({to_title:"",refernce:"",address:"",note:"",from_title:"",date:null,image:""});i.useEffect(()=>{c&&f({to_title:c?.to_title||"",refernce:c?.reference_no||"",address:c?.address||"",note:c?.note||"",from_title:c?.from_title||"",date:c?.date?ne(c.date):null,image:c?.image||""})},[c]);const p=(m,v)=>{f(S=>({...S,[m]:v}))};return l?e.jsx(w,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:m=>a(m,r),children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Postal Dispatch"})}),e.jsx(w,{p:2,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"title",type:"text",label:"To Title *",required:!0,value:h.to_title,onChange:m=>p("to_title",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"refernce",type:"text",label:"Reference No",value:h.refernce,onChange:m=>p("refernce",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"address",type:"text",label:"Address",required:!0,value:h.address,onChange:m=>p("address",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note",value:h.note,onChange:m=>p("note",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"from_title",type:"text",label:"From Title",required:!0,value:h.from_title,onChange:m=>p("from_title",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:h.date,Desplay:"Date",id:"date",name:"date",onChange:m=>p("date",m)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const rn="api/branchapi/frontoffice/postaldispatchtablelist",Qg="api/branchapi/frontoffice/addpostaldispatch",Xg="api/branchapi/frontoffice/editpostaldispatch",Zg="api/branchapi/frontoffice/deletepostalreceivedispatch";function ey({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(""),[c,h]=i.useState(""),f=i.useRef(null),p=(j,M)=>{n({page:j,rowsPerPage:Number.parseInt(M,10)})},m=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],v=i.useMemo(()=>{const j=rn.includes("?")?rn.endsWith("?")||rn.endsWith("&")?"":"&":"?";return`${rn}${j}page=${a.page}&per_page=${a.rowsPerPage}`},[rn,a.page,a.rowsPerPage]),{isLoading:S,error:y,data:g,mutate:b}=q(t?[v,t]:null,([j,M])=>Y(j,M)),T=async(j,M)=>{try{await b(Ze(j,M,t),pt(M)),D.success("Success! Added new item.")}catch{D.error("Failed to add the new item.")}},R=async j=>{try{await b(st(Zg,j,t),ot(j)),D.success("Success! Deleted item.")}catch{D.error("Failed to delete the item.")}},I=async(j,M,O)=>{try{const z=await ct(j,M,t);b(z),Array.isArray(z?.data)&&b(`${rn.replace(/\?.*$/,"")}?id=${O}`,z),D.success("Success! Updated item.")}catch{D.error("Failed to update the item.")}},A=async(j,M)=>{j.preventDefault();const O=new FormData(j.target);await I(Xg,O,M),j.target.reset(),d(""),o(!1)},_=async j=>{if(j.preventDefault(),!j.target?.date?.value)D.error("Select required dates"),j.target?.date?.focus(),h("textDanger");else{const M=new FormData(j.target);await T(Qg,M),j.target.reset(),h(""),d("")}},u=j=>{o(j)},x=i.useMemo(()=>[{id:"1",name:"To Title",selector:"to_title",sortable:!0},{id:"2",name:"Reference No",selector:"reference_no",sortable:!0},{id:"3",name:"Address",selector:"address",sortable:!0},{id:"4",name:"Note",selector:"note",sortable:!0},{id:"5",name:"From Title",selector:"from_title",sortable:!0},{id:"6",name:"Date",selector:"date",sortable:!0}],[]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Postal Dispatch"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:_,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"title",type:"text",label:"To Title *"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"refernce",type:"text",label:"Reference No"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"address",type:"text",label:"Address"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"from_title",type:"text",label:"From Title"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:ne(),Desplay:"Date",id:"date",name:"date",status:c===""?"":"error",classnme:c,onChange:()=>h("")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx("input",{type:"hidden",name:"image",value:l||"",readOnly:!0})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Postal Dispatch List"})}),e.jsxs(w,{pt:3,children:[e.jsx(Jt,{data:{tableRef:f}}),e.jsx(Ke,{parentCallback:p,data:{newData:g,columns:x,action:!0,ActionView:m,Loading:S,error:y,editDesign:e.jsx(Jg,{data:{handleUpdate:A,token:t}}),deleteTodoMutation:R,open:r,DrawerUpdate:u,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const ty="api/branchapi/frontoffice/postaldispatchreceiveShowdata";function ay({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),o=ty.replace(/\?.*$/,""),{isLoading:l,data:d}=q(n&&r?[o,r,n]:null,([m,v,S])=>An(m,{id:v},S)),c=d?.data?.[0],[h,f]=i.useState({from_title:"",refernce:"",address:"",note:"",title:"",date:null,image:""});i.useEffect(()=>{c&&f({from_title:c?.from_title||"",refernce:c?.reference_no||"",address:c?.address||"",note:c?.note||"",title:c?.to_title||"",date:c?.date?ne(c.date):null,image:c?.image||""})},[c]);const p=(m,v)=>{f(S=>({...S,[m]:v}))};return l?e.jsx(w,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:m=>a(m,r),children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Postal Receive"})}),e.jsx(w,{p:2,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"from_title",type:"text",label:"From Title *",required:!0,value:h.from_title,onChange:m=>p("from_title",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"refernce",type:"text",label:"Reference No",required:!0,value:h.refernce,onChange:m=>p("refernce",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"address",type:"text",label:"Address",required:!0,value:h.address,onChange:m=>p("address",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note",value:h.note,onChange:m=>p("note",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"title",type:"text",label:"To Title",required:!0,value:h.title,onChange:m=>p("title",m.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:h.date,Desplay:"Date",id:"date",name:"date",onChange:m=>p("date",m)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const on="api/branchapi/frontoffice/postalrecivetablelist",ny="api/branchapi/frontoffice/addpostalrecive",sy="api/branchapi/frontoffice/editpostalrecive",ry="api/branchapi/frontoffice/deletepostalreceivedispatch";function iy({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(""),[c,h]=i.useState(""),f=i.useRef(null),p=(j,M)=>{n({page:j,rowsPerPage:Number.parseInt(M,10)})},m=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],v=i.useMemo(()=>{const j=on.includes("?")?on.endsWith("?")||on.endsWith("&")?"":"&":"?";return`${on}${j}page=${a.page}&per_page=${a.rowsPerPage}`},[on,a.page,a.rowsPerPage]),{isLoading:S,error:y,data:g,mutate:b}=q(t?[v,t]:null,([j,M])=>Y(j,M)),T=async(j,M)=>{try{await b(Ze(j,M,t),pt(M)),D.success("Success! Added new item.")}catch{D.error("Failed to add the new item.")}},R=async j=>{try{await b(st(ry,j,t),ot(j)),D.success("Success! Deleted item.")}catch{D.error("Failed to delete the item.")}},I=async(j,M,O)=>{try{const z=await ct(j,M,t);b(z),Array.isArray(z?.data)&&b(`${on.replace(/\?.*$/,"")}?id=${O}`,z),D.success("Success! Updated item.")}catch{D.error("Failed to update the item.")}},A=async(j,M)=>{j.preventDefault();const O=new FormData(j.target);await I(sy,O,M),j.target.reset(),d(""),o(!1)},_=async j=>{if(j.preventDefault(),!j.target?.date?.value)D.error("Select required dates"),j.target?.date?.focus(),h("textDanger");else{const M=new FormData(j.target);await T(ny,M),j.target.reset(),h(""),d("")}},u=j=>{o(j)},x=i.useMemo(()=>[{id:"1",name:"From Title",selector:"from_title",sortable:!0},{id:"2",name:"Reference No",selector:"reference_no",sortable:!0},{id:"3",name:"Address",selector:"address",sortable:!0},{id:"4",name:"Note",selector:"note",sortable:!0},{id:"5",name:"To Title",selector:"to_title",sortable:!0},{id:"6",name:"Date",selector:"date",sortable:!0}],[]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Postal Receive"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:_,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"from_title",type:"text",label:"From Title *"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"refernce",type:"text",label:"Reference No"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"address",type:"text",label:"Address"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:"title",type:"text",label:"To Title"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:ne(),Desplay:"Date",id:"date",name:"date",status:c===""?"":"error",classnme:c,onChange:()=>h("")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx("input",{type:"hidden",name:"image",value:l||"",readOnly:!0})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Postal Receive List"})}),e.jsxs(w,{pt:3,children:[e.jsx(Jt,{data:{tableRef:f}}),e.jsx(Ke,{parentCallback:p,data:{newData:g,columns:x,action:!0,ActionView:m,Loading:S,error:y,editDesign:e.jsx(ay,{data:{handleUpdate:A,token:t}}),deleteTodoMutation:R,open:r,DrawerUpdate:u,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const oy="api/branchapi/frontoffice/complaintShowdata",ly="api/branchapi/frontoffice/complainttypedropdown",dy=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function cy({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),o=oy.replace(/\?.*$/,""),{isLoading:l,data:d}=q(n&&r?[o,r,n]:null,([g,b,T])=>An(g,{id:b},T)),{isLoading:c,data:h}=q(n?[ly,n]:null,([g,b])=>Y(g,b)),f=i.useMemo(()=>dy(h).map(b=>({value:b?.value??b?.id??b?.complaint_type??"",label:b?.complaint_type??b?.label??""})),[h]),p=d?.data?.[0],[m,v]=i.useState({complain_type:"",complain_by_name:"",phone:"",date:null,description:"",action_token:"",assigned:"",note:"",file:""});i.useEffect(()=>{p&&v({complain_type:p?.complaint_type??"",complain_by_name:p?.name??"",phone:p?.contact??"",date:p?.date?ne(p.date):null,description:p?.description??"",action_token:p?.action_taken??"",assigned:p?.assigned??"",note:p?.note??"",file:p?.image??""})},[p]);const S=(g,b)=>{v(T=>({...T,[g]:b}))},y=i.useMemo(()=>f.find(g=>g.value===m.complain_type)||null,[f,m.complain_type]);return l||c?e.jsx(w,{pt:4,pb:1,style:{width:550},children:e.jsx("div",{children:"Please Wait..."})}):e.jsx(w,{pt:4,pb:1,style:{width:550},children:e.jsxs("form",{onSubmit:g=>a(g,r),children:[e.jsx("input",{type:"hidden",name:"id",value:r??""}),e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Edit Complaint"})}),e.jsx(w,{p:2,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:f,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Complain Type",name:"complain_type",allowSelectAll:!1,value:y,onChange:g=>S("complain_type",g?.value??"")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"complain_by_name",type:"text",label:"Complain By *",required:!0,value:m.complain_by_name,onChange:g=>S("complain_by_name",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"phone",type:"tel",label:"Phone",pattern:"[0-9]{10}",value:m.phone,onChange:g=>S("phone",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:m.date,Desplay:"Enquiry Date",id:"date",name:"date",onChange:g=>S("date",g)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description",value:m.description,onChange:g=>S("description",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"action_token",type:"text",label:"Action Taken",value:m.action_token,onChange:g=>S("action_token",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"assigned",type:"text",label:"Assigned",value:m.assigned,onChange:g=>S("assigned",g.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note",value:m.note,onChange:g=>S("note",g.target.value)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})]})]})})}const ln="api/branchapi/frontoffice/complainttablelist",uy="api/branchapi/frontoffice/complainttypedropdown",py="api/branchapi/frontoffice/addcomplaint",my="api/branchapi/frontoffice/editcomplaint",hy="api/branchapi/frontoffice/deletecomplaint",fy=[{key:"all",label:"All Complaints"},{key:"pending",label:"Pending"},{key:"resolved",label:"Resolved"}];function gy({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(""),[c,h]=i.useState(""),[f,p]=i.useState("all"),m=i.useRef(null),v=(F,C)=>{n({page:F,rowsPerPage:Number.parseInt(C,10)})},S=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],y=i.useMemo(()=>{const F=ln.includes("?")?ln.endsWith("?")||ln.endsWith("&")?"":"&":"?",C=new URLSearchParams;return C.set("page",String(a.page)),C.set("per_page",String(a.rowsPerPage)),f!=="all"&&C.set("status",f),`${ln}${F}${C.toString()}`},[ln,a.page,a.rowsPerPage,f]),{isLoading:g,error:b,data:T,mutate:R}=q(t?[y,t]:null,([F,C])=>Y(F,C)),{isLoading:I,data:A}=q(t?[uy,t]:null,([F,C])=>Y(F,C)),_=i.useMemo(()=>{const F=A?.data??A??[];return Array.isArray(F)?F:Array.isArray(F?.data)?F.data:[]},[A]),u=async(F,C)=>{try{await R(Ze(F,C,t),pt(C)),D.success("Success! Added new item.")}catch{D.error("Failed to add the new item.")}},x=async F=>{try{await R(st(hy,F,t),ot(F)),D.success("Success! Deleted item.")}catch{D.error("Failed to delete the item.")}},j=async(F,C,E)=>{try{const P=await ct(F,C,t);R(P),Array.isArray(P?.data)&&R(`${ln.replace(/\?.*$/,"")}?id=${E}`,P),D.success("Success! Updated item.")}catch{D.error("Failed to update the item.")}},M=async(F,C)=>{F.preventDefault();const E=new FormData(F.target);await j(my,E,C),F.target.reset(),d(""),o(!1)},O=async F=>{if(F.preventDefault(),!F.target?.date?.value)D.error("Select required dates"),F.target?.date?.focus(),h("textDanger");else{const C=new FormData(F.target);await u(py,C),F.target.reset(),h(""),d("")}},z=F=>{o(F)},k=i.useMemo(()=>[{id:"1",name:"Complain Type",selector:"complaint_type",sortable:!0},{id:"2",name:"Name",selector:"name",sortable:!0},{id:"3",name:"Phone",selector:"contact",sortable:!0},{id:"4",name:"Date",selector:"date",sortable:!0},{id:"5",name:"Action Taken",selector:"action_taken",sortable:!0},{id:"6",name:"Assigned",selector:"assigned",sortable:!0}],[]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Add Complaint"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:O,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:_,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Complain Type",name:"complain_type",required:!0,allowSelectAll:!1})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"complain_by_name",type:"text",label:"Complain By *",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"phone",type:"tel",label:"Phone",pattern:"[0-9]{3}[0-9]{3}[0-9]{4}"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:ne(),Desplay:"Complain Date",id:"date",name:"date",status:c===""?"":"error",classnme:c,onChange:()=>h("")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"action_token",type:"text",label:"Action Taken"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"assigned",type:"text",label:"Assigned"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"note",type:"text",label:"Note"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx("input",{type:"hidden",name:"file",value:l||"",readOnly:!0})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Complaint List"})}),e.jsxs(w,{pt:3,children:[e.jsx(s.Tabs,{activeKey:f,onChange:p,items:fy}),e.jsx(Jt,{data:{tableRef:m}}),e.jsx(Ke,{parentCallback:v,data:{newData:T,columns:k,action:!0,ActionView:S,Loading:g,error:b,editDesign:e.jsx(cy,{data:{handleUpdate:M,token:t}}),deleteTodoMutation:x,open:r,DrawerUpdate:z,viewDetails:""}})]})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}const Ml="api/branchapi/Frontoffice/purposetablelist",yy="api/branchapi/Frontoffice/complaint_typetablelist",xy="api/branchapi/Frontoffice/sourcetablelist",by="api/branchapi/Frontoffice/referencetablelist",El="api/branchapi/frontoffice/visitorpurposeShowdata",jy="api/branchapi/frontoffice/complaintTypeShowdata",Sy="api/branchapi/frontoffice/sourceShowdata",wy="api/branchapi/frontoffice/referenceShowdata",fn=[{key:"purpose",label:"Purpose"},{key:"complainType",label:"Complain Type"},{key:"source",label:"Source"},{key:"reference",label:"Reference"}],Ol={purpose:[{id:"1",name:"Purpose",selector:"visitors_purpose",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],complainType:[{id:"1",name:"Complaint Type",selector:"complaint_type",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],source:[{id:"1",name:"Source",selector:"source",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],reference:[{id:"1",name:"Reference",selector:"reference",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}]};function vy({token:t}){const[a,n]=i.useState("purpose"),[r,o]=i.useState({page:1,rowsPerPage:10}),[l,d]=i.useState(!1),c=i.useRef(null),h=(O,z)=>{o({page:O,rowsPerPage:Number.parseInt(z,10)})},f=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],p=()=>{switch(a){case"purpose":return Ml;case"complainType":return yy;case"source":return xy;case"reference":return by;default:return Ml}},m=()=>{switch(a){case"purpose":return"api/branchapi/frontoffice/addvisitors_purpose";case"complainType":return"api/branchapi/frontoffice/addcomplaint_type";case"source":return"api/branchapi/frontoffice/addsource";case"reference":return"api/branchapi/frontoffice/addreference";default:return"api/branchapi/frontoffice/addvisitors_purpose"}},v=()=>{switch(a){case"purpose":return"api/branchapi/frontoffice/editvisitors_purpose";case"complainType":return"api/branchapi/frontoffice/editcomplaint_type";case"source":return"api/branchapi/frontoffice/editsource";case"reference":return"api/branchapi/frontoffice/editreference";default:return"api/branchapi/frontoffice/editvisitors_purpose"}},S=O=>{switch(a){case"purpose":return{url:"api/branchapi/frontoffice/deleteVisitorsPurpose",id:O};case"complainType":return{url:"api/branchapi/frontoffice/deletecomplaint_type",id:O};case"source":return{url:"api/branchapi/frontoffice/deletesource",id:O};case"reference":return{url:"api/branchapi/frontoffice/deletereference",id:O};default:return{url:"api/branchapi/frontoffice/deleteVisitorsPurpose",id:O}}},y=i.useMemo(()=>{const O=p(),z=O.includes("?")?O.endsWith("?")||O.endsWith("&")?"":"&":"?";return`${O}${z}page=${r.page}&per_page=${r.rowsPerPage}`},[a,r.page,r.rowsPerPage]),{isLoading:g,error:b,data:T,mutate:R}=q(t?[y,t]:null,([O,z])=>Y(O,z)),I=async(O,z)=>{try{await Ze(O,z,t),await R(),D.success("Success! Added new item.")}catch{D.error("Failed to add the new item.")}},A=async O=>{const{url:z,id:k}=S(O);try{await st(z,k,t),await R(),D.success("Success! Deleted item.")}catch{D.error("Failed to delete the item.")}},_=async(O,z,k)=>{try{const F=await ct(O,z,t);R(F),Array.isArray(F?.data)&&R(`${p().replace(/\?.*$/,"")}?id=${k}`,F),D.success("Success! Updated item.")}catch{D.error("Failed to update the item.")}},u=async(O,z)=>{O.preventDefault();const k=new FormData(O.target),F=v();await _(F,k,z),O.target.reset(),d(!1)},x=async O=>{O.preventDefault();const z=new FormData(O.target),k=m();await I(k,z),O.target.reset()},j=O=>{d(O)},M=i.useMemo(()=>Ol[a]||Ol.purpose,[a]);return e.jsx(w,{pt:5,pb:1,children:e.jsx(s.Row,{gutter:[16,16],children:e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Setup Front Office"})}),e.jsxs(w,{p:3,children:[e.jsx(s.Tabs,{activeKey:a,onChange:O=>{n(O),o({page:1,rowsPerPage:10})},items:fn}),e.jsxs(s.Row,{gutter:[16,16],mt:3,children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsx("form",{onSubmit:x,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsxs(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:["Add ",fn.find(O=>O.key===a)?.label]})}),e.jsx(w,{p:3,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{required:!0,name:a==="reference"?"title":"name",type:"text",label:fn.find(O=>O.key===a)?.label+" *"})})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description"})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Add",color:"primary"})})})})]})})]})})}),e.jsx(s.Col,{xs:24,md:16,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsxs(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:[fn.find(O=>O.key===a)?.label," List"]})}),e.jsxs(w,{pt:3,children:[e.jsx(Jt,{data:{tableRef:c}}),e.jsx(Ke,{parentCallback:h,data:{newData:T,columns:M,action:!0,ActionView:f,Loading:g,error:b,editDesign:e.jsx(Cy,{data:{handleUpdate:u,token:t,activeTab:a}}),deleteTodoMutation:A,open:l,DrawerUpdate:j,viewDetails:""}})]})]})})]})]})]})})})})}function Cy({data:t}){const{handleUpdate:a,token:n,activeTab:r}=t||{},o=i.useContext(ta),d=(g=>{switch(g){case"purpose":return El;case"complainType":return jy;case"source":return Sy;case"reference":return wy;default:return El}})(r).replace(/\?.*$/,""),{isLoading:c,data:h}=q(n&&o?[d,o,n]:null,([g,b,T])=>An(g,{id:b},T)),f=h?.data?.[0],[p,m]=i.useState({name:"",description:""});i.useEffect(()=>{f&&m({name:f?.visitors_purpose||f?.complaint_type||f?.source||f?.reference||"",description:f?.description||""})},[f]);const v=(g,b)=>{m(T=>({...T,[g]:b}))};if(c)return e.jsx(w,{pt:4,pb:1,style:{width:350,display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(s.Spin,{size:"large"})});const y={purpose:"title",complainType:"title",source:"title",reference:"title"}[r]||"name";return e.jsxs(w,{pt:4,pb:1,style:{width:350},children:[e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsxs(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:["Edit ",fn.find(g=>g.key===r)?.label]})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:g=>a(g,o),children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{type:"text",value:o,name:"id",required:!0,className:"noDisplay",onChange:()=>{}})})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:y,type:"text",label:fn.find(g=>g.key===r)?.label+" *",required:!0,value:p.name,onChange:g=>v("name",g.target.value)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description",value:p.description,onChange:g=>v("description",g.target.value)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})]})})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const _y="api/branchapi/Student/studentGatePass",Ln="api/branchapi/Student/studentGatePassList";function Ay({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:25}),[r,o]=i.useState(!1),l=i.useRef(null),d=(I,A)=>{n({page:I,rowsPerPage:Number.parseInt(A,10)})},c=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],{data:h,mutate:f}=q(t?[_y,t]:null,([I,A])=>Y(I,A)),p=i.useMemo(()=>{const I=Ln.includes("?")?Ln.endsWith("?")||Ln.endsWith("&")?"":"&":"?";return`${Ln}${I}page=${a.page}&per_page=${a.rowsPerPage}`},[Ln,a.page,a.rowsPerPage]),{isLoading:m,error:v,data:S,mutate:y}=q(t?[p,t]:null,([I,A])=>Y(I,A)),g=async I=>{const A="api/branchapi/frontoffice/deletevisitors";try{await y(deleteData(A,I,t),ot(I)),D.success("Success! Deleted item.")}catch{D.error("Failed to delete the item.")}},b=I=>{o(I)},T=()=>{},R=[{title:"Name",dataIndex:"lastname",key:"lastname",render:(I,A)=>`${A?.lastname||""} ${A?.firstname||""}`.trim()},{title:"Class",dataIndex:"class_name",key:"class_name",render:(I,A)=>`${A?.class_name||""}-${A?.section_name||""}`},{title:"Father Name",dataIndex:"father_name",key:"father_name"},{title:"Authorized Persons",dataIndex:"authorized_persons_fullname",key:"authorized_persons_fullname"},{title:"Relation",dataIndex:"authorized_persons_relation",key:"authorized_persons_relation"},{title:"Generated Date",dataIndex:"genrated_date_time",key:"genrated_date_time"},{title:"Return Date",dataIndex:"expected_return_date_time",key:"expected_return_date_time"},{title:"Reason",dataIndex:"reason",key:"reason"},{title:"Action",key:"action",render:(I,A)=>e.jsx(s.Tag,{color:A?.status==="Generated"?"green":"blue",children:A?.status||"Pending"})},{title:"Print",key:"print",render:(I,A)=>e.jsx(re.PrinterOutlined,{style:{color:"#3892ee",cursor:"pointer"},onClick:()=>window.print()})}];return e.jsx(w,{pt:5,pb:1,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Today Gate Pass"})}),e.jsx(w,{pt:3,children:e.jsx(s.List,{grid:{column:4,gutter:16},dataSource:h?.data||[],style:{padding:0},renderItem:I=>e.jsx(s.List.Item,{style:{padding:0},children:e.jsx(s.Card,{size:"small",style:{marginBottom:8,width:"100%"},children:e.jsxs(w,{children:[e.jsxs(s.Typography.Text,{strong:!0,children:[I?.lastname," ",I?.firstname]}),e.jsx("br",{}),e.jsxs(s.Typography.Text,{type:"secondary",children:[I?.class_name,"-",I?.section_name]}),e.jsx("br",{}),e.jsxs(s.Typography.Text,{type:"secondary",children:["Return: ",I?.expected_return_date_time]}),e.jsx("br",{}),e.jsx(de,{type:"button",value:"Print",color:"primary",size:"small",onClick:()=>window.print(),style:{marginTop:4}})]})})})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"Gate Pass List"})}),e.jsxs(w,{pt:3,children:[e.jsx(Jt,{data:{tableRef:l}}),e.jsx(Ke,{parentCallback:d,data:{newData:S,columns:R,action:!1,ActionView:c,Loading:m,error:v,editDesign:"",deleteTodoMutation:g,open:r,DrawerUpdate:b,viewDetails:T}})]})]})})]})})}const At=({id:t,funcName:a,disabled:n=!1})=>{const r="Data",[o,l]=i.useState(!1),d=()=>{l(!0),a(t),s.message.success(`${r} deleted successfully!`)},c=()=>{s.message.info(`Deletion of ${r} cancelled`)};return e.jsx(s.Popconfirm,{title:`Delete ${r}?`,description:`Are you sure you want to delete ${r}?`,onConfirm:d,onCancel:c,okText:"Yes",cancelText:"No",disabled:n||o,children:e.jsx(s.Button,{danger:!0,disabled:n,loading:o,icon:e.jsx(re.DeleteOutlined,{}),size:"small"})})},$l={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Dy({token:t,sampleTemplateUrl:a=sf}){const[n,r]=i.useState({pagination:{current:1,pageSize:10}}),[o,l]=i.useState(!1),[d,c]=i.useState(null),[h,f]=i.useState(null),[p,m]=i.useState(!1),[v,S]=i.useState([]),y=`api/branchapi/Transport/routeTableList?page=${n.pagination.current}&per_page=${n.pagination.pageSize}`,g="api/branchapi/Transport/addroute",b="api/branchapi/Transport/editroute",T="api/branchapi/Transport/deleteroute",R=void 0,{isLoading:I,data:A,error:_,mutate:u}=q(t?[y,t]:null,([W,L])=>Y(W,L)),x=i.useMemo(()=>!A?.data||Array.isArray(A.data)?[]:A.data?.rows||[],[A]),j=A?.data?.pagination?.total_rows||A?.pagination?.total_rows||0,M=async(W,L)=>{try{await u(Ze(W,L,t),pt(L)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{D.error("Failed to add the new item.",{duration:1e3})}},O=W=>{W.preventDefault();const L=new FormData(W.target);M(g,L),W.target.reset()},z=(W,L)=>{r(B=>({...B,pagination:{current:W,pageSize:parseInt(L,10)}}))},k=async W=>{try{await u(st(T,W,t),ot(W)),D.success("Success! Deleted item.",{duration:1e3})}catch{D.error("Failed to delete the item.",{duration:1e3})}},F=W=>{c(W),l(!0)},C=async W=>{try{const L=await ct(b,W,t);u(L),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),l(!1),c(null)}catch{D.error("Failed to update the item.",{duration:1e3})}},E=async W=>{W.preventDefault();const L=new FormData(W.target);L.append("id",d?.id),C(L)},P=async()=>{if(!h){D.error("Please select an Excel file to upload.",{duration:1e3});return}m(!0),S([]);try{const W=new FormData;W.append("file",h);const B=await(await fetch(`${R}`,{method:"POST",headers:{Authorization:t},body:W})).json();if(B.Status==="Success"){const $=B.data?.rows||[];S($);const N=B.data?.success_count||0,V=B.data?.failed_count||0;D.success(B.message||`Route bulk upload completed. ${N} succeeded, ${V} failed.`,{duration:1e3}),N>0&&u()}else D.error(B.message||"Failed to upload routes.",{duration:1e3})}catch(W){D.error(W?.message||"Something went wrong.",{duration:1e3})}finally{m(!1),f(null)}},U=[{title:"Route Title",dataIndex:"route_title",key:"route_title",sorter:{compare:(W,L)=>(W.route_title||"").localeCompare(L.route_title||"")}},{title:"Fare (Monthly)",dataIndex:"fare",key:"fare",sorter:{compare:(W,L)=>Number(W.fare||0)-Number(L.fare||0)}},{title:"Note",dataIndex:"note",key:"note",sorter:{compare:(W,L)=>(W.note||"").localeCompare(L.note||"")}},{title:"Action",key:"action",render:(W,L)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>F(L),style:{padding:2}}),e.jsx(At,{id:L?.id,funcName:k})]})}],H=d?.route_title?`Edit ${d.route_title}`:"Edit Route";return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Bulk Upload Routes"})}),e.jsxs(w,{p:3,children:[e.jsxs(s.Row,{gutter:[16,16],align:"middle",children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(s.Upload,{accept:".xlsx",showUploadList:!1,beforeUpload:W=>(f(W),!1),children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),disabled:p,children:h?h.name:"Choose Excel File (.xlsx)"})})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(s.Button,{type:"primary",onClick:P,disabled:p||!h,loading:p,children:p?"Uploading...":"Upload Routes"})})})]}),v.length>0&&e.jsxs(w,{mt:3,children:[e.jsx(he,{level:5,children:"Upload Results"}),e.jsx(s.Table,{dataSource:v.map((W,L)=>({...W,key:L})),pagination:!1,size:"small",bordered:!0,columns:[{title:"Row",dataIndex:"row",width:80},{title:"Title",dataIndex:"title"},{title:"Status",dataIndex:"status",render:W=>e.jsx("span",{style:{color:W==="Success"?"green":"red",fontWeight:500},children:W})},{title:"Message",dataIndex:"message"}]})]}),a&&e.jsx(w,{mt:2,children:e.jsx("a",{href:a,download:!0,style:{color:"#5080f8",fontSize:13,textDecoration:"none"},children:"Download sample Excel template"})})]})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Add Route"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:O,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(G,{type:"text",name:"title",label:"Title",placeholder:"Mumbai to Delhi",required:"required"})})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(G,{type:"number",name:"fare",label:"Fare (Monthly)",required:"required"})})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(G,{type:"text",name:"note",label:"Note"})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsxs(w,{children:[e.jsx(de,{type:"submit",value:"Save",color:"primary"}),e.jsx(s.Button,{type:"text",htmlType:"reset",style:$l,children:"Cancel"})]})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Route List"})}),e.jsx(w,{p:3,children:e.jsx(Ke,{parentCallback:z,data:{newData:{data:x,pagination:{total_rows:j}},columns:U,columnstype:"antd",action:!1,Loading:I,error:_,deleteTodoMutation:k}})})]})})]}),e.jsx(s.Drawer,{open:o,title:H,placement:"right",width:420,onClose:()=>{l(!1),c(null)},children:e.jsx("form",{onSubmit:E,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(G,{type:"text",name:"title",label:"Title",defaultValue:d?.route_title||"",required:"required"}),e.jsx(G,{type:"number",name:"fare",label:"Fare (Monthly)",defaultValue:d?.fare||"",required:"required"}),e.jsx(G,{type:"text",name:"note",label:"Note",defaultValue:d?.note||""}),e.jsx("div",{style:{display:"none"},children:e.jsx(G,{type:"text",name:"no_of_vehicle",label:"Note"})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{l(!1),c(null)},style:$l,children:"Cancel"})]})]})})})]})}const Fl={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Ty({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),c=`api/branchapi/Transport/vehiclesTableList?page=${a.page}&per_page=${a.rowsPerPage}`,h="api/branchapi/Transport/addvehicles",f="api/branchapi/Transport/editvehicle",p="api/branchapi/Transport/deletevehicle",{isLoading:m,data:v,error:S,mutate:y}=q(t?[c,t]:null,([j,M])=>Y(j,M)),g=async(j,M)=>{try{await y(Ze(j,M,t),pt(M)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{D.error("Failed to add the new item.",{duration:1e3})}},b=j=>{j.preventDefault();const M=new FormData(j.target);g(h,M),j.target.reset()},T=async j=>{try{await y(st(p,j,t),ot(j)),D.success("Success! Deleted item.",{duration:1e3})}catch{D.error("Failed to delete the item.",{duration:1e3})}},R=j=>{d(j),o(!0)},I=async j=>{try{await ct(f,j,t),await y(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),d(null)}catch{D.error("Failed to update the item.",{duration:1e3})}},A=async j=>{j.preventDefault();const M=new FormData(j.target);M.append("id",l?.id),I(M)},_=(j,M)=>{n({page:j,rowsPerPage:parseInt(M,10)})},u=[{title:"Vehicle Number",dataIndex:"vehicle_no",key:"vehicle_no",sorter:{compare:(j,M)=>j.vehicle_no.localeCompare(M.vehicle_no)}},{title:"Vehicle Model",dataIndex:"vehicle_model",key:"vehicle_model",sorter:{compare:(j,M)=>j.vehicle_model.localeCompare(M.vehicle_model)}},{title:"Max Seating Capacity",dataIndex:"seating_capacity",key:"seating_capacity",sorter:{compare:(j,M)=>j.seating_capacity-M.seating_capacity}},{title:"Manufacture Year",dataIndex:"manufacture_year",key:"manufacture_year",sorter:{compare:(j,M)=>j.manufacture_year-M.manufacture_year}},{title:"Gps Url",key:"gps_url",sorter:{compare:(j,M)=>j.gps_url.localeCompare(M.gps_url)},render:(j,M)=>e.jsx("span",{title:M?.gps_url??"",style:{display:"inline-block",maxWidth:220,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:M?.gps_url})},{title:"Note",dataIndex:"note",key:"note",sorter:{compare:(j,M)=>j.note.localeCompare(M.note)}},{title:"Action",key:"action",render:(j,M)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>R(M),style:{padding:2}}),e.jsx(At,{id:M?.id,funcName:T})]})}],x=l?.vehicle_no?`Edit ${l.vehicle_no}`:"Edit Vehicle";return e.jsxs("div",{children:[e.jsx(s.Drawer,{open:r,title:x,placement:"right",width:420,onClose:()=>{o(!1),d(null)},children:e.jsx("form",{onSubmit:A,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(G,{type:"text",name:"number",label:"Vehicle Number",defaultValue:l?.vehicle_no||"",required:"required"}),e.jsx(G,{type:"text",name:"model",label:"Vehicle Model",defaultValue:l?.vehicle_model||""}),e.jsx(G,{type:"number",name:"manufacture_year",label:"Manufacture Year",defaultValue:l?.manufacture_year||""}),e.jsx(G,{type:"number",name:"seating_capacity",label:"Max Seating Capacity",defaultValue:l?.seating_capacity||""}),e.jsx(G,{type:"text",name:"gps_url",label:"Gps Url",defaultValue:l?.gps_url||""}),e.jsx(G,{type:"text",name:"note",label:"Note",defaultValue:l?.note||""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},style:Fl,children:"Cancel"})]})]})})}),e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(w,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Vehicle"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:b,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(G,{type:"text",name:"number",label:"Vehicle Number",required:"required"}),e.jsx(G,{type:"text",name:"model",label:"Vehicle Model"}),e.jsx(G,{type:"number",name:"manufacture_year",label:"Manufacture Year"}),e.jsx(G,{type:"number",name:"seating_capacity",label:"Max Seating Capacity"}),e.jsx(G,{type:"text",name:"gps_url",label:"Gps Url"}),e.jsx(G,{type:"text",name:"note",label:"Note"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Save",color:"primary"}),e.jsx(s.Button,{type:"text",htmlType:"reset",style:Fl,children:"Cancel"})]})]})})})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Vehicle List"})}),e.jsx(w,{children:e.jsx(Ke,{parentCallback:_,data:{newData:v,columns:u,columnstype:"antd",action:!1,Loading:m,error:S,deleteTodoMutation:T}})})]})})]})})]})}const ky={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},Bl=({dataIndex:t,title:a,record:n,children:r,isEditable:o,...l})=>e.jsx("td",{...l,children:o?e.jsx("div",{style:{display:"flex",marginLeft:"5%"},children:r}):r});function Ry({token:t}){const[a,n]=i.useState(!1),[r,o]=i.useState({pagination:{current:1,pageSize:50}}),[l,d]=i.useState(null),[c,h]=i.useState([]),f="api/branchapi/Transport/getrouteDropdown",p="api/branchapi/Transport/getvehicleDropdown",m="api/branchapi/Transport/getchechkedVehicleData",v="api/branchapi/Transport/assignedVehicleTable",S="api/branchapi/transport/assignvehicle",y="api/branchapi/Transport/deleteassignvehicle",g=l?`${m}?route_id=${l}`:null,{isLoading:b,data:T,mutate:R}=q(t?[`${v}?page=${r.pagination.current}&per_page=${r.pagination.pageSize}`,t]:null,([B,$])=>Y(B,$)),{data:I}=q(t&&f?[f,t]:null,([B,$])=>Y(B,$)),{data:A}=q(t&&p?[p,t]:null,([B,$])=>Y(B,$)),_=t&&g?[g,t]:null,{isLoading:u,data:x}=q(_,([B,$])=>Y(B,$)),{Status:j="Failed",pagination:{total_rows:M=0}={}}=T||{},{data:O=[]}=j==="Success"?T:{},z=i.useMemo(()=>{const B=I?.data??I??[];return Array.isArray(B)?B:[]},[I]),k=i.useMemo(()=>{const B=A?.data??A??[];return(Array.isArray(B)?B:[]).map(N=>{if(N==null)return null;if(typeof N=="string"||typeof N=="number")return{label:String(N),value:N};const V=N.value??N.vehicle_id??N.id??N.vehicleID,Q=N.label??N.vehicle_name??N.vehicle_no??N.vehicle_number??N.name??String(V??"");return V==null||Q===""?null:{label:String(Q),value:V}}).filter(Boolean)},[A]),F=i.useMemo(()=>{const B=x?.data??x??[];return(Array.isArray(B)?B:[]).map(N=>N?.value??N?.vehicle_id??N?.id??N).filter(N=>N!=null)},[x]);i.useEffect(()=>{h(F)},[F,a]);const C=async(B,$,N)=>{try{await R(Ze(B,$,t),pt($)),g&&q.mutate(_),n(V=>!V),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(V){D.error(V?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},E=B=>{B.preventDefault();const $=new FormData;$.append("route_id",l??""),c.length?c.forEach(N=>$.append("vehicle_ids[]",N)):$.append("vehicle_ids[]",""),C(S,$)},P=B=>{o($=>({...$,pagination:{current:B,pageSize:$.pagination.pageSize}}))},U=async B=>{try{await R(st(y,B,t),ot(B)),g&&q.mutate(_),D.success("Success! Deleted item.",{duration:1e3})}catch{D.error("Failed to delete the item.",{duration:1e3})}},H=[{title:"Route",dataIndex:"route_title"},{title:"Vehicle Numbers",render:(B,$,N)=>e.jsx(e.Fragment,{children:$.children.map((V,Q,Z)=>e.jsx("span",{children:`${V.vehicle_name} ${Q+1===Z.length?"":","}`},`${Q}vehicle001`))})},{title:"Action",render:(B,$,N)=>e.jsx(e.Fragment,{children:e.jsx(At,{id:$?.route_id,funcName:U})})}],W=B=>{const $=["route_id","index"];for(let N=0;N<$.length;N++)if(B[$[N]])return B[$[N]]},L=B=>{const{children:$=[]}=B||{},N=[{title:"Vehicle Name",dataIndex:"vehicle_name",onCell:V=>({isEditable:!0})},{title:"Driver Name",dataIndex:"driver_name",onCell:V=>({isEditable:!0})},{title:"Driver Contact",dataIndex:"driver_contact_number",onCell:V=>({isEditable:!0})},{title:"Driver Licence",dataIndex:"Driver_licence",onCell:V=>({isEditable:!0})},{title:"Start Time",dataIndex:"start_time",onCell:V=>({isEditable:!0})},{title:"Drop Time",dataIndex:"drop_time",onCell:V=>({isEditable:!0})},{title:"Type",dataIndex:"type",onCell:V=>({isEditable:!0})}];return e.jsx("div",{style:{display:"flex",justifyContent:"center"},children:e.jsx("div",{style:{width:"95%",margin:8},children:e.jsx(s.Table,{components:{body:{cell:Bl}},expandable:{childrenColumnName:"changed"},bordered:!0,size:"small",columns:N,rowKey:V=>W(V)+"cell01",dataSource:$,pagination:!1})})})};return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(w,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Assign Vehicle"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:E,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(220px, 320px) 1fr auto",gap:20,alignItems:"end"},children:[e.jsx("div",{children:e.jsx(ae,{options:z,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",required:!0,allowSelectAll:!1,onChange:B=>{d(B?.value??null),n($=>!$)}})}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:{display:"block",marginBottom:6,fontSize:14,fontWeight:500,color:"#222"},children:"Vehicles"}),e.jsx("div",{style:{borderBottom:"1px solid #d9d9d9",paddingBottom:8,maxHeight:140,overflow:"auto"},children:e.jsx(s.Checkbox.Group,{style:{display:"flex",flexWrap:"wrap",gap:12},options:k,value:c,onChange:B=>h(B),disabled:!l||u})},`check001${a}`)]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Save",color:"primary"}),e.jsx(s.Button,{type:"text",htmlType:"button",onClick:()=>{d(null),h([]),n(B=>!B)},style:ky,children:"Cancel"})]})]})})})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Vehicle List"})}),e.jsx(w,{style:{padding:"10px 16px"},children:e.jsx(s.Table,{components:{body:{cell:Bl}},columns:H,bordered:!0,rowKey:B=>W(B),dataSource:Array.isArray(O)?O:[],loading:b,expandable:{expandedRowRender:L,childrenColumnName:"changed"},pagination:{current:r.pagination.current,pageSize:r.pagination.pageSize,total:M,showSizeChanger:!0,onChange:P,onShowSizeChange:(B,$)=>{o(N=>({...N,pagination:{current:1,pageSize:$}}))},showTotal:(B,$)=>`${$[0]}-${$[1]} of ${B} items`}})})]})})]})})]})}const Ll={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},xi=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},dn=(t,a,n)=>{if(a==null||a==="")return null;const r=t.find(o=>String(o.value)===String(a));return r||(n?{label:String(n),value:a}:{label:String(a),value:a})},Iy=()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")||"{}")?.currency_symbol??""}catch{return""}},Py=t=>{if(t==null||t===""||t==="null"||t==="undefined")return"";if(Array.isArray(t))return t.filter(n=>n!=null&&n!==""&&String(n).toLowerCase()!=="null"&&String(n).toLowerCase()!=="undefined").join(", ");const a=String(t).trim();return!a||a.toLowerCase()==="null"||a.toLowerCase()==="undefined"?"":a};function My({token:t,assignmentId:a,studentName:n,onClose:r,onSuccess:o}){const l="api/branchapi/Transport/showRouteAssignStudent",d="api/branchapi/Transport/updateTransportRoutesStudent",c="api/branchapi/Transport/getrouteDropdown",h="api/branchapi/Transport/getvehicleListByRouteIdwithCount",f="api/branchapi/Transport/getStoppageDropdown",p="api/branchapi/Transport/routeShowdata",[m,v]=i.useState(null),[S,y]=i.useState(null),[g,b]=i.useState(null),[T,R]=i.useState(ne()),[I,A]=i.useState(""),[_,u]=i.useState(0),[x,j]=i.useState(0),{data:M,isLoading:O}=q(t&&a?[`${l}?id=${a}`,t]:null,([le,Ce])=>Y(le,Ce)),z=i.useMemo(()=>{if(!M||M?.Status&&M.Status!=="Success")return null;const le=M?.data??M;return Array.isArray(le)?le[0]??null:le},[M]);i.useEffect(()=>{const le=z?.fk_route_id??z?.route_id;le!=null&&v(le),z?.vehicle_id!=null&&y(z.vehicle_id),z?.stop_id!=null&&b(z.stop_id),R(z?.start_date?ne(z.start_date):ne()),A(Py(z?.service_push))},[z]);const k=t&&m?`${h}?route_id=${m}`:null,F=t&&m?`${p}?id=${m}`:null,C=t&&m?`${f}?route_id=${m}`:null,{data:E}=q(t&&c?[c,t]:null,([le,Ce])=>Y(le,Ce)),{data:P,isLoading:U}=q(k?[k,t]:null,([le,Ce])=>Y(le,Ce)),{data:H,isLoading:W}=q(C?[C,t]:null,([le,Ce])=>Y(le,Ce)),{data:L}=q(F?[F,t]:null,([le,Ce])=>Y(le,Ce)),B=i.useMemo(()=>xi(E),[E]),$=i.useMemo(()=>xi(P),[P]),N=i.useMemo(()=>xi(H),[H]),V=M?.data[0]?.rootCost,Q=Iy(),Z=n||[z?.firstname,z?.lastname].filter(Boolean).join(" ")||"",J=(le,Ce)=>{switch(Ce){case"route_id":v(le?.value??null),y(null),b(null),u(Le=>Le+1),j(Le=>Le+1);break;case"vehicle_id":y(le?.value??null),b(null),j(Le=>Le+1);break;case"stop_id":b(le?.value??null);break}},K=async le=>{if(le.preventDefault(),!m||!S||!g){D.error("Please select Route, Vehicle and Stop",{duration:1200});return}const Ce=new FormData;Ce.append("id",String(a)),Ce.append("student_id",String(z?.fk_student_id??z?.student_id??"")),Ce.append("fk_route_id",String(m)),Ce.append("vehicle_id",String(S)),Ce.append("stop_id",String(g)),Ce.append("rootCost",String(V??"")),Ce.append("start_date",T?.isValid?.()?T.format("YYYY-MM-DD"):ne().format("YYYY-MM-DD")),Ce.append("puse_service",String(I??""));try{await ct(d,Ce,t),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o?.(),r?.()}catch(Le){D.error(Le?.message??"Failed to update the item.",{duration:1e3})}};if(O||!(z&&!O&&(!m||!U&&!W)))return e.jsx("div",{style:{display:"flex",justifyContent:"center",padding:48},children:e.jsx(s.Spin,{})});if(!z)return e.jsxs("div",{style:{padding:"8px 0"},children:[e.jsx("p",{style:{color:"#666",fontSize:14,marginBottom:16},children:"Unable to load assignment details. Please try again."}),e.jsx(s.Button,{type:"text",onClick:r,style:Ll,children:"Close"})]});const ee=z.fk_route_id??z.route_id,pe=dn(B,ee,z.route_title),te=dn($,z.vehicle_id,z.vehicle_name??z.vehicle_no),se=dn(N,z.stop_id,z.stop_name??z.stoppage_name);return e.jsx("form",{onSubmit:K,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(G,{type:"text",name:"title",label:"Student",defaultValue:Z,readOnly:!0}),e.jsx("input",{type:"hidden",name:"student_id",value:z.fk_student_id??z.student_id??""}),e.jsx(ae,{options:B,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",required:!0,allowSelectAll:!1,value:dn(B,m,pe?.label)??null,onChange:le=>J(le,"route_id")}),e.jsx(ae,{options:$,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",required:!0,allowSelectAll:!1,value:dn($,S,te?.label)??null,onChange:le=>J(le,"vehicle_id")},`edit-vehicle-${_}`),e.jsx(ae,{options:N,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Stop",required:!0,allowSelectAll:!1,value:dn(N,g,se?.label)??null,onChange:le=>J(le,"stop_id")},`edit-stop-${x}`),e.jsx(G,{type:"text",label:"Route Cost",value:V!=null?`${Q}${V}`:"",readOnly:!0}),e.jsx("input",{type:"hidden",name:"rootCost",value:V??""}),e.jsx(Ge,{Desplay:"Start Date",placement:"bottomRight",format:"YYYY-MM-DD",allowClear:!1,value:T,onChange:le=>R(le)}),e.jsx(G,{type:"text",label:"Pause Service",value:I,onChange:le=>A(le?.target?.value??""),placeholder:"e.g. 01, 02, 03"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginTop:4},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:r,style:Ll,children:"Cancel"})]})]})},`edit-${a}-${_}`)}const Ul={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},Ey=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Un=t=>Ey(t),Oy=t=>t||"",$y=()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")||"{}")?.currency_symbol??""}catch{return""}},Fy=t=>{const a=String(t??"Drawer").trim().toLowerCase().replace(/\s+/g,"");return a==="page"||a==="sendpage"?"page":"drawer"},By=(t,a)=>{const n=a||"/TransportDashboard/EditAssignStudentTransport?id={id}",r=t?.id??"",o=encodeURIComponent(String(r));if(n.includes("{id}"))return n.replaceAll("{id}",o);if(n.includes(":id"))return n.replace(":id",o);try{const d=new URL(n,"http://localhost");if(d.searchParams.has("id"))return d.searchParams.set("id",String(r)),`${d.pathname}${d.search}${d.hash}`}catch{}const l=n.includes("?")?"&":"?";return`${n}${l}id=${o}`};function Ly({token:t,editType:a,onNavigate:n,editPagePath:r,sampleTemplateUrl:o=rf}){const d=Fy(a)==="drawer",c="api/branchapi/academy/classdropdownlist",h="api/branchapi/academy/sectionoftheClass",f="api/branchapi/Transport/routeStudentList",p="api/branchapi/Transport/getrouteDropdown",m="api/branchapi/Transport/getvehicleListByRouteIdwithCount",v="api/branchapi/Transport/getStoppageDropdown",S="api/branchapi/Transport/routeShowdata",y="api/branchapi/Transport/assignTransportRoutesStudent",g="api/branchapi/transport/removeStudentTransport",b="api/branchapi/transport/assignTransportRoutesStudentBulk",[T,R]=i.useState(null),[I,A]=i.useState(!1),[_,u]=i.useState(!1),[x,j]=i.useState(null),[M,O]=i.useState(null),[z,k]=i.useState(null),[F,C]=i.useState(null),[E,P]=i.useState(!1),[U,H]=i.useState(!1),[W,L]=i.useState({page:1,rowsPerPage:50}),[B,$]=i.useState(null),[N,V]=i.useState(!1),[Q,Z]=i.useState(null),[J,K]=i.useState(null),[X,ee]=i.useState(null),[pe,te]=i.useState(null),[se,le]=i.useState(null),[Ce,Le]=i.useState(null),[Re,xe]=i.useState(null),[Te,Ue]=i.useState(ne()),[ye,me]=i.useState(""),[Pe,Ye]=i.useState(null),[ze,we]=i.useState(!1),[ke,De]=i.useState([]),ce=(Ae,Fe)=>{const bt=Ae?.value??null;switch(Fe){case"class_id":ee(bt),te(null),$(bt?`${h}?class_id=${encodeURIComponent(String(bt))}`:null),A(ua=>!ua);break;case"route_id":le(bt),Le(null),xe(null),K(bt),O(bt?`${m}?route_id=${encodeURIComponent(String(bt))}`:null),k(bt?`${S}?id=${encodeURIComponent(String(bt))}`:null),C(null),P(ua=>!ua),H(ua=>!ua);break;case"vehicle_id":Le(bt),xe(null),C(se?`${v}?route_id=${encodeURIComponent(String(se))}`:null),H(ua=>!ua);break;case"stop_id":xe(bt);break}},ve=Ae=>{if(d){j(Ae),u(!0);return}const Fe=By(Ae,r);if(typeof n=="function"){n(Fe,Ae);return}typeof window<"u"&&Fe&&window.location.assign(Fe)},_e=()=>{u(!1),j(null)},Ve=x?`Edit — ${x.firstname??""} ${x.lastname??""}`.trim():"Edit Student Transport",{data:He}=q(t&&c?[c,t]:null,([Ae,Fe])=>Y(Ae,Fe)),{data:je}=q(t&&B?[B,t]:null,([Ae,Fe])=>Y(Ae,Fe)),{data:Me}=q(t&&M?[M,t]:null,([Ae,Fe])=>Y(Ae,Fe)),{data:rt}=q(t&&F?[F,t]:null,([Ae,Fe])=>Y(Ae,Fe)),{data:vt}=q(t&&z?[z,t]:null,([Ae,Fe])=>Y(Ae,Fe)),{data:na}=q(t&&p?[p,t]:null,([Ae,Fe])=>Y(Ae,Fe)),Vt=t&&T?`${T}&page=${W.page}&per_page=${W.rowsPerPage}`:null,{isLoading:Se,error:Oe,data:oe,mutate:ge}=q(Vt?[Vt,t]:null,([Ae,Fe])=>Y(Ae,Fe)),$e=i.useMemo(()=>Un(He),[He]),Ne=i.useMemo(()=>Un(je),[je]),ht=i.useMemo(()=>Un(Me),[Me]),yt=i.useMemo(()=>Un(rt),[rt]),Dt=i.useMemo(()=>Un(na),[na]),be=vt?.data?.[0]?.fare??vt?.data?.fare??vt?.fare??vt?.data?.data?.[0]?.fare??vt?.data?.data?.fare;i.useEffect(()=>{be==null||be===""||me(String(be))},[be]);const Ie=async Ae=>{try{await ge(st(g,Ae,t),ot(Ae)),D.success("Success! Deleted item.",{duration:1e3})}catch{D.error("Failed to delete the item.",{duration:1e3})}},at=async()=>{if(!Pe){D.error("Please select an Excel file to upload.",{duration:1e3});return}we(!0),De([]);try{const Ae=new FormData;Ae.append("file",Pe);const bt=await(await fetch(`${b}`,{method:"POST",headers:{Authorization:t},body:Ae})).json();if(bt.Status==="Success"){const ua=bt.data?.rows||[];De(ua);const Ko=bt.data?.success_count||0,tm=bt.data?.failed_count||0;D.success(bt.message||`Transport bulk upload completed. ${Ko} succeeded, ${tm} failed.`,{duration:1e3}),Ko>0&&ge()}else D.error(bt.message||"Failed to upload student transport assignments.",{duration:1e3})}catch(Ae){D.error(Ae?.message||"Something went wrong.",{duration:1e3})}finally{we(!1),Ye(null)}},xt=[{title:"Route Status",key:"route_status",render:(Ae,Fe)=>Fe.fk_route_id?e.jsx("span",{children:Fe.route_title}):e.jsx("span",{children:"Not Assigned"})},{title:"Vehicle Assign Date",dataIndex:"start_date",key:"start_date",render:(Ae,Fe)=>Oy(Fe.start_date)},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Roll No",dataIndex:"roll_no",key:"roll_no"},{title:"Name",key:"name",render:(Ae,Fe)=>`${Fe.firstname} ${Fe.lastname}`},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Mobileno",dataIndex:"mobileno",key:"mobileno"},{title:"Action",key:"action",render:(Ae,Fe)=>e.jsx("div",{style:{display:"flex",alignItems:"center",gap:8},children:Fe.fk_route_id?e.jsxs(e.Fragment,{children:[e.jsx(At,{id:Fe?.id,funcName:Ie}),e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>ve(Fe),style:{padding:2}})]}):e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.PlusOutlined,{}),onClick:()=>ti(Fe.student_id),style:{padding:2}})})}],It=async(Ae,Fe)=>{try{await ge(Ze(Ae,Fe,t),pt(Fe)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),V(!1),ai()}catch{D.error("Failed to add the new item.",{duration:1e3})}},Lt=Ae=>{if(Ae.preventDefault(),!X||!pe){D.error("Please select Class and Section",{duration:1200});return}R(`${f}?cID=${encodeURIComponent(String(X))}&sID=${encodeURIComponent(String(pe))}`),L(Fe=>({...Fe,page:1}))},ei=(Ae,Fe)=>{L({page:Ae,rowsPerPage:parseInt(Fe,10)})},ti=Ae=>{Z(Ae),V(!0)},En=Ae=>{if(Ae.preventDefault(),!Q){D.error("Student is required",{duration:1200});return}if(!se||!Ce||!Re){D.error("Please select Route, Vehicle and Stop",{duration:1300});return}const Fe=new FormData;Fe.append("student_id",String(Q)),Fe.append("fk_route_id",String(se)),Fe.append("vehicle_id",String(Ce)),Fe.append("stop_id",String(Re)),Fe.append("start_date",Te?.isValid?.()?Te.format("YYYY-MM-DD"):ne().format("YYYY-MM-DD")),Fe.append("rootCost",String(ye??"")),It(y,Fe)},ai=()=>{V(!1),O(null),k(null),C(null),K(null),le(null),Le(null),xe(null),Ue(ne()),me(""),P(Ae=>!Ae),H(Ae=>!Ae)},em=$y();return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Bulk Assign Students to Transport"})}),e.jsxs(w,{p:3,children:[e.jsxs(s.Row,{gutter:[16,16],align:"middle",children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(s.Upload,{accept:".xlsx",showUploadList:!1,beforeUpload:Ae=>(Ye(Ae),!1),children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),disabled:ze,children:Pe?Pe.name:"Choose Excel File (.xlsx)"})})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(s.Button,{type:"primary",onClick:at,disabled:ze||!Pe,loading:ze,children:ze?"Uploading...":"Upload Students"})})})]}),o&&e.jsx(w,{mt:2,children:e.jsx("a",{href:o,download:!0,style:{color:"#5080f8",fontSize:13,textDecoration:"none"},children:"Download sample Excel template"})}),ke.length>0&&e.jsxs(w,{mt:3,children:[e.jsx(he,{level:5,children:"Upload Results"}),e.jsx(s.Table,{dataSource:ke.map((Ae,Fe)=>({...Ae,key:Fe})),pagination:!1,size:"small",bordered:!0,columns:[{title:"Row",dataIndex:"row",width:80},{title:"Student ID",dataIndex:"student_id"},{title:"Status",dataIndex:"status",render:Ae=>e.jsx("span",{style:{color:Ae==="Success"?"green":"red",fontWeight:500},children:Ae})},{title:"Message",dataIndex:"message"}]})]})]})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Search Students"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:Lt,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(ae,{options:$e,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",onChange:Ae=>ce(Ae,"class_id"),required:!0,allowSelectAll:!1,value:$e.find(Ae=>String(Ae.value)===String(X))??null})})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(ae,{options:Ne,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",allowSelectAll:!1,required:!0,value:Ne.find(Ae=>String(Ae.value)===String(pe))??null,onChange:Ae=>te(Ae?.value??null)},`section1${I}`)})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsxs(w,{display:"flex",alignItems:"center",height:"100%",mt:2,children:[e.jsx(de,{type:"submit",value:"Search",color:"primary"}),e.jsx(s.Button,{type:"text",htmlType:"button",onClick:()=>{R(null),$(null),ee(null),te(null),A(Ae=>!Ae)},style:Ul,children:"Cancel"})]})})]})})})]})}),T&&e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(w,{p:3,children:e.jsx(Ke,{parentCallback:ei,data:{newData:oe,columns:xt,columnstype:"antd",action:!1,Loading:Se,error:Oe,deleteTodoMutation:Ie,pageController:W}})})]})})]}),e.jsx(s.Drawer,{open:_,title:Ve,placement:"right",width:420,destroyOnClose:!0,onClose:_e,children:x?.id&&e.jsx(My,{token:t,assignmentId:x.id,studentName:`${x.firstname??""} ${x.lastname??""}`.trim(),onClose:_e,onSuccess:()=>ge()})}),e.jsx(s.Modal,{open:N,title:"Assign Student to Transport",onCancel:ai,footer:null,width:640,destroyOnClose:!0,children:e.jsx("form",{onSubmit:En,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:Dt,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",required:!0,allowSelectAll:!1,value:Dt.find(Ae=>String(Ae.value)===String(se))??null,onChange:Ae=>ce(Ae,"route_id")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:ht,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",required:!0,allowSelectAll:!1,value:ht.find(Ae=>String(Ae.value)===String(Ce))??null,onChange:Ae=>ce(Ae,"vehicle_id")},`vehicle001${E}`)})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:yt,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Stop",required:!0,allowSelectAll:!1,value:yt.find(Ae=>String(Ae.value)===String(Re))??null,onChange:Ae=>ce(Ae,"stop_id")},`stop001${U}`)})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{Desplay:"Start Date",placement:"bottomRight",format:"YYYY-MM-DD",value:Te,onChange:Ae=>Ue(Ae)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{type:"text",name:"rootCost",label:"Route Cost",value:ye,onChange:Ae=>me(Ae?.target?.value??"")})})}),e.jsx(s.Col,{xs:24,children:e.jsxs(w,{display:"flex",alignItems:"center",gap:12,children:[e.jsx(de,{type:"submit",value:String(ye??"").trim()?`${em}${ye} — Assign`:"Assign",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:ai,style:Ul,children:"Cancel"})]})})]})})})]})}const Nl={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},Es={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"};function Uy({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:50}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c,h]=i.useState(""),[f,p]=i.useState(""),[m,v]=i.useState(""),[S,y]=i.useState(!1),g=`api/branchapi/Transport/getdriverTable?page=${a.page}&per_page=${a.rowsPerPage}`,b="api/branchapi/Transport/add_driver",T="api/branchapi/Transport/edit_driver",R="api/branchapi/Transport/deletedriver",I="api/branchapi/staff/uploadDocuments",A=i.useMemo(()=>String(I).startsWith("http")?I:`${Nt()??""}${String(I).replace(/^\/+/,"")}`,[I]),_=Nt()??"",{isLoading:u,data:x,error:j,mutate:M}=q(t?[g,t]:null,([W,L])=>Y(W,L)),O=async(W,L)=>{try{await Ze(W,L,t),await M(),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),h("")}catch(B){D.error(B?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},z=W=>{W.preventDefault();const L=new FormData(W.target);O(b,L),W.target.reset()},k=async W=>{try{await M(st(R,W,t),ot(W)),D.success("Success! Deleted item.",{duration:1e3})}catch{D.error("Failed to delete the item.",{duration:1e3})}},F=W=>{d(W),h(W?.image??""),o(!0)},C=async W=>{try{await ct(T,W,t),await M(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),d(null),h("")}catch(L){D.error(L?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},E=W=>{W.preventDefault();const L=new FormData(W.target);L.append("id",l?.id??""),C(L)},P=(W,L)=>{n({page:W,rowsPerPage:parseInt(L,10)})},U=[{title:"Driver Name",dataIndex:"name",key:"name",sorter:{compare:(W,L)=>String(W?.name??"").localeCompare(String(L?.name??""))}},{title:"Driver Licence",dataIndex:"Driver_licence",key:"Driver_licence",sorter:{compare:(W,L)=>String(W?.Driver_licence??"").localeCompare(String(L?.Driver_licence??""))}},{title:"Contact",dataIndex:"contact_number",key:"contact_number",sorter:{compare:(W,L)=>Number(W?.contact_number??0)-Number(L?.contact_number??0)}},{title:"Address",dataIndex:"address",key:"address",sorter:{compare:(W,L)=>String(W?.address??"").localeCompare(String(L?.address??""))}},{title:"Image",key:"image",width:100,render:(W,L)=>{const B=L?.image?`${_}staff/document/${L.image}`:"";return B?e.jsx("div",{style:{display:"flex",justifyContent:"center"},children:e.jsx(s.Image,{width:80,src:B,preview:{visible:!1,onVisibleChange:()=>{y(!0),p(B),v(L?.name??"Driver")}}})}):null}},{title:"Action",key:"action",render:(W,L)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>F(L),style:{padding:2}}),e.jsx(At,{id:L?.id,funcName:k})]})}],H=l?.name?`Edit ${l.name}`:"Edit Driver";return e.jsxs("div",{children:[e.jsx(s.Drawer,{open:r,title:H,placement:"right",width:420,destroyOnClose:!0,onClose:()=>{o(!1),d(null),h("")},children:e.jsx("form",{onSubmit:E,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(G,{type:"text",name:"name",label:"Driver Name",defaultValue:l?.name??"",required:"required"}),e.jsx(G,{type:"text",name:"Driver_licence",label:"Driver Licence",defaultValue:l?.Driver_licence??"",required:"required"}),e.jsx(G,{type:"number",name:"contact_number",label:"Driver Contact",defaultValue:l?.contact_number??"",required:"required"}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:Es,children:"Address"}),e.jsx(s.Input.TextArea,{name:"address",defaultValue:l?.address??"",rows:2,style:{width:"100%",border:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",paddingLeft:0,paddingRight:0}})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:Es,children:"Image"}),e.jsx(s.Upload,{maxCount:1,action:A,headers:t?{Authorization:t}:void 0,onChange:W=>{if(W?.file?.status!=="done")return;const L=W?.file?.response,B=L?.data??L?.filename??L?.file??L?.path??"";B&&h(String(B))},children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),disabled:!A,children:"Upload"})}),e.jsx("input",{type:"hidden",name:"file",value:c})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null),h("")},style:Nl,children:"Cancel"})]})]})})}),e.jsx(s.Modal,{zIndex:9999,open:S,title:m,footer:null,onCancel:()=>y(!1),children:e.jsx("img",{alt:"preview",style:{width:"100%"},src:f})}),e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(w,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Driver"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:z,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(G,{type:"text",name:"name",label:"Driver Name",required:"required"}),e.jsx(G,{type:"text",name:"Driver_licence",label:"Driver Licence",required:"required"}),e.jsx(G,{type:"number",name:"contact_number",label:"Driver Contact",required:"required"}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:Es,children:"Address"}),e.jsx(s.Input.TextArea,{name:"address",rows:2,style:{width:"100%",border:0,borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none",paddingLeft:0,paddingRight:0}})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:Es,children:"Image"}),e.jsx(s.Upload,{maxCount:1,action:A,headers:t?{Authorization:t}:void 0,onChange:W=>{if(W?.file?.status!=="done")return;const L=W?.file?.response,B=L?.data??L?.filename??L?.file??L?.path??"";B&&h(String(B))},children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),disabled:!A,children:"Upload"})}),e.jsx("input",{type:"hidden",name:"file",value:c})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Save",color:"primary"}),e.jsx(s.Button,{type:"text",htmlType:"reset",onClick:()=>h(""),style:Nl,children:"Cancel"})]})]})})})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Driver List"})}),e.jsx(w,{children:e.jsx(Ke,{parentCallback:P,data:{newData:x,columns:U,columnstype:"antd",action:!1,Loading:u,error:j,deleteTodoMutation:k}})})]})})]})})]})}const zl={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},cn={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Os={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},ql=[{label:"Pick",value:"pick"},{label:"Drop",value:"drop"}],$s=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function Ny({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:50}),[r,o]=i.useState(!1),[l,d]=i.useState(!1),[c,h]=i.useState(null),[f,p]=i.useState(null),[m,v]=i.useState(null),[S,y]=i.useState(null),[g,b]=i.useState(ne()),[T,R]=i.useState(ne()),[I,A]=i.useState("pick"),[_,u]=i.useState(!1),[x,j]=i.useState(null),[M,O]=i.useState(null),[z,k]=i.useState(!1),[F,C]=i.useState(null),[E,P]=i.useState(null),[U,H]=i.useState(null),[W,L]=i.useState(null),[B,$]=i.useState(ne()),[N,V]=i.useState(ne()),[Q,Z]=i.useState("pick"),J=`api/branchapi/Transport/assignRouteTimeList?page=${a.page}&per_page=${a.rowsPerPage}`,K="api/branchapi/Transport/assignRouteTime",X="api/branchapi/Transport/editAssignRouteTime",ee="api/branchapi/Transport/deleteAssignRouteTime",pe="api/branchapi/Transport/driverDropdown",te="api/branchapi/transport/routeTimetableShowdata",se="api/branchapi/Transport/getrouteDropdown",le="api/branchapi/Transport/getvehicleDropdown",{isLoading:Ce,data:Le,error:Re,mutate:xe}=q(t?[J,t]:null,([Se,Oe])=>Y(Se,Oe)),{data:Te}=q(t&&se?[se,t]:null,([Se,Oe])=>Y(Se,Oe)),{data:Ue}=q(t&&pe?[pe,t]:null,([Se,Oe])=>Y(Se,Oe)),ye=i.useMemo(()=>c?`${le}?route_id=${c}`:null,[c,le]),{data:me}=q(t&&ye?[ye,t]:null,([Se,Oe])=>Y(Se,Oe)),Pe=i.useMemo(()=>$s(Te),[Te]),Ye=i.useMemo(()=>$s(Ue),[Ue]),ze=i.useMemo(()=>$s(me),[me]),we=(Se,Oe)=>{n({page:Se,rowsPerPage:parseInt(Oe,10)})},ke=async Se=>{Se.preventDefault();const Oe=new FormData(Se.target);Oe.set("route_id",f?.value??c??""),Oe.set("driver_id",m?.value??""),Oe.set("vehicle_id",S?.value??""),Oe.set("start_time",g?g.format("h:mm a"):""),Oe.set("drop_time",T?T.format("h:mm a"):""),Oe.set("type",I);try{await Ze(K,Oe,t),await xe(),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),Se.target.reset(),h(null),p(null),v(null),y(null),d(oe=>!oe),b(ne()),R(ne()),A("pick"),o(oe=>!oe)}catch(oe){D.error(oe?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},De=async Se=>{try{await st(ee,Se,t),await xe(),D.success("Success! Deleted item.",{duration:1e3})}catch(Oe){D.error(Oe?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},ce=Se=>{j(Se),u(!0);const Oe=Se?.id??Se?.route_time_id??Se?.routeId??null;O(Oe);const oe=Se?.route_id??Se?.routeId??Se?.fk_route_id;C(oe??null),P(Pe.find(ge=>ge?.value===(oe??Se?.route_id))??null),H(Ye.find(ge=>ge?.value===(Se?.driver_id??Se?.driverId))??null),L(null),k(ge=>!ge),$(Se?.start_time?ne(Se.start_time,["h:mm a","HH:mm"]):ne()),V(Se?.drop_time?ne(Se.drop_time,["h:mm a","HH:mm"]):ne()),Z(Se?.type??"pick")},ve=i.useMemo(()=>{if(!M)return null;const Se=String(te).includes("?")?"&":"?";return`${te}${Se}id=${encodeURIComponent(String(M))}`},[M,te]),{data:_e,isLoading:Ve}=q(t&&ve?[ve,t]:null,([Se,Oe])=>Y(Se,Oe)),He=i.useMemo(()=>{const Se=_e?.data??_e;return Array.isArray(Se)?Se[0]??null:Array.isArray(Se?.data)?Se.data[0]??null:Se??null},[_e]),je=i.useMemo(()=>F?`${le}?route_id=${F}`:null,[F,le]),{data:Me}=q(t&&je?[je,t]:null,([Se,Oe])=>Y(Se,Oe)),rt=i.useMemo(()=>$s(Me),[Me]);i.useEffect(()=>{if(!He)return;const Se=He?.route_id??He?.fk_route_id??He?.routeId;C(Se??null),P(Pe.find(Oe=>Oe?.value===Se)??null),H(Ye.find(Oe=>Oe?.value===He?.driver_id)??null),L(null),$(He?.start_time?ne(He.start_time,["h:mm a","HH:mm"]):ne()),V(He?.drop_time?ne(He.drop_time,["h:mm a","HH:mm"]):ne()),Z(He?.type??"pick"),k(Oe=>!Oe)},[Ye,He,Pe]),i.useEffect(()=>{if(!He)return;const Se=He?.vehicle_id??He?.vehicleId;Se&&L(rt.find(Oe=>Oe?.value===Se)??null)},[He,rt]);const vt=async Se=>{if(Se.preventDefault(),!M)return;const Oe=new FormData(Se.target);Oe.set("id",String(M)),Oe.set("route_id",E?.value??F??""),Oe.set("driver_id",U?.value??""),Oe.set("vehicle_id",W?.value??""),Oe.set("start_time",B?B.format("h:mm a"):""),Oe.set("drop_time",N?N.format("h:mm a"):""),Oe.set("type",Q);try{await ct(X,Oe,t),await xe(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),u(!1),j(null)}catch(oe){D.error(oe?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},na=[{title:"Route Name",dataIndex:"route_title",key:"route_title"},{title:"Driver Name",dataIndex:"driver_name",key:"driver_name"},{title:"Vehicle Name",dataIndex:"vehicle_name",key:"vehicle_name"},{title:"Start Time",dataIndex:"start_time",key:"start_time"},{title:"End Time",dataIndex:"drop_time",key:"drop_time"},{title:"Type",dataIndex:"type",key:"type"},{title:"Action",key:"action",render:(Se,Oe)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>ce(Oe),style:{padding:2}}),e.jsx(At,{id:Oe?.id??Oe?.routeId??Oe?.route_time_id,funcName:De})]})}],Vt=x?.route_title?`Edit ${x.route_title}`:"Edit Route Time";return e.jsxs("div",{children:[e.jsx(s.Drawer,{open:_,title:Vt,placement:"right",width:420,destroyOnClose:!0,onClose:()=>{u(!1),j(null),O(null),C(null),P(null),H(null),L(null)},children:e.jsx("form",{onSubmit:vt,children:e.jsxs("div",{style:{display:"grid",gap:20,opacity:Ve?.6:1},children:[e.jsx(ae,{options:Pe,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",required:!0,allowSelectAll:!1,value:E,onChange:Se=>{C(Se?.value??null),P(Se??null),L(null),k(Oe=>!Oe)}}),e.jsx(ae,{options:Ye,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Driver",name:"driver_id",required:!0,allowSelectAll:!1,value:U,onChange:Se=>H(Se??null)}),e.jsx(ae,{options:rt,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",name:"vehicle_id",required:!0,allowSelectAll:!1,value:W,onChange:Se=>L(Se??null)},`edit-vehicle-${z}`),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:cn,children:"Start Time"}),e.jsx(s.TimePicker,{value:B,onChange:Se=>$(Se),use12Hours:!0,format:"h:mm a",allowClear:!1,style:Os})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:cn,children:"Drop Time"}),e.jsx(s.TimePicker,{value:N,onChange:Se=>V(Se),use12Hours:!0,format:"h:mm a",allowClear:!1,style:Os})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:cn,children:"Type"}),e.jsx("div",{style:{borderBottom:"1px solid #d9d9d9",paddingBottom:6},children:e.jsx(s.Radio.Group,{options:ql,optionType:"button",buttonStyle:"solid",value:Q,onChange:Se=>Z(Se.target.value)})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{u(!1),j(null)},style:zl,children:"Cancel"})]})]})})}),e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(w,{pt:5,pb:1,children:e.jsxs("div",{children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Route Time Table"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:ke,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:Pe,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",value:f,onChange:Se=>{h(Se?.value??null),p(Se??null),y(null),d(Oe=>!Oe)},allowSelectAll:!1,required:!0}),e.jsx(ae,{options:Ye,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Driver",name:"driver_id",value:m,onChange:Se=>v(Se??null),allowSelectAll:!1,required:!0}),e.jsx(ae,{options:ze,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vehicle",name:"vehicle_id",value:S,onChange:Se=>y(Se??null),allowSelectAll:!1,required:!0},`vehicle-${l}`),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:cn,children:"Start Time"}),e.jsx(s.TimePicker,{value:g,onChange:Se=>b(Se),use12Hours:!0,format:"h:mm a",allowClear:!1,style:Os})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:cn,children:"Drop Time"}),e.jsx(s.TimePicker,{value:T,onChange:Se=>R(Se),use12Hours:!0,format:"h:mm a",allowClear:!1,style:Os})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("label",{className:"labelfont",style:cn,children:"Type"}),e.jsx("div",{style:{borderBottom:"1px solid #d9d9d9",paddingBottom:6},children:e.jsx(s.Radio.Group,{options:ql,optionType:"button",buttonStyle:"solid",value:I,onChange:Se=>A(Se.target.value)})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Add",color:"primary"}),e.jsx(s.Button,{type:"text",htmlType:"reset",onClick:()=>{h(null),p(null),v(null),y(null),d(Se=>!Se),b(ne()),R(ne()),A("pick"),o(Se=>!Se)},style:zl,children:"Cancel"})]})]})},`form-${r}`)})]}),e.jsx("div",{style:{marginTop:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Route Time List"})}),e.jsx(w,{children:e.jsx(Ke,{parentCallback:we,data:{newData:Le,columns:na,columnstype:"antd",action:!1,Loading:Ce,error:Re,deleteTodoMutation:De}})})]})})]})})]})}const zy={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},Yl={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Wl={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},Vl=({dataIndex:t,title:a,record:n,children:r,isEditable:o,...l})=>e.jsx("td",{...l,children:o?e.jsx("div",{style:{display:"flex",marginLeft:"5%"},children:r}):r});let Hl=2;function qy({token:t}){const[a,n]=i.useState([]),[r,o]=i.useState(null),[l,d]=i.useState([]),[c,h]=i.useState({pagination:{current:1,pageSize:50}}),{isLoading:f,data:p,mutate:m}=q(t?[`api/branchapi/transport/getrouteStoppageData?page=${c.pagination.current}&per_page=${c.pagination.pageSize}`,t]:null,([C,E])=>Y(C,E)),{Status:v="Failed",pagination:{total_rows:S=0}={}}=p||{},{data:y=[]}=v==="Success"?p:{},{data:g}=q(t?["api/branchapi/Transport/getrouteDropdown",t]:null,([C,E])=>Y(C,E)),b=i.useMemo(()=>{const C=g?.data??g??[];if(Array.isArray(C))return C;if(C&&typeof C=="object"){if(Array.isArray(C?.data))return C.data;if(Array.isArray(C?.data?.data))return C.data.data}return[]},[g]),{data:T}=q(t&&r?["api/branchapi/transport/getrouteStoppageData?route_id="+r,t]:null,([C,E])=>Y(C,E)),{Status:R="Failed"}=T||{},I=async(C,E)=>{try{await m(Ze(C,E,t),pt(E)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{D.error("Failed to add the new item.",{duration:1e3})}},A=C=>C?typeof C=="string"?C:C?.isValid?.()?C.format("h:mm a"):"":"",_=(C,E=[])=>{const P=(Array.isArray(C)?C:[]).map(W=>({id:W?.id??"",name:String(W?.stop_name??W?.name??"").trim(),pickTime:A(W?.pickup_time??W?.pickTime??W?.pickupTime),drop_time:A(W?.drop_time??W?.dropTime)})),U=P.filter(W=>W?.id!=null&&String(W.id).trim()!==""),H=P.filter(W=>!(W?.id!=null&&String(W.id).trim()!==""));return{route_id:r??"",edit_stoppage:U,add_stoppage:H,delete_stoppage:Array.isArray(E)?E:[]}},u=C=>{C.preventDefault();const E="/api/branchapi/transport/addstoppageToRoute",P=_(a,l);I(E,P)},x=()=>{n(C=>[...Array.isArray(C)?C:[],{idKey:Hl++,stop_name:"",pickup_time:ne().format("h:mm a"),drop_time:ne().format("h:mm a")}])},j=C=>{if(a.length===1)return;const E=a[C];E?.id!=null&&String(E.id).trim()!==""&&!E?.idKey&&d(P=>{const U=Array.isArray(P)?P:[];return U.some(W=>String(W)===String(E.id))?U:[...U,E.id]}),n(P=>{const U=[...P];return U.splice(C,1),U})},M=C=>{h(E=>({...E,pagination:{current:C,pageSize:E.pagination.pageSize}}))},O=async C=>{const E="/api/branchapi/Transport/deletevehicle";try{await m(st(E,C,t),ot(C)),D.success("Success! Deleted item.",{duration:1e3})}catch{D.error("Failed to delete the item.",{duration:1e3})}};i.useEffect(()=>{if(R==="Success"){const C=Array.isArray(T?.data)?T.data:[];C.length>0?(n(C),d([])):r&&(n([{idKey:Hl++,stop_name:"",pickup_time:ne().format("h:mm a"),drop_time:ne().format("h:mm a")}]),d([]))}},[R,T,r]);const z=C=>{const{children:E=[]}=C||{},P=[{title:"Stop Name",dataIndex:"stop_name",onCell:U=>({isEditable:!0})},{title:"Pick Time",dataIndex:"pickup_time",onCell:U=>({isEditable:!0})},{title:"Drop Name",dataIndex:"drop_time",onCell:U=>({isEditable:!0})}];return e.jsx("div",{style:{display:"flex",justifyContent:"center"},children:e.jsx("div",{style:{width:"95%",margin:8},children:e.jsx(s.Table,{components:{body:{cell:Vl}},expandable:{childrenColumnName:"changed"},bordered:!0,columns:P,rowKey:U=>k(U)+"cell01",dataSource:E,pagination:!1})})})},k=C=>{const E=["id","index"];for(let P=0;P<E.length;P++)if(C[E[P]])return C[E[P]]},F=[{title:"Route",dataIndex:"route_title"},{title:"Stoppages",render:(C,E,P)=>e.jsx(e.Fragment,{children:(Array.isArray(E.children)?E.children:[]).map((U,H,W)=>e.jsx("span",{children:`${U.stop_name} ${H+1===W.length?"":","}`},`${H}vehicle001`))})},{title:"Action",render:(C,E,P)=>e.jsx(e.Fragment,{children:e.jsx(At,{id:E?.route_id,funcName:O})})}];return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(w,{pt:5,pb:1,children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Route Time Table"})}),e.jsx(w,{px:3,pb:2,children:e.jsxs("form",{onSubmit:u,children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx("div",{children:e.jsx(ae,{options:b,value:b.find(C=>String(C.value)===String(r))??null,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Route",name:"route_id",onChange:C=>{o(C?.value??null),n([]),d([])},allowSelectAll:!1,required:!0})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-start",gap:12},children:r&&e.jsx("button",{type:"button",style:{padding:2,border:"none",background:"transparent",cursor:"pointer",marginBottom:8},title:"Add Row",onClick:x,children:e.jsx(re.PlusCircleOutlined,{style:{fontSize:24,color:"#28a745"}})})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:[e.jsx(de,{type:"submit",value:"Add",color:"primary"}),e.jsx(s.Button,{type:"text",htmlType:"button",onClick:()=>{o(null),n([]),d([])},style:zy,children:"Cancel"})]})]}),e.jsx("div",{style:{marginTop:20},children:a.length>0&&a.map((C,E)=>{const P=C.pickup_time?ne(C.pickup_time,"h:mm a"):null,U=C.drop_time?ne(C.drop_time,"h:mm a"):null;return e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr)) auto",gap:16,alignItems:"end",marginBottom:12},children:[e.jsxs("div",{children:[e.jsx(G,{value:C.stop_name??"",type:"text",name:`stoppage[${E}][name]`,label:"Place Name*",required:"required",onChange:H=>{const W=H?.target?.value??"";n(L=>{const B=[...L];return B[E]={...B[E]??{},stop_name:W},B})}}),C?.id!=null&&String(C.id).trim()!==""&&e.jsx("input",{type:"hidden",name:`stoppage[${E}][id]`,value:String(C.id)})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:Yl,children:"Pick Time"}),e.jsx(s.TimePicker,{value:P,use12Hours:!0,format:"h:mm a",name:`stoppage[${E}][pickTime]`,allowClear:!1,style:Wl,onChange:H=>{const W=H?H.format("h:mm a"):"";n(L=>{const B=[...L];return B[E]={...B[E]??{},pickup_time:W},B})}})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:Yl,children:"Drop Time"}),e.jsx(s.TimePicker,{value:U,use12Hours:!0,format:"h:mm a",name:`stoppage[${E}][drop_time]`,allowClear:!1,style:Wl,onChange:H=>{const W=H?H.format("h:mm a"):"";n(L=>{const B=[...L];return B[E]={...B[E]??{},drop_time:W},B})}})]}),e.jsx("div",{style:{marginBottom:8},children:a.length>1&&e.jsx("button",{type:"button",style:{padding:2,border:"none",background:"transparent",cursor:"pointer"},onClick:()=>j(E),children:e.jsx(re.MinusCircleOutlined,{style:{fontSize:20,color:"#dc3545"}})})})]},C.idKey?C.idKey+"exp":C.id+"exp")})})]})}),e.jsx(w,{mx:2,mt:1,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Stoppage List"})}),e.jsx(w,{style:{padding:"10px 16px"},children:e.jsx(s.Table,{components:{body:{cell:Vl}},columns:F,bordered:!0,size:"small",rowKey:C=>k(C),dataSource:y,loading:f,expandable:{expandedRowRender:z,childrenColumnName:"changed"},pagination:{current:c.pagination.current,pageSize:c.pagination.pageSize,total:S,showSizeChanger:!0,onChange:M,onShowSizeChange:(C,E)=>{h(P=>({...P,pagination:{current:1,pageSize:E}}))},showTotal:(C,E)=>`${E[0]}-${E[1]} of ${C} items`}})})]})]})}const{Step:Fs}=s.Steps;function Yy({token:t}){const[a,n]=i.useState(0),[r,o]=i.useState(void 0),[l,d]=i.useState(void 0),[c,h]=i.useState(!1),[f,p]=i.useState(null),[m,v]=i.useState(!1),[S,y]=i.useState(!1),[g,b]=i.useState(!1),[T,R]=i.useState([]),[I,A]=i.useState(null),[_,u]=i.useState(null),[x,j]=i.useState(!1),{isLoading:M,data:O}=q(t?[oa,t]:null,([$,N])=>Y($,N)),{isLoading:z,data:k}=q(x?[x,t]:null,([$,N])=>Y($,N)),{data:F}=q(c?[c,t]:null,([$,N])=>Y($,N)),C=i.useMemo(()=>[{title:"Excel Row",dataIndex:"row",width:90,render:$=>$??"-"},{title:"Student Name",dataIndex:"student_name_system",render:$=>$?e.jsx("span",{style:{color:"#d97706"},children:$}):"-"},{title:"Route",dataIndex:"route",render:$=>$||"-"},{title:"Vehicle",dataIndex:"vehicle",render:$=>$||"-"},{title:"Stop",dataIndex:"stop",render:$=>$||"-"},{title:"Start Date",dataIndex:"start_date",render:$=>$||"-"},{title:"Transport Fee",dataIndex:"transport_fee",render:$=>$??"-"},{title:"Status",dataIndex:"status",width:110,render:$=>{const V={Valid:"success",Invalid:"error",Duplicate:"warning",Imported:"success",Skipped:"warning",Failed:"error"}[$]||"default";return e.jsx("span",{style:{color:V,fontWeight:500},children:$})}},{title:"Message",dataIndex:"message",render:$=>$?e.jsx("span",{style:{color:"#dc2626"},children:$}):"-"}],[]),E=()=>{p(null),v(!1),y(!1),b(!1),R([]),A(null),u(null),o(void 0),d(void 0),h(!1),n(0)},P=async()=>{try{const $=await Nf({class_id:r?.value,section_id:l?.value},t),N=window.URL.createObjectURL($),V=document.createElement("a");V.href=N,V.download="transport-bulk-template.xlsx",document.body.appendChild(V),V.click(),document.body.removeChild(V),window.URL.revokeObjectURL(N),D.success("Template downloaded.",{duration:1e3})}catch($){D.error($?.message||"Failed to download template.",{duration:1e3})}},U=async()=>{if(!f){D.error("Please select an Excel file to upload.",{duration:1e3});return}y(!0),R([]),A(null),u(null);try{const $=await zf(f,t);if($.Status!=="Success"){D.error($.msg||"Validation failed.",{duration:1e3}),y(!1);return}A($.data?.summary||null),R($.data?.rows||[]),n(2),D.success($.msg||"Validation complete.",{duration:1e3})}catch($){D.error($?.message||"Validation failed.",{duration:1e3})}finally{y(!1)}},H=async()=>{if(!T.length){D.error("No rows provided to import.",{duration:1e3});return}b(!0),u(null);try{const $=await qf(T,t,"skip");if($.Status!=="Success"){D.error($.msg||"Import failed.",{duration:1e3}),b(!1);return}u($.data||null),n(3),D.success($.msg||"Import completed.",{duration:1e3})}catch($){D.error($?.message||"Import failed.",{duration:1e3})}finally{b(!1)}},W=async $=>{if(!$||!$.length){D.error("No rows provided.",{duration:1e3});return}try{const N=await Yf($,t),V=window.URL.createObjectURL(N),Q=document.createElement("a");Q.href=V,Q.download="transport-bulk-error-report.xlsx",document.body.appendChild(Q),Q.click(),document.body.removeChild(Q),window.URL.revokeObjectURL(V),D.success("Error report downloaded.",{duration:1e3})}catch(N){D.error(N?.message||"Failed to download error report.",{duration:1e3})}},L=i.useMemo(()=>T.length?(_?_.rows:T).filter(N=>!["Valid","Imported"].includes(N.status)):[],[T,_]),B={background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"};return e.jsx(w,{pt:5,pb:1,children:e.jsx(s.Row,{gutter:[16,16],children:e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:B,children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Transport / Bulk Upload"})}),e.jsxs(w,{p:3,children:[e.jsxs(s.Steps,{current:a,style:{marginBottom:16},children:[e.jsx(Fs,{title:"Download Template"}),e.jsx(Fs,{title:"Upload & Validate"}),e.jsx(Fs,{title:"Review"}),e.jsx(Fs,{title:"Import Result"})]}),a===0&&e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:4,children:e.jsx(w,{children:e.jsx(ae,{label:"Class",options:Array.isArray(O)?O:[],value:r,onChange:$=>{o($),$?h(`${la}?class_id=${$.value}`):(d(void 0),h(!1))},showSearch:!0,allowClear:!0})})}),e.jsx(s.Col,{xs:24,md:4,children:e.jsx(w,{children:e.jsx(ae,{label:"Section",options:Array.isArray(F)?F:[],value:l,onChange:d,showSearch:!0,allowClear:!0})})}),e.jsx(s.Col,{xs:24,md:4,style:{marginTop:20},children:e.jsx(w,{children:e.jsx(s.Button,{type:"primary",onClick:P,block:!0,children:"Download Excel Template"})})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{mt:1,children:e.jsx(s.Button,{type:"primary",onClick:()=>n(1),children:"Next: Upload Excel"})})})]}),a===1&&e.jsxs(s.Row,{gutter:[16,16],align:"middle",children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsxs(w,{children:[e.jsx(s.Upload,{accept:".xlsx",showUploadList:!1,beforeUpload:$=>(p($),!1),children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),block:!0,disabled:m||S,children:f?f.name:"Choose Excel File (.xlsx)"})}),f&&e.jsxs(w,{mt:.5,display:"flex",alignItems:"center",gap:1,children:[e.jsxs(he,{level:6,color:"textSecondary",children:[(f.size/1024).toFixed(1)," KB"]}),e.jsx(s.Button,{size:"small",danger:!0,onClick:()=>p(null),children:"Remove"})]})]})}),e.jsx(s.Col,{xs:24,md:3,children:e.jsx(w,{children:e.jsx(de,{type:"button",value:S?"Validating...":"Validate & Preview",color:"primary",onClick:U,disabled:S||!f})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Button,{type:"text",size:"small",onClick:()=>{E(),n(0)},children:"Back"})})]}),a===2&&e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsx(he,{level:6,color:"textSecondary",children:"Total"}),e.jsx(he,{level:4,children:I?.total??T.length})]})})}),e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsx(he,{level:6,color:"textSecondary",children:"Valid"}),e.jsx(he,{level:4,style:{color:"#52c41a"},children:I?.valid??0})]})})}),e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsx(he,{level:6,color:"textSecondary",children:"Invalid"}),e.jsx(he,{level:4,style:{color:"#ff4d4f"},children:I?.invalid??0})]})})}),e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsx(he,{level:6,color:"textSecondary",children:"Duplicate"}),e.jsx(he,{level:4,style:{color:"#faad14"},children:I?.duplicate??0})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{style:{maxHeight:400,overflow:"auto",width:"100%"},children:e.jsx(s.Table,{dataSource:T.map(($,N)=>({...$,key:`${$.row}-${N}`})),columns:C,size:"small",bordered:!0,scroll:{x:!0},pagination:{pageSize:10,showSizeChanger:!0,showTotal:($,N)=>`${N[0]}-${N[1]} of ${$} items`}})})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Row,{gutter:[8,8],align:"middle",children:[e.jsx(s.Col,{children:e.jsx(de,{type:"button",value:g?"Importing...":"Import Valid Rows",color:"primary",onClick:H,disabled:g})}),e.jsx(s.Col,{children:e.jsx(s.Button,{size:"small",onClick:()=>W(L),disabled:!L.length,children:"Download Error Report"})}),e.jsx(s.Col,{children:e.jsx(s.Button,{type:"text",size:"small",onClick:()=>{E(),n(1)},children:"Upload Another File"})})]})})]}),a===3&&e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsxs(he,{level:6,color:"textSecondary",children:["Total "," "]}),e.jsx(he,{level:4,children:_?.total??0})]})})}),e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsxs(he,{level:6,color:"textSecondary",children:["Imported "," "]}),e.jsx(he,{level:4,style:{color:"#52c41a"},children:_?.imported??0})]})})}),e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsxs(he,{level:6,color:"textSecondary",children:["Skipped "," "]}),e.jsx(he,{level:4,style:{color:"#faad14"},children:_?.skipped??0})]})})}),e.jsx(s.Col,{xs:6,md:3,children:e.jsx(s.Card,{children:e.jsxs(w,{p:1.5,children:[e.jsxs(he,{level:6,color:"textSecondary",children:["Failed "," "]}),e.jsx(he,{level:4,style:{color:"#ff4d4f"},children:_?.failed??0})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{style:{maxHeight:400,overflow:"auto",width:"100%"},children:e.jsx(s.Table,{dataSource:(_?.rows||[]).map(($,N)=>({...$,key:`${$.row}-${N}`})),columns:C,size:"small",bordered:!0,scroll:{x:!0},pagination:{pageSize:10,showSizeChanger:!0,showTotal:($,N)=>`${N[0]}-${N[1]} of ${$} items`}})})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Row,{gutter:[8,8],align:"middle",children:[e.jsx(s.Col,{children:e.jsx(s.Button,{size:"small",onClick:()=>W(L),disabled:!L.length,children:"Download Error Report"})}),e.jsx(s.Col,{children:e.jsx(s.Button,{type:"primary",size:"small",onClick:E,children:"Upload Another File"})})]})})]})]})]})})})})}const Wy=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},mu=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},Kl=(t,a,n)=>{const r=`${t||""}`.trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;const o=a?.fk_branchID??mu(n),l=r.startsWith("/")?r.slice(1):r;return Wy(ut(),`uploads/school_${o}/student/homework/${l}`)},Gl={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},Nn=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function Vy({token:t}){const[a,n]=i.useState("api/branchapi/homeworks/gethomeworklistByClassSectionBranch?"),[r,o]=i.useState({page:1,rowsPerPage:10}),[l,d]=i.useState(null),[c,h]=i.useState(null),[f,p]=i.useState(null),[m,v]=i.useState(null),[S,y]=i.useState(!1),[g,b]=i.useState(null),[T,R]=i.useState(null),[I,A]=i.useState(null),[_,u]=i.useState(null),[x,j]=i.useState(null),[M,O]=i.useState(null),[z,k]=i.useState(!1),[F,C]=i.useState(""),[E,P]=i.useState(""),[U,H]=i.useState(""),[W,L]=i.useState(!1),B=(je,Me)=>{const rt=je?.value??null;switch(Me){case"class_id":d(rt),h(null),p(null);break;case"section_id":h(rt);break;case"subject_id":p(rt);break}},{data:$}=q(t?["api/branchapi/academy/classdropdownlist",t]:null,([je,Me])=>Y(je,Me)),{data:N}=q(t&&x?[x,t]:null,([je,Me])=>Y(je,Me)),{data:V}=q(t&&M?[M,t]:null,([je,Me])=>Y(je,Me)),Q=l?`api/branchapi/academy/sectionoftheClass?class_id=${l}`:null,{data:Z}=q(t&&Q?[Q,t]:null,([je,Me])=>Y(je,Me)),J=l?`api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${l}`:null,{data:K}=q(t&&J?[J,t]:null,([je,Me])=>Y(je,Me)),X=i.useMemo(()=>Nn($),[$]),ee=i.useMemo(()=>Nn(N),[N]),pe=i.useMemo(()=>Nn(V),[V]),te=i.useMemo(()=>Nn(Z),[Z]),se=i.useMemo(()=>Nn(K),[K]),le=t&&a?`${a}class_id=${l||""}&subject_id=${f||""}&section_id=${c||""}&date=${m?.format("YYYY-MM-DD")||""}&page=${r.page}&per_page=${r.rowsPerPage}`:null,{isLoading:Ce,error:Le,data:Re,mutate:xe}=q(le?[le,t]:null,([je,Me])=>Y(je,Me)),Te=async(je,Me)=>{try{await xe(Ze(je,Me,t),pt(Me)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),ze()}catch(rt){console.error(rt),D.error("Failed to add the new item.",{duration:1e3})}},Ue=async je=>{try{await xe(st("api/student/Homework/deleteHomework",je,t),ot(je)),D.success("Success! Deleted item.",{duration:1e3})}catch(Me){console.error(Me),D.error("Failed to delete the item.",{duration:1e3})}},ye=async je=>{try{const Me=await ct("api/student/Homework/updateHomework",je,t);xe(Me),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),ze()}catch(Me){console.error(Me),D.error("Failed to update the item.",{duration:1e3})}},me=je=>{je.preventDefault();const Me=new FormData(je.target),rt=Me.get("class_id")||l,vt=Me.get("section_id")||c,na=Me.get("subject_id")||f,Vt=m?.format("YYYY-MM-DD");n(`api/branchapi/homeworks/gethomeworklistByClassSectionBranch?class_id=${rt||""}&subject_id=${na||""}&section_id=${vt||""}${Vt?`&date=${Vt}`:""}&`),o(Se=>({...Se,page:1}))},Pe=je=>{je.preventDefault();const Me=new FormData(je.target);Te("api/branchapi/homeworks/addHomework",Me),H("")},Ye=async(je,Me)=>{je.preventDefault();const rt=new FormData(je.target);rt.append("id",Me),L(!0);try{await ye(rt)}finally{L(!1)}},ze=()=>{y(!1),b(null),R(null),A(null),u(null),j(null),O(null),H("")},we=je=>{b(je);const Me=je?.class_id??je?.classId??null,rt=je?.section_id??je?.sectionId??null,vt=je?.subject_id??je?.subjectId??null;R(Me),A(rt),u(vt),Me?(j(`api/branchapi/academy/sectionoftheClass?class_id=${Me}`),O(`api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${Me}`)):(j(null),O(null)),H(je?.file||je?.document||""),y(!0)},ke=je=>{const Me=je?.value??null;R(Me),A(null),u(null),Me?(j(`api/branchapi/academy/sectionoftheClass?class_id=${Me}`),O(`api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${Me}`)):(j(null),O(null))},De=je=>{A(je?.value??null)},ce=je=>{u(je?.value??null)},ve=(je,Me)=>{o({page:je,rowsPerPage:parseInt(Me,10)})},_e=()=>{k(!1),C(""),P("")},Ve=(je,Me)=>{if(!je){D.error("No document found.",{duration:1e3});return}C(je),P(Me||"Document"),k(!0)},He=[{title:"Date",dataIndex:"homework_date",key:"homework_date"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Title",dataIndex:"title",key:"title"},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0},{title:"Submission Date",dataIndex:"submit_date",key:"submit_date"},{title:"Staff Name",dataIndex:"staff_name",key:"staff_name"},{title:"Subject",dataIndex:"subject",key:"subject"},{title:"Document",key:"document",render:(je,Me)=>{const rt=Me?.document||Me?.file||"";if(!rt)return e.jsx("span",{style:{color:"#999",fontSize:12},children:"Not Uploaded"});const vt=Kl(rt,Me,t);return e.jsx("a",{style:{color:"#5080f8",cursor:"pointer"},onClick:()=>Ve(vt,rt),children:"View"})}},{title:"Action",key:"action",render:(je,Me)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>we(Me),style:{padding:2}}),e.jsx(At,{id:Me?.id,funcName:Ue})]})}];return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Search Homework"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:me,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{options:X,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",placeholder:"Class",allowSelectAll:!1,value:X.find(je=>String(je.value)===String(l))??null,onChange:je=>B(je,"class_id")})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{options:te,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",placeholder:"Section",allowSelectAll:!1,value:te.find(je=>String(je.value)===String(c))??null,onChange:je=>B(je,"section_id")})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{options:se,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subject",name:"subject_id",placeholder:"Subject",allowSelectAll:!1,value:se.find(je=>String(je.value)===String(f))??null,onChange:je=>B(je,"subject_id")})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(Ge,{Desplay:"Date",format:"YYYY-MM-DD",allowClear:!1,value:m,onChange:je=>v(je)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsxs(w,{children:[e.jsx(de,{type:"submit",value:"Search",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{n("api/branchapi/homeworks/gethomeworklistByClassSectionBranch?"),d(null),h(null),p(null),v(null)},style:Gl,children:"Cancel"})]})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Homework List"})}),e.jsx(w,{p:3,children:e.jsx(Ke,{parentCallback:ve,data:{newData:Re,columns:He,columnstype:"antd",action:!1,Loading:Ce,error:Le,deleteTodoMutation:Ue,pageController:r}})})]})})]}),e.jsx(s.Drawer,{open:S,title:g?"Edit Homework":"Add Homework",placement:"right",width:600,destroyOnClose:!0,onClose:ze,children:e.jsx("form",{onSubmit:g?je=>Ye(je,g.id):Pe,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:X,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",required:!0,allowSelectAll:!1,placeholder:"Select Class",value:X.find(je=>String(je.value)===String(T))??null,onChange:ke})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:ee,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",required:!0,allowSelectAll:!1,placeholder:T?"Select Section":"Select Class First",value:ee.find(je=>String(je.value)===String(I))??null,onChange:De,isDisabled:!T})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{options:pe,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subject",name:"sub_id",required:!0,allowSelectAll:!1,placeholder:T?"Select Subject":"Select Class First",value:pe.find(je=>String(je.value)===String(_))??null,onChange:ce,isDisabled:!T})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:g?.homew_date?ne(g?.homew_date):ne(),Desplay:"From",name:"homew_date"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:g?.submission_date?ne(g?.submission_date):ne(),Desplay:"Deadline",name:"submission_date"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{type:"text",label:"Title",name:"title",defaultValue:g?.title||"",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(kt,{type:"text",label:"Description",name:"description",defaultValue:g?.description||"",rows:3,required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.Upload,{action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${mu(t)}/student/homework`},headers:{Authorization:t},maxCount:1,onChange:je=>{if(je.file.status==="removed"&&H(""),je.file.status==="done"){const Me=je.file.response?.data??je.file.response?.file??"";H(String(Me??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:U?"Change":"Upload"})}),U&&g&&e.jsx("a",{href:Kl(U,g,t),target:"_blank",rel:"noreferrer",style:{display:"block",marginTop:8,fontSize:12,color:"#1677ff",textDecoration:"underline"},children:"View existing document"}),e.jsx("input",{type:"hidden",name:"file",value:U||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsxs(w,{children:[e.jsx(de,{type:"submit",value:W?"Saving...":"Save",color:"primary",disabled:W}),e.jsx(s.Button,{type:"text",onClick:ze,style:Gl,children:"Cancel"})]})})})})]})})}),e.jsx(s.Modal,{open:z,onCancel:_e,footer:null,width:900,closable:!0,children:e.jsxs(w,{p:3,children:[e.jsx(w,{mb:2,children:e.jsx(he,{level:5,children:E||"View Document"})}),F?F.match(/\.pdf(\?|#|$)/i)?e.jsx("iframe",{src:F,title:E||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:F,alt:E||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(he,{children:"No document found"})]})}),e.jsx(w,{style:{position:"fixed",bottom:24,right:24,zIndex:1e3},children:e.jsx(s.Button,{type:"primary",size:"large",onClick:()=>{b(null),R(null),A(null),u(null),j(null),O(null),H(""),y(!0)},style:{borderRadius:"50%",width:56,height:56,boxShadow:"0 4px 12px rgba(0,0,0,0.15)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:24},children:"+"})})]})}const bi=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function Hy({token:t}){const[a,n]=i.useState(!1),[r,o]=i.useState(null),[l,d]=i.useState(null),[c,h]=i.useState({page:1,rowsPerPage:10}),[f,p]=i.useState(!1),[m,v]=i.useState(""),[S,y]=i.useState(""),[g,b]=i.useState({label:"",value:""}),[T,R]=i.useState({label:"",value:""}),[I,A]=i.useState({label:"",value:""}),[_,u]=i.useState(!1),[x,j]=i.useState(!1),{data:M}=q(t?["api/branchapi/academy/classdropdownlist",t]:null,([Z,J])=>Y(Z,J)),{data:O}=q(t&&a?[a,t]:null,([Z,J])=>Y(Z,J)),{data:z}=q(t&&(r||!0)?[r||"api/branchapi/academy/subjecttableList",t]:null,([Z,J])=>Y(Z,J)),k=i.useMemo(()=>bi(M),[M]),F=i.useMemo(()=>bi(O),[O]),C=i.useMemo(()=>bi(z),[z]),E=t&&l?`${l}page=${c.page}&per_page=${c.rowsPerPage}`:null,{isLoading:P,error:U,data:H,mutate:W}=q(E?[E,t]:null,([Z,J])=>Y(Z,J)),L=(Z,J)=>{switch(J){case"class_id":b(Z||{label:"",value:""}),R({label:"",value:""}),A({label:"",value:""}),o(`/api/branchapi/academy/getSubjectsbyClassaslablevalue?class_id=${Z?.value??""}`),n(`/api/branchapi/academy/sectionoftheClass?class_id=${Z?.value??""}`),u(K=>!K),j(K=>!K);break;case"section_id":R(Z||{label:"",value:""});break;case"subject_id":A(Z||{label:"",value:""});break}},B=async Z=>{Z.preventDefault();const J="/api/branchapi/homeworks/gethomeworklistByClassSectionBranch",K=new URLSearchParams;g.value&&K.append("class_id",String(g.value)),T.value&&K.append("section_id",String(T.value)),I.value&&K.append("subject_id",String(I.value));const X=K.toString(),ee=X?`${J}?${X}&`:`${J}?`;h(pe=>({...pe,page:1})),d(ee),await W()},$=(Z,J)=>{h({page:Z,rowsPerPage:parseInt(J,10)})},N=()=>{p(!1),v(""),y("")},V=(Z,J)=>{v(Z),y(J||"Document"),p(!0)},Q=[{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Subject",dataIndex:"subject",key:"subject"},{title:"Assign By",dataIndex:"staff_name",key:"staff_name"},{title:"Title",dataIndex:"title",key:"title"},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0},{title:"Submission",dataIndex:"total_submission",key:"total_submission"},{title:"View Document",key:"document",render:(Z,J)=>e.jsx("a",{style:{color:"#5080f8",cursor:"pointer"},onClick:()=>V(J.document_url,J.document),children:"View"})}];return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Submission Details"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:B,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{options:k,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",placeholder:"Class",allowSelectAll:!1,value:k.find(Z=>String(Z.value)===String(g.value))??null,onChange:Z=>L(Z,"class_id")})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",placeholder:"Section",allowSelectAll:!1,value:F.find(Z=>String(Z.value)===String(T.value))??null,onChange:Z=>R(Z||{label:"",value:""})},`sections1${_}`)})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{options:C,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subject",name:"subject_id",placeholder:"Subject",allowSelectAll:!1,value:C.find(Z=>String(Z.value)===String(I.value))??null,onChange:Z=>A(Z||{label:"",value:""})},`subjects1${x}`)})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{display:"flex",alignItems:"center",height:"100%",mt:2,children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})})]})})})]})}),l&&e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Students List"})}),e.jsx(w,{p:3,children:e.jsx(Ke,{parentCallback:$,data:{newData:H,columns:Q,columnstype:"antd",action:!1,Loading:P,error:U,pageController:c}})})]})})]}),e.jsx(s.Modal,{open:f,onClose:N,footer:null,width:900,children:e.jsxs(w,{p:3,children:[e.jsxs(w,{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2,children:[e.jsx(he,{level:5,children:S||"View Document"}),e.jsx(de,{type:"button",value:"Close",color:"primary",onClick:N})]}),m?m.match(/\.pdf(\?|#|$)/i)?e.jsx("iframe",{src:m,title:S||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:m,alt:S||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(he,{children:"No document found"})]})})]})}const Ky=(t,a)=>{const n=String(t??"").replace(/\/+$/,""),r=String(a).replace(/^\/+/,"");return`${n}/${r}`};function Gy({token:t,sampleFileUrl:a}){const n=t??localStorage.getItem("authToken")??"",[r,o]=i.useState(null),[l,d]=i.useState(null),[c,h]=i.useState(null),[f,p]=i.useState(null),[m,v]=i.useState(null),[S,y]=i.useState(null),[g,b]=i.useState(null),T="api/branchapi/library/bookCategorydropdown",R="api/branchapi/academy/classdropdownlist",I="api/branchapi/Academy/getClassSubjectdropdown",A="api/branchapi/library/addBook",_="api/branchapi/library/uploadcsv",{data:u}=q(n?[T,n]:null,([E,P])=>Y(E,P)),{data:x}=q(n&&R?[R,n]:null,([E,P])=>Y(E,P)),{data:j}=q(n&&I?[I,n]:null,([E,P])=>Y(E,P)),M=i.useMemo(()=>Ky(Nt(),_),[_]),O=async E=>{E.preventDefault();const P=new FormData(E.target);P.set("cat_id",m?.value??""),P.set("class_id",S?.value??""),P.set("subject_id",g?.value??"");try{await Ze(A,P,n),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"}),E.target.reset(),v(null),y(null),b(null)}catch(U){D.error(U?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},z=async E=>{if(E.preventDefault(),!r){D.error("Please select a CSV file.",{duration:1e3});return}const P=new FormData;P.append("file",r),P.append("cat_id",l?.value??""),P.append("class_id",c?.value??""),P.append("subject_id",f?.value??"");try{const U=await dt.post(M,P,{headers:{Authorization:n,"Content-type":"multipart/form-data"}});U?.data?.Status==="Failed"?D.error(String(U?.data?.msg??"Upload failed."),{duration:1e3}):(D.success(String(U?.data?.msg??"Uploaded."),{duration:1e3,icon:"🚀"}),o(null),E.target.reset(),d(null),h(null),p(null))}catch(U){D.error(U?.response?.data?.msg??"Upload failed.",{duration:1e3})}},k=()=>["title,author,publisher,quantity,price,fine,subject_id,barcode,class_id",...["Advanced Chemistry,Rahul Mondal,RM PUBLISHER,10,210,20,1,,1","Advanced Chemistry,Rahul Mondal,RM PUBLISHER,10,210,20,1,123321,1"]].join(`
60
+ `),F=()=>{if(a)return a;const E=Nt();return E?`${E.replace(/\/+$/,"")}/books.csv`:"/books.csv"},C=()=>{const E=F();fetch(E).then(P=>{if(!P.ok)throw new Error("Sample file not found");const U=P.headers.get("content-type")||"";return!U.includes("csv")&&!U.includes("text/plain")&&!U.includes("application/octet-stream")?P.text().then(H=>{if(H.trim().startsWith("<")||H.includes("<!doctype")||H.includes("<html"))throw new Error("Sample file URL returned HTML. Host the CSV at a public URL and pass it via sampleFileUrl prop.");return new Blob([H],{type:"text/csv"})}):P.blob()}).then(P=>{const U=window.URL.createObjectURL(P),H=document.createElement("a");H.href=U,H.download="books.csv",H.click(),window.URL.revokeObjectURL(U)}).catch(()=>{const P=k(),U=new Blob([P],{type:"text/csv"}),H=window.URL.createObjectURL(U),W=document.createElement("a");W.href=H,W.download="books.csv",W.click(),window.URL.revokeObjectURL(H)})};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Book in Bulk"}),extra:e.jsx(s.Button,{type:"link",icon:e.jsx(re.DownloadOutlined,{}),onClick:C,children:"Download Sample"}),children:[e.jsx(s.Divider,{children:"Information"}),e.jsx(s.Typography.Paragraph,{style:{marginBottom:16},children:"1. Your CSV data should be in the format below. The first line of your CSV file should be the column headers as in the table example. Also make sure that your file is UTF-8 to avoid unnecessary encoding problems."}),e.jsx("form",{onSubmit:z,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:u,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",allowSelectAll:!1,name:"cat_id",required:!0,value:l,onChange:E=>d(E??null)}),e.jsx(ae,{options:x,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,value:c,onChange:E=>h(E??null)}),e.jsx(ae,{options:j,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subjects",name:"subject_id",allowSelectAll:!1,value:f,onChange:E=>p(E??null)}),e.jsx(G,{type:"file",label:"Upload CSV/Excel",name:"csv",accept:".csv,.xlsx,.xls",onChange:E=>o(E.target.files?.[0]??null),required:!0}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})})]}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Book"}),children:e.jsx("form",{onSubmit:O,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(G,{type:"text",label:"Book Name",name:"title",required:!0}),e.jsx(G,{type:"text",label:"Author",name:"author",required:!0}),e.jsx(G,{type:"text",label:"Publication",name:"publisher"}),e.jsx(G,{type:"number",label:"Qty",name:"quantity",required:!0}),e.jsx(G,{type:"number",label:"Book Price",name:"price",required:!0}),e.jsx(G,{type:"number",label:"Fine Per Day",name:"fine",required:!0}),e.jsx(G,{type:"text",label:"Barcode",name:"barcode"}),e.jsx(ae,{options:u,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",allowSelectAll:!1,name:"cat_id",required:!0,value:m,onChange:E=>v(E??null)}),e.jsx(ae,{options:x,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,value:S,onChange:E=>y(E??null)}),e.jsx(ae,{options:j,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Subjects",name:"subject_id",allowSelectAll:!1,value:g,onChange:E=>b(E??null)}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})})})]})}const ji={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},Si=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function Jy({token:t}){const a=t??localStorage.getItem("authToken")??"",[n,r]=i.useState([]),[o,l]=i.useState([]),d=i.useRef(),c={selectedRowKeys:n,onChange:(K,X)=>{r(K),l(X)}},h=Ka.useReactToPrint({contentRef:d,documentTitle:"Book Barcodes"}),f=()=>{if(!(typeof window>"u")){if(!o.length){D.error("Select at least one book to print.",{duration:1e3});return}if(!d.current){D.error("Nothing to print.",{duration:1e3});return}h?.()}},[p,m]=i.useState(!1),[v,S]=i.useState(null),[y,g]=i.useState(null),[b,T]=i.useState(null),[R,I]=i.useState(null),[A,_]=i.useState({page:1,rowsPerPage:10}),u=(K,X)=>{_({page:K,rowsPerPage:parseInt(X,10)})},x="api/branchapi/library/booktable",j="api/branchapi/library/deletebooks",M="api/branchapi/library/editbook",O=`${x}?page=${A.page}&per_page=${A.rowsPerPage}`,{isLoading:z,error:k,data:F,mutate:C}=q(a?[O,a]:null,([K,X])=>Y(K,X)),E="api/branchapi/library/bookCategorydropdown",P="api/branchapi/academy/classdropdownlist",U="api/branchapi/Academy/getClassSubjectdropdown",{data:H}=q(a?[E,a]:null,([K,X])=>Y(K,X)),{data:W}=q(a&&P?[P,a]:null,([K,X])=>Y(K,X)),{data:L}=q(a&&U?[U,a]:null,([K,X])=>Y(K,X)),B=i.useMemo(()=>Si(H),[H]),$=i.useMemo(()=>Si(W),[W]),N=i.useMemo(()=>Si(L),[L]),V=async K=>{try{await st(j,K,a),await C(),D.success("Success! Deleted item.",{duration:1e3})}catch(X){D.error(X?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},Q=K=>{S(K??null);const X=K?.cat_id??K?.fk_cat_id??K?.category_id,ee=K?.class_id??K?.fk_class_id,pe=K?.subject_id??K?.fk_subject_id;g(B.find(te=>te?.value===X)??null),T($.find(te=>te?.value===ee)??null),I(N.find(te=>te?.value===pe)??null),m(!0)},Z=async K=>{K.preventDefault();const X=v?.id??v?.book_id??v?._id;if(!X)return;const ee=new FormData(K.target);ee.set("id",String(X)),ee.set("cat_id",y?.value??""),ee.set("class_id",b?.value??""),ee.set("subject_id",R?.value??"");try{await ct(M,ee,a),await C(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),m(!1),S(null)}catch(pe){D.error(pe?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},J=i.useMemo(()=>[{title:"Name",dataIndex:"book_title",key:"book_title",width:220,ellipsis:!0,fixed:"left"},{title:"Barcode",dataIndex:"barcode",key:"barcode",width:140,responsive:["sm"]},{title:"Publisher",dataIndex:"publish",key:"publish",width:160,responsive:["lg"]},{title:"Author",dataIndex:"author",key:"author",width:160,responsive:["lg"]},{title:"Class",dataIndex:"class_name",key:"class_name",width:140,responsive:["xl"]},{title:"Subject",dataIndex:"subject_name",key:"subject_name",width:160,responsive:["xl"]},{title:"Avl Qty",dataIndex:"available_qty",key:"available_qty",width:90},{title:"Book Price",dataIndex:"perunitcost",key:"perunitcost",width:120,responsive:["xl"]},{title:"Fine Amount",dataIndex:"fine_amount",key:"fine_amount",width:120,responsive:["xl"]},{title:"Category",dataIndex:"cat_name",key:"cat_name",width:160,responsive:["xl"]},{title:"Action",key:"action",width:140,fixed:"right",render:(K,X)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>Q(X),style:{padding:2}}),e.jsx(s.Button,{type:"text",size:"small",danger:!0,onClick:()=>V(X?.id??X?.book_id??X?._id),style:{padding:"2px 6px"},children:"Delete"})]})}],[B,$,V,N]);return e.jsxs("div",{style:{},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{open:p,title:"Edit Book",placement:"right",width:520,destroyOnClose:!0,onClose:()=>{m(!1),S(null)},children:e.jsx("form",{onSubmit:Z,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(G,{label:"Book Name",name:"title",defaultValue:v?.book_title??"",required:!0}),e.jsx(G,{label:"Author",name:"author",defaultValue:v?.author??"",required:!0}),e.jsx(G,{label:"Publication",name:"publish",defaultValue:v?.publish??""}),e.jsx(G,{label:"Qty",name:"quantity",type:"number",defaultValue:v?.quantity??""}),e.jsx(G,{label:"Book Price",name:"perunitcost",type:"number",defaultValue:v?.perunitcost??""}),e.jsx(G,{label:"Fine Amount",name:"fine_amount",type:"number",defaultValue:v?.fine_amount??""}),e.jsx(G,{label:"Barcode",name:"barcode",defaultValue:v?.barcode??""}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:ji,children:"Category"}),e.jsx(ae,{options:B,value:y,onChange:K=>g(K??null),name:"cat_id"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:ji,children:"Class"}),e.jsx(ae,{options:$,value:b,onChange:K=>T(K??null),name:"class_id"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",style:ji,children:"Subject"}),e.jsx(ae,{options:N,value:R,onChange:K=>I(K??null),name:"subject_id"})]}),e.jsxs("div",{style:{display:"flex",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{m(!1),S(null)},children:"Cancel"})]})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Book List"}),extra:o.length>0?e.jsxs(s.Button,{type:"primary",onClick:f,children:["Print Barcode (",o.length,")"]}):null,children:e.jsx(Ke,{parentCallback:u,data:{newData:F,columns:J,columnstype:"antd",action:!1,Loading:z,error:k,rowSelection:c}})}),e.jsx("div",{style:{position:"fixed",left:-1e4,top:0,width:0,height:0,overflow:"hidden"},children:e.jsx("div",{ref:d,style:{padding:"20px"},children:e.jsx("div",{style:{display:"flex",flexWrap:"wrap",justifyContent:"flex-start"},children:o.map((K,X)=>e.jsxs("div",{style:{margin:"10px",textAlign:"center",border:"1px dashed black",padding:"10px",borderRadius:"5px",width:"fit-content"},children:[e.jsx("div",{style:{fontSize:"12px",fontWeight:"bold",maxWidth:"200px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:K.book_title}),e.jsx(Sc,{value:K.barcode?String(K.barcode):String(K.id),format:"CODE128",width:1.5,height:50,fontSize:12,displayValue:!0})]},X))})})})]})}const Qy=(t,a)=>{const n=String(t??"").replace(/\/+$/,""),r=String(a).replace(/^\/+/,"");return`${n}/${r}`},Sa=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},Bs=t=>ne(t).add(1,"month").format("YYYY-MM-DD"),Xy=i.forwardRef(({token:t,onReturn:a},n)=>{const r=t??localStorage.getItem("authToken")??"",[o,l]=i.useState("issue"),d=o==="return",[c,h]=i.useState(!1),[f,p]=i.useState(!1),[m,v]=i.useState(null),[S,y]=i.useState([]),[g,b]=i.useState([]),[T,R]=i.useState([]),[I,A]=i.useState(0),[_,u]=i.useState(!1),[x,j]=i.useState(null),[M,O]=i.useState(null),[z,k]=i.useState(null),[F,C]=i.useState(!1),[E,P]=i.useState("Cash"),[U,H]=i.useState(""),[W,L]=i.useState(""),[B,$]=i.useState(0),[N,V]=i.useState("NO_FINE"),Q=i.useRef(null),[Z]=s.Form.useForm(),[J]=s.Form.useForm(),K="api/branchapi/library/bookCategorydropdown",X="api/branchapi/academy/classdropdownlist",ee="api/branchapi/Academy/getClassSubjectdropdown",{data:pe}=q(r?[K,r]:null,([be,Ie])=>Y(be,Ie)),{data:te}=q(r&&X?[X,r]:null,([be,Ie])=>Y(be,Ie)),{data:se}=q(r&&ee?[ee,r]:null,([be,Ie])=>Y(be,Ie)),le=i.useMemo(()=>Sa(pe),[pe]),Ce=i.useMemo(()=>Sa(te),[te]),Le=i.useMemo(()=>Sa(se),[se]),Re="api/branchapi/library/studentsearchByNameID",xe="api/branchapi/library/booksearchBybookname",Te="api/branchapi/library/issuedBookList",Ue="api/branchapi/library/issueLibrarybook",ye="api/branchapi/library/returnedLibrarybook",{trigger:me,data:Pe}=it(Re,(be,Ie)=>Da(be,Ie,r)),{trigger:Ye,data:ze}=it(xe,(be,Ie)=>Da(be,Ie,r)),{trigger:we,data:ke}=it(Te,(be,Ie)=>Da(be,Ie,r)),{trigger:De}=it(d?ye:Ue,(be,Ie)=>hs(be,Ie,r)),ce=i.useMemo(()=>Sa(Pe),[Pe]),ve=i.useMemo(()=>Sa(ze),[ze]),_e=i.useMemo(()=>Sa(ke),[ke]),Ve=be=>{const Ie=Bs(ne());y(at=>at.some(xt=>String(xt?.id)===String(be?.id))?at:[...at,{...be,return_date:be?.return_date?be.return_date:Ie}])},He=async()=>{console.log("Reloading IssueReturn..."),D.success("Success",{duration:1e3}),b([]),R([]),A(0),V("FINE_PAY_LATER"),await we({id:m?.student_id})};i.useImperativeHandle(n,()=>({reloadPayLater:He}));const je=be=>{y(Ie=>Ie.filter(at=>String(at?.id)!==String(be)))},Me=async be=>{if(r){if(!be){v(null);return}c||await me({id:be})}},rt=async({search:be})=>{if(!r||!c)return;const Ie=await me({id:be}),at=Sa(Ie);at.length===1&&(v(at[0]),await we({id:at[0]?.student_id}),Z.resetFields())},vt=async(be,Ie)=>{v(Ie??null),y([]),b([]),R([]),A(0),V("NO_FINE"),$(0),Ie?.student_id&&await we({id:Ie.student_id}),Z.resetFields()},na=async be=>{r&&be&&(f||await Ye({book:be}))},Vt=async({search_book:be})=>{if(!r||!f)return;const Ie=await Ye({book:be,catID:x?.value??"",sID:z?.value??"",cID:M?.value??""}),at=Sa(Ie);at.length&&(Ve(at[0]),J.resetFields())},Se=(be,Ie)=>{Ve(Ie),J.resetFields()},Oe=async()=>{if(!m?.member_id){D.error("Select a student first.",{duration:1e3});return}if(!S.length){D.error("Select at least one book.",{duration:1e3});return}const be=await De({member_id:m.member_id,fine:!1,books:S});be?.Status==="Success"&&(D.success(String(be?.msg??"Success"),{duration:1e3}),y([]),v(null),b([]),R([]),A(0))},oe=async()=>{if(!m?.member_id){D.error("Select a student first.",{duration:1e3});return}if(!T.length){D.error("Select at least one book to return.",{duration:1e3});return}if(Number(I)>0){V("FINE_PAID"),C(!0);return}const be=await De({member_id:m.member_id,collection_type:"NO_FINE",amount:0,books:JSON.stringify(T)});be?.Status==="Success"?(D.success(String(be?.msg??"Success"),{duration:1e3}),b([]),R([]),A(0),await we({id:m?.student_id})):D.error(String(be?.msg??"Failed"),{duration:1e3})},ge=async()=>{if(!m?.member_id)return;const be=Math.max(0,Number(I)-Number(B||0)),Ie={member_id:m.member_id,collection_type:N,amount:N==="FINE_PAID"?be:0,payment_type:E,notes:U,attchement:W,discount:B||0,books:JSON.stringify(T)},at=await De(Ie);C(!1),at?.Status==="Success"?(D.success(String(at?.msg??"Success"),{duration:1e3}),b([]),R([]),A(0),$(0),H(""),L(""),V("NO_FINE"),await we({id:m?.student_id})):D.error(String(at?.msg??"Failed"),{duration:1e3})},$e=async()=>{if(!m?.member_id){D.error("Select a student first.",{duration:1e3});return}if(!T.length){D.error("Select at least one book to return.",{duration:1e3});return}const be={member_id:m.member_id,collection_type:"FINE_PAY_LATER",amount:0,books:JSON.stringify(T)};a(be)},Ne=i.useMemo(()=>Qy(Nt(),"api/branchapi/frontoffice/uploadfrontofficeDocument"),[]),ht=[{title:"Book",dataIndex:"book_title",key:"book_title",width:220,ellipsis:!0,fixed:"left"},{title:"Author",dataIndex:"author",key:"author",width:180,responsive:["lg"]},{title:"Return Date",key:"return_date",width:160,render:(be,Ie)=>e.jsx(Ge,{defaultValue:ne(Ie?.return_date||ne().add(30,"day")),Desplay:"",format:"YYYY-MM-DD",allowClear:!1,onChange:(at,xt)=>{y(It=>It.map(Lt=>String(Lt?.id)===String(Ie?.id)?{...Lt,return_date:xt}:Lt))}})},{title:"Action",key:"action",width:120,fixed:"right",render:(be,Ie)=>e.jsx(s.Button,{type:"text",danger:!0,onClick:()=>je(Ie?.id),children:"Remove"})}],yt={selectedRowKeys:g,onChange:(be,Ie)=>{b(be),R(Ie);const at=(Ie??[]).reduce((xt,It)=>xt+Number(It?.totalfine??0),0);A(at)},onSelect:(be,Ie,at)=>{if(Ie){const xt=at.map(It=>({...It,return_date:It?.return_date?It.return_date:Bs(It?.issue_date||ne())}));R(xt)}},onSelectAll:(be,Ie)=>{if(be){const at=Ie.map(xt=>({...xt,return_date:xt?.return_date?xt.return_date:Bs(xt?.issue_date||ne())}));R(at)}}},Dt=[{title:"Book",dataIndex:"book_title",key:"book_title",width:220,ellipsis:!0,fixed:"left"},{title:"Barcode",dataIndex:"barcode",key:"barcode",width:140,responsive:["sm"]},{title:"Issue Date",dataIndex:"issue_date",key:"issue_date",width:140,responsive:["lg"]},{title:"Return Date",key:"return_date",width:160,render:(be,Ie)=>{const xt=T.find(Lt=>String(Lt?.id)===String(Ie?.id))?.return_date||Ie?.return_date,It=Bs(Ie?.issue_date||ne());return e.jsx(Ge,{defaultValue:ne(xt||It),Desplay:"",format:"YYYY-MM-DD",allowClear:!1,onChange:(Lt,ei)=>{R(ti=>ti.map(En=>String(En?.id)===String(Ie?.id)?{...En,return_date:ei}:En))}})}},{title:"Days",key:"days",width:100,render:(be,Ie)=>{const xt=T.find(Lt=>String(Lt?.id)===String(Ie?.id))?.return_date||Ie?.return_date,It=Ie?.issue_date;if(It&&xt){const Lt=ne(xt).diff(ne(It),"day");return Lt>=0?Lt:0}return"-"}},{title:"Due Date",dataIndex:"due_date",key:"due_date",width:140,responsive:["lg"]},{title:"Fine",dataIndex:"totalfine",key:"totalfine",width:120,fixed:"right",render:be=>e.jsxs("span",{children:["₹ ",be]})}];return e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:F,onCancel:()=>C(!1),footer:null,title:"Payment Options",destroyOnClose:!0,children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsx(s.Radio.Group,{value:E,onChange:be=>P(be.target.value),options:[{label:"Cash",value:"Cash"},{label:"UPI",value:"UPI"},{label:"DD",value:"DD"},{label:"Bank",value:"Bank"},{label:"Internet Banking",value:"Internet Banking"},{label:"Cheque",value:"Cheque"}]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",children:"Note"}),e.jsx(s.Input.TextArea,{rows:3,value:U,onChange:be=>H(be.target.value)})]}),e.jsxs("div",{style:{display:"grid",gap:8},children:[e.jsx("label",{className:"labelfont",children:"Image Attachment"}),e.jsx(s.Upload,{action:Ne,headers:{Authorization:r},maxCount:1,onChange:be=>{if(be.file.status==="done"){const Ie=be.file.response?.data??be.file.response?.file??"";L(String(Ie??""))}},children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),children:"Upload"})})]}),e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",children:"Discount"}),e.jsx(s.Input,{type:"number",value:B,onChange:be=>$(be.target.value),placeholder:"0"})]}),e.jsxs(s.Button,{type:"primary",onClick:ge,children:["Collect ₹",Math.max(0,Number(I)-Number(B||0))]}),e.jsx(s.Button,{onClick:()=>C(!1),children:"Cancel"})]})}),e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Issue / Return"}),children:[e.jsxs(s.Row,{gutter:[16,16],align:"middle",children:[e.jsx(s.Col,{xs:24,md:10,children:e.jsx(s.Radio.Group,{value:o,onChange:be=>{const Ie=be.target.value;l(Ie),y([]),b([]),R([]),A(0),V("NO_FINE"),$(0)},options:[{label:"Issue",value:"issue"},{label:"Return",value:"return"},{label:"Renewal",value:"Renewal"}],optionType:"button",buttonStyle:"solid"})}),e.jsx(s.Col,{xs:24,md:14,children:e.jsx(s.Form,{form:Z,onFinish:rt,layout:"vertical",children:e.jsx(s.Form.Item,{name:"search",label:"Search Student",children:e.jsx(s.Space.Compact,{style:{width:"100%"},children:c?e.jsx(s.Input,{autoFocus:!0,addonBefore:e.jsxs(s.Space,{children:[e.jsx(re.BarcodeOutlined,{}),e.jsx(s.Checkbox,{checked:c,onChange:be=>h(be.target.checked)})]}),placeholder:"Scan barcode",allowClear:!0}):e.jsx(s.AutoComplete,{options:ce,onSelect:vt,onSearch:Me,style:{width:"100%"},allowClear:!0,children:e.jsx(s.Input,{addonBefore:e.jsxs(s.Space,{children:[e.jsx(re.BarcodeOutlined,{}),e.jsx(s.Checkbox,{checked:c,onChange:be=>h(be.target.checked)})]}),placeholder:"Type student name / id",allowClear:!0})})})})})})]}),m?e.jsxs(e.Fragment,{children:[e.jsx(s.Divider,{}),e.jsxs(s.Row,{gutter:[12,12],children:[e.jsxs(s.Col,{xs:24,md:8,children:[e.jsx(s.Typography.Text,{strong:!0,children:"Name:"})," ",m?.value??""]}),e.jsxs(s.Col,{xs:24,md:8,children:[e.jsx(s.Typography.Text,{strong:!0,children:"Card No:"})," ",m?.library_card_no??""]}),e.jsxs(s.Col,{xs:24,md:8,children:[e.jsx(s.Typography.Text,{strong:!0,children:"Member ID:"})," ",m?.member_id??""]})]})]}):null,e.jsx(s.Divider,{}),d?e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{width:"100%",overflowX:"auto"},children:e.jsx("div",{style:{minWidth:760},children:e.jsx(s.Table,{dataSource:_e,columns:Dt,rowSelection:yt,pagination:!1,rowKey:be=>be?.id??be?.issue_id??be?.barcode??Math.random(),scroll:{x:"max-content"},size:"small"})})}),e.jsx(s.Divider,{}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",gap:12,flexWrap:"wrap"},children:[e.jsxs(s.Typography.Text,{strong:!0,children:["Total Fine: ₹",I]}),e.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap"},children:[e.jsx(s.Button,{type:"primary",onClick:oe,disabled:!T.length,children:I>0?`Pay Now ₹ ${Math.max(0,Number(I)-Number(B||0))}`:"Return Selected"}),I>0?e.jsx(s.Button,{onClick:$e,disabled:!T.length,children:"Pay Later"}):null]})]})]}):e.jsxs(e.Fragment,{children:[e.jsxs(s.Row,{gutter:[16,16],align:"middle",children:[e.jsx(s.Col,{xs:24,md:18,children:e.jsx(s.Form,{form:J,onFinish:Vt,layout:"vertical",children:e.jsx(s.Form.Item,{name:"search_book",label:"Search Book",children:e.jsx(s.Space.Compact,{style:{width:"100%"},children:f?e.jsx(s.Input,{autoFocus:!0,disabled:!m,addonBefore:e.jsxs(s.Space,{children:[e.jsx(re.BarcodeOutlined,{}),e.jsx(s.Checkbox,{checked:f,onChange:be=>p(be.target.checked)})]}),placeholder:"Scan barcode",allowClear:!0}):e.jsx(s.AutoComplete,{disabled:!m,options:ve,onSelect:Se,onSearch:na,style:{width:"100%"},allowClear:!0,children:e.jsx(s.Input,{addonBefore:e.jsxs(s.Space,{children:[e.jsx(re.BarcodeOutlined,{}),e.jsx(s.Checkbox,{checked:f,onChange:be=>p(be.target.checked)})]}),placeholder:"Type book name",allowClear:!0})})})})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(s.Button,{style:{width:"100%"},icon:e.jsx(re.FilterOutlined,{}),onClick:()=>u(!0),children:"Filter"})})]}),e.jsx(s.Drawer,{open:_,onClose:()=>u(!1),title:"Filter",placement:"right",width:380,destroyOnClose:!0,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(ae,{label:"Category",options:le,value:x,onChange:be=>j(be??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"cat_id"}),e.jsx(ae,{label:"Class",options:Ce,value:M,onChange:be=>O(be??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"class_id"}),e.jsx(ae,{label:"Subjects",options:Le,value:z,onChange:be=>k(be??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"subject_id"}),e.jsx(s.Button,{type:"primary",onClick:()=>u(!1),children:"Apply"})]})}),e.jsx(s.Divider,{}),e.jsx("div",{style:{width:"100%",overflowX:"auto"},children:e.jsx("div",{style:{minWidth:720},children:e.jsx(s.Table,{dataSource:S,columns:ht,pagination:!1,rowKey:be=>be?.id??be?.book_id??be?.barcode??Math.random(),scroll:{x:"max-content"},size:"small"})})}),e.jsx(s.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Issue",onClick:Oe})})]})]}),e.jsx("div",{ref:Q,style:{position:"fixed",left:-1e4,top:0,width:0,height:0,overflow:"hidden"}})]})}),Jl=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function Zy({token:t}){const a=t??localStorage.getItem("authToken")??"",[n,r]=i.useState({page:1,rowsPerPage:10}),[o,l]=i.useState(null),[d,c]=i.useState(null),[h,f]=i.useState(!1),[p,m]=i.useState(!1),[v,S]=i.useState(null),[y,g]=i.useState(!1),b="api/branchapi/academy/classdropdownlist",T="api/branchapi/academy/sectionoftheClass",R="api/branchapi/library/studenttableForLibrary",I="api/branchapi/library/addmembershipforStudent",A="api/branchapi/library/removemembershipforStudent",_=i.useMemo(()=>{if(!o?.value)return null;const L=T.includes("?")?"&":"?";return`${T}${L}class_id=${encodeURIComponent(String(o.value))}`},[T,o?.value]),u=i.useMemo(()=>{if(!o?.value||!d?.value)return null;const L=R.includes("?")?"&":"?";return`${R}${L}cID=${encodeURIComponent(String(o.value))}&sID=${encodeURIComponent(String(d.value))}&page=${n.page}&per_page=${n.rowsPerPage}`},[n.page,n.rowsPerPage,o?.value,d?.value,R]),{data:x}=q(a&&b?[b,a]:null,([L,B])=>Y(L,B)),{data:j}=q(a&&_?[_,a]:null,([L,B])=>Y(L,B)),{isLoading:M,error:O,data:z,mutate:k}=q(a&&u?[u,a]:null,([L,B])=>Y(L,B)),F=i.useMemo(()=>Jl(x),[x]),C=i.useMemo(()=>Jl(j),[j]),E=(L,B)=>{r({page:L,rowsPerPage:parseInt(B,10)})},P=L=>{const B=L?.id??L?.student_id??L?.member_id;S(B??null),m(!0),g($=>!$)},U=async L=>{if(L.preventDefault(),!v)return;const B=new FormData(L.target);B.set("id",String(v));try{await Ze(I,B,a),D.success("Success! Added member.",{duration:1e3,icon:"🎉"}),m(!1),S(null),await k()}catch($){D.error($?.response?.data?.msg??"Failed to add the member.",{duration:1e3})}},H=async L=>{try{await st(A,L,a),D.success("Success! Removed member.",{duration:1e3}),await k()}catch(B){D.error(B?.response?.data?.msg??"Failed to remove member.",{duration:1e3})}},W=i.useMemo(()=>[{title:"Library Card No",dataIndex:"library_card_no",key:"library_card_no",width:180,ellipsis:!0,fixed:"left"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:140,responsive:["sm"]},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:90,responsive:["lg"]},{title:"First Name",dataIndex:"firstname",key:"firstname",width:140,responsive:["sm"]},{title:"Last Name",dataIndex:"lastname",key:"lastname",width:140,responsive:["lg"]},{title:"Class",dataIndex:"class",key:"class",width:120,responsive:["xl"]},{title:"Section",dataIndex:"section",key:"section",width:120,responsive:["xl"]},{title:"Mobile",dataIndex:"mobileno",key:"mobileno",width:140,responsive:["lg"]},{title:"Action",key:"action",width:80,fixed:"right",render:(L,B)=>(console.log("data______________",B),e.jsx("div",{style:{display:"flex",gap:8,alignItems:"center"},children:B?.library_card_no==null?e.jsx(s.Button,{type:"primary",size:"small",icon:e.jsx(re.UserAddOutlined,{}),onClick:()=>P(B)}):e.jsx(s.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(re.DeleteOutlined,{}),onClick:()=>H(B?.id??B?.student_id??B?.member_id)})}))}],[H]);return e.jsxs("div",{style:{},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:p,title:"Add Member",onCancel:()=>{m(!1),S(null)},footer:null,destroyOnClose:!0,children:e.jsx("form",{onSubmit:U,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(G,{type:"text",label:"Library Card Number",name:"library_num",required:!0}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Add",color:"primary"})})]})},`add-${y}`)}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Student"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(ae,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",value:o,onChange:L=>{l(L??null),c(null),f(B=>!B)},name:"class_id",required:!0,allowSelectAll:!1}),e.jsx(ae,{options:C,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",value:d,onChange:L=>c(L??null),allowSelectAll:!1,name:"section_id",required:!0},`section-${h}`),e.jsx(de,{type:"submit",value:"Search",color:"primary",onClick:()=>{if(!o?.value||!d?.value){D.error("Select class and section.",{duration:1e3});return}r(L=>({...L,page:1}))}})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Students"}),children:e.jsx(Ke,{parentCallback:E,data:{newData:z,columns:W,columnstype:"antd",action:!1,Loading:M,error:O}})})]})}function ex({token:t}){const a=t??localStorage.getItem("authToken")??"",[n,r]=i.useState({page:1,rowsPerPage:10}),[o]=s.Form.useForm(),[l]=s.Form.useForm(),[d,c]=i.useState(!1),[h,f]=i.useState(null),p="api/branchapi/library/BookCategorytable",m="api/branchapi/library/addBookCategory",v="api/branchapi/library/editBookCategory",S="api/branchapi/library/deleteBookCategory",y=i.useMemo(()=>{const O=p.includes("?")?"&":"?";return`${p}${O}page=${n.page}&per_page=${n.rowsPerPage}`},[p,n.page,n.rowsPerPage]),{isLoading:g,error:b,data:T,mutate:R}=q(a&&y?[y,a]:null,([O,z])=>Y(O,z)),I=(O,z)=>{r({page:O,rowsPerPage:parseInt(z,10)})},A=async O=>{const z=new FormData;z.set("title",O?.title??"");try{await Ze(m,z,a),D.success("Success! Added new category.",{duration:1e3,icon:"🎉"}),o.resetFields(),await R()}catch(k){D.error(k?.response?.data?.msg??k?.message??"Failed to add category.",{duration:1e3})}},_=O=>{f(O??null),l.setFieldsValue({title:O?.name??""}),c(!0)},u=()=>{c(!1),f(null),l.resetFields()},x=async O=>{const z=h?.id??h?.category_id??h?.cat_id;if(!z){D.error("Missing category id.",{duration:1e3});return}const k=new FormData;k.set("id",String(z)),k.set("title",O?.title??"");try{await ct(v,k,a),D.success("Success! Updated category.",{duration:1e3,icon:"🚀"}),u(),await R()}catch(F){D.error(F?.response?.data?.msg??F?.message??"Failed to update category.",{duration:1e3})}},j=async O=>{const z=O?.id??O?.category_id??O?.cat_id;if(!z){D.error("Missing category id.",{duration:1e3});return}try{await st(S,z,a),D.success("Success! Deleted category.",{duration:1e3}),await R()}catch(k){D.error(k?.response?.data?.msg??k?.message??"Failed to delete category.",{duration:1e3})}},M=i.useMemo(()=>[{title:"Category Name",dataIndex:"name",key:"name",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(O,z)=>e.jsxs(s.Space,{size:6,children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>_(z)}),e.jsx(s.Popconfirm,{title:"Remove category?",okText:"Yes",cancelText:"No",onConfirm:()=>j(z),children:e.jsx(s.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(re.DeleteOutlined,{})})})]})}],[j]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:d,title:"Edit Category",onCancel:u,footer:null,destroyOnClose:!0,children:e.jsxs(s.Form,{form:l,layout:"vertical",onFinish:x,children:[e.jsx(s.Form.Item,{label:"Name",name:"title",rules:[{required:!0,message:"Enter category name"}],children:e.jsx(s.Input,{placeholder:"Enter category name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(s.Button,{onClick:u,children:"Cancel"}),e.jsx(de,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,lg:8,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Category"}),children:e.jsxs(s.Form,{form:o,layout:"vertical",onFinish:A,children:[e.jsx(s.Form.Item,{label:"Name",name:"title",rules:[{required:!0,message:"Enter category name"}],children:e.jsx(s.Input,{placeholder:"Enter category name"})}),e.jsx(de,{type:"submit",value:"Add",color:"primary"})]})})}),e.jsx(s.Col,{xs:24,lg:16,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Category List"}),children:e.jsx(Ke,{parentCallback:I,data:{newData:T,columns:M,columnstype:"antd",action:!1,Loading:g,error:b}})})})]})]})}const wi=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function tx({token:t}){const[a,n]=i.useState([ne().format("YYYY-MM-DD"),ne().format("YYYY-MM-DD")]),[r,o]=i.useState(null),[l,d]=i.useState(null),[c,h]=i.useState(null),[f,p]=i.useState(!1),[m,v]=i.useState(!1),S="api/branchapi/academy/classdropdownlist",y="api/branchapi/academy/sectionoftheClass",g="api/branchapi/library/memberDropdown",b="api/report/libraryReport/libraryReport",T=i.useMemo(()=>{if(!r?.value)return null;const P=y.includes("?")?"&":"?";return`${y}${P}class_id=${encodeURIComponent(String(r.value))}`},[y,r?.value]),R=i.useMemo(()=>{if(!r?.value)return null;const P=g.includes("?")?"&":"?",U=`${g}${P}class=${encodeURIComponent(String(r.value))}`;return l?.value?`${U}&section=${encodeURIComponent(String(l.value))}`:U},[g,r?.value,l?.value]),{isLoading:I,error:A,data:_,mutate:u}=q(t&&S?[S,t]:null,([P,U])=>Y(P,U)),{data:x}=q(t&&T?[T,t]:null,([P,U])=>Y(P,U)),{data:j}=q(t&&R?[R,t]:null,([P,U])=>Y(P,U)),M=i.useMemo(()=>wi(_),[_]),O=i.useMemo(()=>wi(x),[x]),z=i.useMemo(()=>wi(j),[j]),{trigger:k,data:F}=it(b,(P,U)=>co(P,U,t));i.useEffect(()=>{(async()=>{v(!0);try{await k({duration:a})}catch(U){console.error(U?.message||"Failed to fetch report")}finally{v(!1)}})()},[]);const C=async()=>{v(!0);try{await k({duration:a,class:r?.value??"",section:l?.value??"",student_id:c?.value??""})}catch(P){console.error(P?.message||"Failed to fetch report")}finally{v(!1)}},E=[{title:"Name",dataIndex:"full_name",render:(P,U)=>e.jsx(s.Typography.Text,{style:{fontSize:12},children:U?.full_name??""})},{title:"Roll No",dataIndex:"roll_no",render:(P,U)=>e.jsx(s.Typography.Text,{style:{fontSize:12},children:U?.roll_no??""})},{title:"Class",dataIndex:"Class",key:"Class",render:(P,U)=>e.jsxs(s.Typography.Text,{style:{fontSize:12},children:[U?.class??"","(",U?.section??"",")"]})},{title:"Book",dataIndex:"book_title",render:(P,U)=>e.jsx(s.Typography.Text,{style:{fontSize:12},children:U?.book_title??""})},{title:"Issue Date",key:"date",render:(P,U,H)=>e.jsx(s.Typography.Text,{style:{fontSize:12},children:U?.issue_date??""})},{title:"Due Return Date",key:"date",render:(P,U,H)=>e.jsx(s.Tag,{color:"orange",children:U?.return_date??""})},{title:"Return Date",key:"date",render:(P,U,H)=>U?.retured_by_user?e.jsx(s.Tag,{color:"green",children:U?.retured_by_user??""}):null},{title:"Return Status",key:"date",render:(P,U,H)=>String(U?.is_returned??"")==="1"?e.jsx(s.Tag,{color:"green",children:"Return"}):e.jsx(s.Tag,{color:"red",children:"Not Return"})},{title:"Fine",key:"amount",dataIndex:"late_fine",render:(P,U,H)=>{const W=U?.late_fine?Number(U.late_fine):0;return W?e.jsx(s.Typography.Text,{style:{fontSize:12,color:"#cf1322"},children:W}):null}}];return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Library Monthly Report"}),style:{borderRadius:16},children:[e.jsxs(s.Row,{gutter:[16,16],align:"bottom",children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsxs("div",{children:[e.jsx("label",{className:"labelfont",children:"Duration"}),e.jsx(s.DatePicker.RangePicker,{style:{width:"100%"},value:[ne(a[0],"YYYY-MM-DD"),ne(a[1],"YYYY-MM-DD")],format:"YYYY-MM-DD",onChange:(P,U)=>{Array.isArray(U)&&U.length===2&&n([U[0],U[1]])}})]})}),e.jsx(s.Col,{xs:24,md:5,children:e.jsx(ae,{options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Classes",name:"class_id",value:r,onChange:P=>{o(P??null),d(null),h(null),p(U=>!U)},allowSelectAll:!1})}),e.jsx(s.Col,{xs:24,md:5,children:e.jsx(ae,{options:O,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",value:l,onChange:P=>{d(P??null),h(null)},allowSelectAll:!1},`section1${f}`)}),e.jsx(s.Col,{xs:24,md:5,children:e.jsx(ae,{options:z,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Student",name:"student",value:c,onChange:P=>h(P??null),allowSelectAll:!1})}),e.jsx(s.Col,{xs:24,md:1,children:e.jsx(s.Button,{type:"primary",icon:e.jsx(re.SearchOutlined,{}),onClick:C,style:{width:"100%"},children:"Search"})})]}),e.jsx("div",{style:{marginTop:16},children:e.jsx(s.Table,{columns:E,pagination:!1,dataSource:Array.isArray(F?.data)?F.data:[],size:"small",rowKey:(P,U)=>P?.id??P?.issue_id??P?.fees_receipt_id??U,loading:m,scroll:{x:"max-content"},summary:P=>{const U=P.reduce((W,L)=>W+Number(L?.late_fine??0),0),H=P.reduce((W,L)=>W+Number(L?.is_returned??0),0);return e.jsxs(s.Table.Summary.Row,{children:[e.jsx(s.Table.Summary.Cell,{colSpan:4,children:e.jsxs("span",{style:{fontWeight:700},children:["Total Book: ",P.length]})}),e.jsx(s.Table.Summary.Cell,{colSpan:2,children:e.jsxs("span",{style:{fontWeight:700},children:["Not Return: ",Number(P.length-H)]})}),e.jsx(s.Table.Summary.Cell,{colSpan:2,children:e.jsxs("span",{style:{fontWeight:700},children:["Return: ",H]})}),e.jsx(s.Table.Summary.Cell,{colSpan:1,children:e.jsxs("span",{style:{fontWeight:700},children:["Total Fine:",U.toLocaleString("en-IN")]})})]})}})})]})]})}const Ql=[{label:"Today",value:"Today"},{label:"Yesterday",value:"Yesterday"},{label:"This Week",value:"This Week"},{label:"This Month",value:"This Month"},{label:"Last Month",value:"Last Month"},{label:"This Year",value:"This Year"},{label:"Custom",value:"Custom"}],Xl=[{key:"renewalHistory",label:"Renewal History"},{key:"renewalFineReport",label:"Renewal + Fine"},{key:"currentlyRenewedBooks",label:"Currently Renewed"},{key:"upcomingRenewalDue",label:"Upcoming Due"},{key:"overdueRenewalReport",label:"Overdue"},{key:"renewalLimitReport",label:"Renewal Limit"},{key:"renewalStatusReport",label:"Renewal Status"},{key:"studentWiseReport",label:"Student-wise"},{key:"bookWiseReport",label:"Book-wise"},{key:"classWiseReport",label:"Class-wise"},{key:"staffWiseReport",label:"Staff-wise"},{key:"renewalStatisticsByDate",label:"Statistics by Date"}];function ax({token:t}){const a=t??localStorage.getItem("authToken")??"",[n,r]=i.useState("renewalHistory"),[o,l]=i.useState("This Month"),[d,c]=i.useState(""),[h,f]=i.useState(""),[p,m]=i.useState(7),[v,S]=i.useState(1),[y,g]=i.useState(20),[b,T]=i.useState(""),[R,I]=i.useState("DESC"),A=i.useRef(null),_=U=>{const H=new URLSearchParams;return["renewalHistory","renewalFineReport","studentWiseReport","bookWiseReport","classWiseReport","staffWiseReport","renewalStatisticsByDate"].includes(n)&&(H.set("date_range",o),o==="Custom"&&d&&h&&(H.set("from_date",d),H.set("to_date",h))),["renewalHistory","renewalFineReport","currentlyRenewedBooks","upcomingRenewalDue","overdueRenewalReport","renewalLimitReport","renewalStatusReport","studentWiseReport","bookWiseReport","classWiseReport","staffWiseReport"].includes(n)&&(H.set("page",String(v)),H.set("per_page",String(y))),n==="upcomingRenewalDue"&&H.set("days_ahead",String(p)),b&&H.set("sort_by",b),R&&H.set("sort_dir",R),`${U}?${H.toString()}`},u=i.useMemo(()=>{switch(n){case"renewalHistory":return _(Vh);case"renewalFineReport":return _(Hh);case"currentlyRenewedBooks":return _(Kh);case"upcomingRenewalDue":return _(Gh);case"overdueRenewalReport":return _(Jh);case"renewalLimitReport":return _(Qh);case"renewalStatusReport":return _(Xh);case"studentWiseReport":return _(Zh);case"bookWiseReport":return _(ef);case"classWiseReport":return _(tf);case"staffWiseReport":return _(af);case"renewalStatisticsByDate":return _(nf);default:return null}},[n,o,d,h,p,v,y]),{data:x,isLoading:j}=q(a?[u,a]:null,([U,H])=>Y(U,H)),M=x?.data||{},O=M?.rows||[],z=M?.pagination||{},k=U=>{r(U),S(1),g(20)},F=()=>{S(1)},C=()=>{switch(n){case"renewalHistory":case"renewalFineReport":return[{title:"Renewal ID",dataIndex:"renewal_id",key:"renewal_id"},{title:"Student",dataIndex:"student_name",key:"student_name"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Book",dataIndex:"book_title",key:"book_title"},{title:"Author",dataIndex:"author",key:"author"},{title:"Barcode",dataIndex:"barcode",key:"barcode"},{title:"Renewal No",dataIndex:"renewal_no",key:"renewal_no"},{title:"Old Due Date",dataIndex:"old_due_date",key:"old_due_date"},{title:"New Due Date",dataIndex:"new_due_date",key:"new_due_date"},{title:"Renewal Date",dataIndex:"renewal_date",key:"renewal_date"},{title:"Status",dataIndex:"status",key:"status",render:U=>e.jsx(s.Tag,{color:U==="renewed"?"green":"red",children:U})},{title:"Fine Amount",dataIndex:"fine_amount",key:"fine_amount",render:U=>U??"-"},{title:"Paid Amount",dataIndex:"paid_amount",key:"paid_amount",render:U=>U??"-"},{title:"Due Amount",dataIndex:"due_amount",key:"due_amount",render:U=>U??"-"},{title:"Fine Status",dataIndex:"fine_payment_status",key:"fine_payment_status",render:U=>U?e.jsx(s.Tag,{color:U==="paid"?"green":U==="partial"?"orange":"red",children:U}):"-"}];case"currentlyRenewedBooks":case"upcomingRenewalDue":case"overdueRenewalReport":case"renewalLimitReport":case"renewalStatusReport":return[{title:"Student",dataIndex:"student_name",key:"student_name"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Book",dataIndex:"book_title",key:"book_title"},{title:"Author",dataIndex:"author",key:"author"},{title:"Barcode",dataIndex:"barcode",key:"barcode"},{title:"Due Date",dataIndex:"return_date",key:"return_date"},{title:"Renewal Count",dataIndex:"renewal_count",key:"renewal_count"},{title:"Max Renewal",dataIndex:"maximum_renewal",key:"maximum_renewal"},{title:"Days Remaining",dataIndex:"days_remaining",key:"days_remaining",render:U=>U??"-"},{title:"Overdue Days",dataIndex:"overdue_days",key:"overdue_days",render:U=>U??"-"},{title:"Fine",dataIndex:"fine_amount",key:"fine_amount",render:U=>U??"-"},{title:"Due",dataIndex:"due_amount",key:"due_amount",render:U=>U??"-"},{title:"Can Renew",dataIndex:"can_renew",key:"can_renew",render:U=>e.jsx(s.Tag,{color:U?"green":"red",children:U?"Yes":"No"})},{title:"Reasons",dataIndex:"reasons",key:"reasons",render:U=>Array.isArray(U)?U.join("; "):"-"}];case"studentWiseReport":return[{title:"Student ID",dataIndex:"student_id",key:"student_id"},{title:"Student Name",dataIndex:"student_name",key:"student_name"},{title:"Admission No",dataIndex:"admission_no",key:"admission_no"},{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Books",dataIndex:"unique_books_renewed",key:"unique_books_renewed"},{title:"First Renewal",dataIndex:"first_renewal_date",key:"first_renewal_date"},{title:"Last Renewal",dataIndex:"last_renewal_date",key:"last_renewal_date"}];case"bookWiseReport":return[{title:"Book ID",dataIndex:"book_id",key:"book_id"},{title:"Title",dataIndex:"book_title",key:"book_title"},{title:"Author",dataIndex:"author",key:"author"},{title:"Barcode",dataIndex:"barcode",key:"barcode"},{title:"Category",dataIndex:"category",key:"category"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"}];case"classWiseReport":return[{title:"Class",dataIndex:"class",key:"class"},{title:"Section",dataIndex:"section",key:"section"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"}];case"staffWiseReport":return[{title:"Staff",dataIndex:"renewed_by",key:"renewed_by"},{title:"Staff Name",dataIndex:"staff_name",key:"staff_name"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"},{title:"Unique Books",dataIndex:"unique_books",key:"unique_books"}];case"renewalStatisticsByDate":return[{title:"Period",dataIndex:"period",key:"period"},{title:"Total Renewals",dataIndex:"total_renewals",key:"total_renewals"},{title:"Unique Students",dataIndex:"unique_students",key:"unique_students"},{title:"Unique Books",dataIndex:"unique_books",key:"unique_books"}];default:return[]}},E=["renewalHistory","renewalFineReport","studentWiseReport","bookWiseReport","classWiseReport","staffWiseReport","renewalStatisticsByDate"].includes(n),P=i.useMemo(()=>C(),[n]);return e.jsx(w,{pt:5,pb:1,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,padding:"4px 8px",color:"#fff",display:"inline-block"}}),e.jsxs(w,{p:3,children:[e.jsxs(s.Row,{gutter:[16,16],mb:3,children:[E&&e.jsxs(e.Fragment,{children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(ae,{options:Ql,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Date Range",allowSelectAll:!1,value:Ql.find(U=>U.value===o)||null,onChange:U=>l(U?.value||"This Month")})}),o==="Custom"&&e.jsxs(e.Fragment,{children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(Ge,{Desplay:"From Date",format:"YYYY-MM-DD",onChange:U=>c(U?U.format("YYYY-MM-DD"):"")})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(Ge,{Desplay:"To Date",format:"YYYY-MM-DD",onChange:U=>f(U?U.format("YYYY-MM-DD"):"")})})]})]}),n==="upcomingRenewalDue"&&e.jsx(s.Col,{xs:24,md:6,children:e.jsx(ae,{options:[{label:"7 Days",value:7},{label:"14 Days",value:14},{label:"30 Days",value:30}],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Days Ahead",allowSelectAll:!1,value:{label:p+" Days",value:p},onChange:U=>m(U?.value||7)})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{display:"flex",alignItems:"center",height:"100%",mt:2,children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:F})})})]}),e.jsx(s.Tabs,{activeKey:n,onChange:k,items:Xl})]})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:Xl.find(U=>U.key===n)?.label||"Report"})}),e.jsxs(w,{p:3,children:[e.jsx(Jt,{data:{tableRef:A}}),j?e.jsx(w,{py:8,textAlign:"center",children:e.jsx(s.Typography.Text,{type:"secondary",children:"Loading report data..."})}):e.jsx(s.Table,{size:"small",dataSource:O,columns:P,loading:j,pagination:!1,bordered:!0,rowKey:U=>U.renewal_id||U.id||JSON.stringify(U),ref:A}),O.length>0&&e.jsx(s.Pagination,{current:v,pageSize:y,total:z.total_rows||O.length,onChange:(U,H)=>{S(U),g(H)},showSizeChanger:!0,showQuickJumper:!0,pageSizeOptions:[10,20,50,100],style:{marginTop:16,textAlign:"right"}})]})]})})]})})}const Br=t=>t??localStorage.getItem("authToken")??"",nx=(t,a)=>{const n=String(t??""),r=String(a);return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},mt={upload:"api/branchapi/frontoffice/uploadfrontofficeDocument",academy:{classes:"api/branchapi/academy/classdropdownlist",sections:"api/branchapi/academy/sectionoftheClass"},student:{dropdown:"api/branchapi/student/studentDropdown"},vendor:{list:"api/accounts/vendor/vendorTable",add:"api/accounts/vendor/addvendor",edit:"api/accounts/vendor/editVendor",remove:"api/accounts/vendor/removecategory",dropdown:"api/accounts/vendor/vendorlist"},category:{list:"api/accounts/category/fetchcategorytable",add:"api/accounts/category/addcategory",edit:"api/accounts/category/editcategory",remove:"api/accounts/category/removecategory",dropdown:"api/accounts/category/categoryDropdown"},subCategory:{list:"api/accounts/category/fetchsubcategorytable",add:"api/accounts/category/addsubcategory",edit:"api/accounts/category/editsubcategory",remove:"api/accounts/category/removesubcategory",dropdown:"api/accounts/category/subcategoryDropdown"},unit:{list:"api/accounts/category/fetchunit",add:"api/accounts/category/addunit",edit:"api/accounts/category/editunit",remove:"api/accounts/category/removeunit",dropdown:"api/accounts/category/unitDropdown"},product:{list:"api/accounts/product/fetchproducttable",add:"api/accounts/product/addproduct",edit:"api/accounts/product/editproduct",remove:"api/accounts/product/removeproduct",dropdown:"api/accounts/product/productdropdown",search:"api/accounts/product/searchproductbyNameandBarcode",addStock:"api/accounts/product/addStock",sellProduct:"api/accounts/product/sellproduct",sellReports:"api/accounts/product/getstoreSellReports"},report:{stock:"api/report/StoreReport/stock_report"}},sx=()=>nx(Nt(),mt.upload),rx=async({baseUrl:t,page:a=1,perPage:n=10},r)=>{const o=t.includes("?")?"&":"?",l=`${t}${o}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(n))}`;return Y(l,Br(r))},fs=async(t,a,n)=>Ze(t,a,Br(n)),Dn=async(t,a,n)=>ct(t,a,Br(n)),gs=async(t,a,n)=>st(t,a,Br(n)),ix=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",Sn=({token:t,value:a,onChange:n})=>{const r=i.useMemo(()=>{if(t)return{Authorization:t}},[t]);return e.jsx(s.Upload,{maxCount:1,action:sx(),headers:r,onChange:o=>{if(o?.file?.status==="done"){const l=ix(o?.file?.response);l&&n?.(l)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:"Upload"})})},er=mt.vendor,ys=({baseUrl:t,page:a=1,perPage:n=10,token:r})=>q(r&&t?[t,a,n,r]:null,([l,d,c,h])=>rx({baseUrl:l,page:d,perPage:c},h)),ox=({token:t,page:a=1,perPage:n=10})=>ys({baseUrl:er.list,page:a,perPage:n,token:t}),lx={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},Zl=[{name:"name",label:"Name*",required:!0,type:"text"},{name:"email",label:"Email*",required:!0,type:"text"},{name:"address",label:"Address*",required:!0,type:"text"},{name:"phone",label:"Phone*",required:!0,type:"number"},{name:"business_name",label:"Brand Name*",required:!0,type:"text"},{name:"acc_number",label:"Account Number",required:!1,type:"text"},{name:"ifsc_code",label:"IFSC Code",required:!1,type:"text"},{name:"acc_holder_name",label:"Account Holder Name",required:!1,type:"text"},{name:"gst_number",label:"GST Number",required:!1,type:"text"},{name:"cin_num",label:"CIN Number",required:!1,type:"text"},{name:"upi_id",label:"UPI ID",required:!1,type:"text"}];function dx({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c,h]=i.useState(""),{isLoading:f,error:p,data:m,mutate:v}=ox({token:t,page:a.page,perPage:a.rowsPerPage}),S=async A=>{try{await v(fs(er.add,A,t),pt(A)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(_){D.error(_?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},y=A=>{A.preventDefault();const _=new FormData(A.target);c&&_.set("image",c),S(_),A.target.reset(),h("")},g=(A,_)=>{n({page:A,rowsPerPage:parseInt(_,10)})},b=async A=>{try{await v(gs(er.remove,A,t),ot(A)),D.success("Success! Deleted item.",{duration:1e3})}catch(_){D.error(_?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},T=A=>{d(A),o(!0),h("")},R=async A=>{A.preventDefault();const _=new FormData(A.target);_.set("id",String(l?.id??"")),c&&_.set("image",c);try{await Dn(er.edit,_,t),await v(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),d(null),h("")}catch(u){D.error(u?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},I=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0},{title:"Email",dataIndex:"email",key:"email",ellipsis:!0,responsive:["md"]},{title:"Address",dataIndex:"address",key:"address",ellipsis:!0,responsive:["lg"]},{title:"Phone",dataIndex:"phone",key:"phone",ellipsis:!0,responsive:["md"]},{title:"Branch Name",dataIndex:"business_name",key:"business_name",ellipsis:!0,responsive:["lg"]},{title:"Account Holder",dataIndex:"acc_holder_name",key:"acc_holder_name",ellipsis:!0,responsive:["xl"]},{title:"Account Number",dataIndex:"acc_number",key:"acc_number",ellipsis:!0,responsive:["xl"]},{title:"UPI ID",dataIndex:"upi_id",key:"upi_id",ellipsis:!0,responsive:["xl"]},{title:"Action",key:"action",width:100,fixed:"right",render:(A,_)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>T(_),style:{padding:2}}),e.jsx(At,{id:_?.id,funcName:b})]})}],[b]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{open:r,title:l?.name?`Edit ${l.name}`:"Edit Vendor",placement:"right",width:520,onClose:()=>{o(!1),d(null),h("")},children:e.jsx("form",{onSubmit:R,children:e.jsxs("div",{style:{display:"grid",gap:14},children:[Zl.map(A=>e.jsx(G,{type:A.type,name:A.name,label:A.label,defaultValue:l?.[A.name]??"",required:A.required?"required":void 0},A.name)),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(Sn,{token:t,value:c,onChange:h})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null),h("")},style:lx,children:"Cancel"})]})]})})}),e.jsxs(w,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Vendor"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:y,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:16,alignItems:"end"},children:[Zl.map(A=>e.jsx(G,{type:A.type,name:A.name,label:A.label,required:A.required?"required":void 0},A.name)),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(Sn,{token:t,value:c,onChange:h})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Add Vendor",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Vendors List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:g,data:{newData:m,columns:I,columnstype:"antd",action:!1,Loading:f,error:p}})})]})]})]})}const cx=({token:t})=>e.jsx(dx,{token:t}),tr=mt.product,ed=mt.vendor.dropdown,td=mt.category.dropdown,ux=mt.subCategory.dropdown,ad=mt.unit.dropdown,hu=({token:t,page:a=1,perPage:n=10})=>ys({baseUrl:tr.list,page:a,perPage:n,token:t}),px=({token:t})=>q(t&&ed?[ed,t]:null,([n,r])=>Y(n,r)),mx=({token:t})=>q(t&&td?[td,t]:null,([n,r])=>Y(n,r)),hx=({token:t})=>q(t&&ad?[ad,t]:null,([n,r])=>Y(n,r)),fx=({token:t,categoryId:a})=>{const n=t&&a?`${ux}?category_id=${encodeURIComponent(String(a))}`:null;return q(n?[n,t]:null,([o,l])=>Y(o,l))},Ls=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},gx={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function yx({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c,h]=i.useState(""),[f,p]=i.useState(""),[m,v]=i.useState(""),[S,y]=i.useState(""),[g,b]=i.useState(""),{isLoading:T,error:R,data:I,mutate:A}=hu({token:t,page:a.page,perPage:a.rowsPerPage}),{data:_}=px({token:t}),{data:u}=mx({token:t}),{data:x}=hx({token:t}),{data:j}=fx({token:t,categoryId:f}),M=i.useMemo(()=>Ls(_),[_]),O=i.useMemo(()=>Ls(u),[u]),z=i.useMemo(()=>Ls(x),[x]),k=i.useMemo(()=>Ls(j),[j]),F=async L=>{try{await A(fs(tr.add,L,t),pt(L)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(B){D.error(B?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},C=L=>{L.preventDefault();const B=new FormData(L.target);f&&B.set("fk_categoryID",String(f)),m&&B.set("fk_sub_categoryID",String(m)),S&&B.set("vendor_id",String(S)),g&&B.set("unit",String(g)),c&&B.set("image",c),F(B),L.target.reset(),h(""),p(""),v(""),y(""),b("")},E=(L,B)=>{n({page:L,rowsPerPage:parseInt(B,10)})},P=async L=>{try{await A(gs(tr.remove,L,t),ot(L)),D.success("Success! Deleted item.",{duration:1e3})}catch(B){D.error(B?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},U=L=>{d(L),o(!0),h(""),p(L?.fk_categoryID??L?.category_id??""),v(L?.fk_sub_categoryID??L?.sub_category_id??""),y(L?.vendor_id??""),b(L?.unit??L?.unit_id??"")},H=async L=>{L.preventDefault();const B=new FormData(L.target);B.set("id",String(l?.id??"")),f&&B.set("fk_categoryID",String(f)),m&&B.set("fk_sub_categoryID",String(m)),S&&B.set("vendor_id",String(S)),g&&B.set("unit",String(g)),c&&B.set("image",c);try{await Dn(tr.edit,B,t),await A(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),d(null),h("")}catch($){D.error($?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},W=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,fixed:"left",width:180},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,responsive:["lg"]},{title:"Category",dataIndex:"storecategory",key:"storecategory",ellipsis:!0,responsive:["md"]},{title:"Quantity",dataIndex:"quantity",key:"quantity",ellipsis:!0,width:100,responsive:["md"]},{title:"Unit",dataIndex:"unit_name",key:"unit_name",ellipsis:!0,width:120,responsive:["md"]},{title:"Price",dataIndex:"price",key:"price",ellipsis:!0,width:100,responsive:["md"]},{title:"Barcode",dataIndex:"barcode",key:"barcode",ellipsis:!0,responsive:["xl"]},{title:"Hsn Code",dataIndex:"hsn_code",key:"hsn_code",ellipsis:!0,responsive:["xl"]},{title:"Action",key:"action",width:100,fixed:"right",render:(L,B)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>U(B),style:{padding:2}}),e.jsx(At,{id:B?.id,funcName:P})]})}],[P]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{open:r,title:l?.name?`Edit ${l.name}`:"Edit Product",placement:"right",width:520,onClose:()=>{o(!1),d(null),h("")},children:e.jsx("form",{onSubmit:H,children:e.jsxs("div",{style:{display:"grid",gap:14},children:[e.jsx(G,{type:"text",name:"name",label:"Product Name*",defaultValue:l?.name??"",required:"required"}),e.jsx(ae,{options:O,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category*",name:"fk_categoryID",allowSelectAll:!1,required:!0,onChange:L=>{const B=L?.value??"";p(B),v("")},defaultValue:f?O.find(L=>String(L?.value)===String(f)):null}),e.jsx(ae,{options:k,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"SubCategory",name:"fk_sub_categoryID",allowSelectAll:!1,onChange:L=>v(L?.value??""),defaultValue:m?k.find(L=>String(L?.value)===String(m)):null}),e.jsx(G,{type:"text",name:"barcode",label:"Barcode",defaultValue:l?.barcode??""}),e.jsx(ae,{options:z,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Unit*",name:"unit",allowSelectAll:!1,required:!0,onChange:L=>b(L?.value??""),defaultValue:g?z.find(L=>String(L?.value)===String(g)):null}),e.jsx(G,{type:"number",name:"quantity",label:"Quantity*",defaultValue:l?.quantity??"",required:"required"}),e.jsx(G,{type:"number",name:"price",label:"Price*",defaultValue:l?.price??"",required:"required"}),e.jsx(ae,{options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vendor*",name:"vendor_id",allowSelectAll:!1,required:!0,onChange:L=>y(L?.value??""),defaultValue:S?M.find(L=>String(L?.value)===String(S)):null}),e.jsx(G,{type:"number",name:"hsn_code",label:"Hsn Code",defaultValue:l?.hsn_code??""}),e.jsx(kt,{type:"text",label:"Description",name:"description",rows:3,defaultValue:l?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(Sn,{token:t,value:c,onChange:h})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null),h("")},style:gx,children:"Cancel"})]})]})})}),e.jsxs(w,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Product"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:C,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(G,{type:"text",name:"name",label:"Product Name*",required:"required"}),e.jsx(ae,{options:O,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category*",name:"fk_categoryID",allowSelectAll:!1,required:!0,onChange:L=>{const B=L?.value??"";p(B),v("")}}),e.jsx(ae,{options:k,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"SubCategory",name:"fk_sub_categoryID",allowSelectAll:!1,onChange:L=>v(L?.value??"")},`subcat_${f}`),e.jsx(G,{type:"text",name:"barcode",label:"Barcode"}),e.jsx(ae,{options:z,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Unit*",name:"unit",allowSelectAll:!1,required:!0,onChange:L=>b(L?.value??"")}),e.jsx(G,{type:"number",name:"quantity",label:"Quantity*",required:"required"}),e.jsx(G,{type:"number",name:"price",label:"Price*",required:"required"}),e.jsx(ae,{options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Vendor*",name:"vendor_id",allowSelectAll:!1,required:!0,onChange:L=>y(L?.value??"")}),e.jsx(G,{type:"number",name:"hsn_code",label:"Hsn Code"}),e.jsx(kt,{type:"text",label:"Description",name:"description",rows:3}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(Sn,{token:t,value:c,onChange:h})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Add Product",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Products List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:E,data:{newData:I,columns:W,columnstype:"antd",action:!1,Loading:T,error:R}})})]})]})]})}const xx=({token:t})=>e.jsx(yx,{token:t}),ar=mt.category,bx=({token:t,page:a=1,perPage:n=10})=>ys({baseUrl:ar.list,page:a,perPage:n,token:t}),jx={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Sx({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),{isLoading:c,error:h,data:f,mutate:p}=bx({token:t,page:a.page,perPage:a.rowsPerPage}),m=async R=>{try{await p(fs(ar.add,R,t),pt(R)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(I){D.error(I?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},v=R=>{R.preventDefault();const I=new FormData(R.target);m(I),R.target.reset()},S=(R,I)=>{n({page:R,rowsPerPage:parseInt(I,10)})},y=async R=>{try{await p(gs(ar.remove,R,t),ot(R)),D.success("Success! Deleted item.",{duration:1e3})}catch(I){D.error(I?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},g=R=>{d(R),o(!0)},b=async R=>{R.preventDefault();const I=new FormData(R.target);I.set("id",String(l?.id??""));try{await Dn(ar.edit,I,t),await p(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),d(null)}catch(A){D.error(A?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},T=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,sorter:{compare:(R,I)=>String(R?.name??"").localeCompare(String(I?.name??""))}},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,sorter:{compare:(R,I)=>String(R?.description??"").localeCompare(String(I?.description??""))}},{title:"Action",key:"action",width:100,fixed:"right",render:(R,I)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>g(I),style:{padding:2}}),e.jsx(At,{id:I?.id,funcName:y})]})}],[y]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{open:r,title:l?.name?`Edit ${l.name}`:"Edit Category",placement:"right",width:420,onClose:()=>{o(!1),d(null)},children:e.jsx("form",{onSubmit:b,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(G,{type:"text",name:"name",label:"Name",defaultValue:l?.name??"",required:"required"}),e.jsx(G,{type:"text",name:"description",label:"Description",defaultValue:l?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},style:jx,children:"Cancel"})]})]})})}),e.jsxs(w,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Category"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:v,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(G,{type:"text",name:"name",label:"Name*",required:"required"}),e.jsx(G,{type:"text",name:"description",label:"Description"}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Category List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:S,data:{newData:f,columns:T,columnstype:"antd",action:!1,Loading:c,error:h}})})]})]})]})}const wx=({token:t})=>e.jsx(Sx,{token:t}),nr=mt.subCategory,nd=mt.category.dropdown,vx=({token:t,page:a=1,perPage:n=10})=>ys({baseUrl:nr.list,page:a,perPage:n,token:t}),Cx=({token:t})=>q(t&&nd?[nd,t]:null,([n,r])=>Y(n,r)),_x=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]},Ax={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function Dx({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c,h]=i.useState(""),{isLoading:f,error:p,data:m,mutate:v}=vx({token:t,page:a.page,perPage:a.rowsPerPage}),{data:S}=Cx({token:t}),y=i.useMemo(()=>_x(S),[S]),g=async u=>{try{await v(fs(nr.add,u,t),pt(u)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(x){D.error(x?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},b=u=>{u.preventDefault();const x=new FormData(u.target);x.set("status","active"),x.set("img",c||""),g(x),u.target.reset(),h("")},T=(u,x)=>{n({page:u,rowsPerPage:parseInt(x,10)})},R=async u=>{try{await v(gs(nr.remove,u,t),ot(u)),D.success("Success! Deleted item.",{duration:1e3})}catch(x){D.error(x?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},I=u=>{d(u),o(!0)},A=async u=>{u.preventDefault();const x=new FormData(u.target);x.set("id",String(l?.id??"")),c&&x.set("img",c);try{await Dn(nr.edit,x,t),await v(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),d(null),h("")}catch(j){D.error(j?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},_=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,sorter:{compare:(u,x)=>String(u?.name??"").localeCompare(String(x?.name??""))}},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,sorter:{compare:(u,x)=>String(u?.description??"").localeCompare(String(x?.description??""))}},{title:"Action",key:"action",width:100,fixed:"right",render:(u,x)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>I(x),style:{padding:2}}),e.jsx(At,{id:x?.id,funcName:R})]})}],[R]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{open:r,title:l?.name?`Edit ${l.name}`:"Edit Sub Category",placement:"right",width:420,onClose:()=>{o(!1),d(null),h("")},children:e.jsx("form",{onSubmit:A,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",name:"category_id",defaultValue:l?.category_id?y.find(u=>String(u?.value)===String(l.category_id)):null,allowSelectAll:!1,required:!0}),e.jsx(G,{type:"text",name:"name",label:"Name*",defaultValue:l?.name??"",required:"required"}),e.jsx(G,{type:"text",name:"description",label:"Description",defaultValue:l?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(Sn,{token:t,value:c,onChange:h})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null),h("")},style:Ax,children:"Cancel"})]})]})})}),e.jsxs(w,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Sub Category"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:b,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Category",name:"category_id",allowSelectAll:!1,required:!0}),e.jsx(G,{type:"text",name:"name",label:"Name*",required:"required"}),e.jsx(G,{type:"text",name:"description",label:"Description"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{fontSize:12,color:"#222"},children:"Image"}),e.jsx(Sn,{token:t,value:c,onChange:h})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Sub Category List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:T,data:{newData:m,columns:_,columnstype:"antd",action:!1,Loading:f,error:p}})})]})]})]})}const Tx=({token:t})=>e.jsx(Dx,{token:t}),vi=mt.product,kx=mt.academy.classes,Rx=mt.academy.sections,Ix=mt.student.dropdown;function zn(t){const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]}function Us(t,a){const n=Math.trunc(Number(t)||1),r=Math.max(1,n);return!Number.isFinite(Number(a))||Number(a)<=0?r:Math.min(r,Math.trunc(Number(a)))}function Et(t){return String(t??"")}function Px({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(""),[l,d]=i.useState(""),[c,h]=i.useState(!1),[f,p]=i.useState(""),[m,v]=i.useState([]),[S,y]=i.useState({}),[g,b]=i.useState({}),[T,R]=i.useState(!1),[I,A]=i.useState(""),[_,u]=i.useState(0),[x,j]=i.useState(""),[M,O]=i.useState(ne()),[z,k]=i.useState([]),F={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"},C=!!(a&&r&&l),{data:E}=q(t?[kx,t]:null,([we,ke])=>Y(we,ke)),P=i.useMemo(()=>zn(E),[E]),U=t&&a?`${Rx}?class_id=${encodeURIComponent(String(a))}`:null,{data:H}=q(U?[U,t]:null,([we,ke])=>Y(we,ke)),W=i.useMemo(()=>zn(H),[H]),L=t&&a&&r?`${Ix}?class=${encodeURIComponent(String(a))}&section=${encodeURIComponent(String(r))}`:null,{data:B}=q(L?[L,t]:null,([we,ke])=>Y(we,ke)),$=i.useMemo(()=>zn(B),[B]),N=C?`${vi.list}?page=1&per_page=10000`:null,{data:V,isLoading:Q}=q(t&&N?[N,t]:null,([we,ke])=>Y(we,ke),{revalidateOnFocus:!1}),Z=i.useMemo(()=>zn(V),[V]),J=i.useMemo(()=>{const we=new Map;return(Array.isArray(Z)?Z:[]).forEach(ke=>{we.set(Et(ke?.id),ke)}),we},[Z]),K=i.useMemo(()=>{const we=Object.entries(g||{});return we.length===0?[]:we.map(([ke,De])=>{const ce=J.get(Et(ke));return ce?{id:ce?.id,name:ce?.name,barcode:ce?.barcode,stock:Number(ce?.quantity||0),price:Number(ce?.price||0),quantity:Us(De,Number(ce?.quantity||0))}:null}).filter(Boolean)},[g,J]),X=i.useMemo(()=>new Set(K.map(we=>Et(we?.id))),[K]),ee=i.useMemo(()=>(Array.isArray(K)?K:[]).reduce((ke,De)=>ke+Number(De?.price||0)*Number(De?.quantity||1),0),[K]),pe=i.useMemo(()=>{const we=Number(_||0);return!Number.isFinite(we)||we<=0?0:Math.min(we,ee)},[_,ee]),te=i.useMemo(()=>Math.max(0,ee-pe),[pe,ee]),se=i.useMemo(()=>(Array.isArray(Z)?Z:[]).slice(0,30).map(we=>({value:Et(we?.id),label:`${we?.name??""}${we?.barcode?` • ${we.barcode}`:""}${we?.quantity!==void 0&&we?.quantity!==null?` • Stock: ${we.quantity}`:""}`,product:we})),[Z]),{trigger:le}=it(t&&C?vi.search:null,(we,{arg:ke})=>Da(we,{arg:ke},t));i.useEffect(()=>{if(!C){v([]);return}const we=String(f||"").trim();if(we.length<2){v(se);return}let ke=!0;const De=setTimeout(async()=>{let ce=[];try{if(le){const _e=await le({search:we});ce=zn(_e)}}catch{ce=[]}if(!Array.isArray(ce)||ce.length===0){const _e=we.toLowerCase();ce=(Array.isArray(Z)?Z:[]).filter(Ve=>{const He=String(Ve?.name??"").toLowerCase(),je=String(Ve?.barcode??"").toLowerCase();return He.includes(_e)||je.includes(_e)}).slice(0,30)}const ve=ce.slice(0,30).map(_e=>({value:Et(_e?.id),label:`${_e?.name??""}${_e?.barcode?` • ${_e.barcode}`:""}${_e?.quantity!==void 0&&_e?.quantity!==null?` • Stock: ${_e.quantity}`:""}`,product:_e}));ke&&v(ve)},250);return()=>{ke=!1,clearTimeout(De)}},[se,C,le,Z,f]),i.useEffect(()=>{b({}),y({}),p(""),v([]),R(!1),A(""),u(0),j(""),O(ne()),k([])},[a,r,l]);const Ce=i.useCallback((we,ke=1)=>{const De=we?.id;if(!De)return;const ce=Number(we?.quantity||0);if(ce<=0){D.error("Out of stock.",{duration:1e3});return}const ve=Us(ke,ce);b(_e=>{const Ve=_e||{};return Object.prototype.hasOwnProperty.call(Ve,Et(De))?(D.error("Product already added.",{duration:1e3}),Ve):{...Ve,[Et(De)]:ve}})},[b]),Le=i.useCallback((we,ke,De)=>{b(ce=>{const ve=ce||{},_e=Et(we);return Object.prototype.hasOwnProperty.call(ve,_e)?{...ve,[_e]:Us(ke,De)}:ve})},[]),Re=i.useCallback(we=>{b(ke=>{const De=ke||{},ce=Et(we);if(!Object.prototype.hasOwnProperty.call(De,ce))return De;const ve={...De};return delete ve[ce],ve})},[]),xe=i.useCallback((we,ke,De)=>{y(ce=>({...ce||{},[Et(we)]:Us(ke,De)}))},[]),Te=i.useCallback((we,ke)=>{ke?.product&&Ce(ke.product,1),p(""),v(se)},[Ce,se]),Ue=i.useCallback(we=>{if(we.key!=="Enter")return;we.preventDefault();const ke=Array.isArray(m)&&m.length>0?m[0]:null;if(ke?.product){Ce(ke.product,1),p(""),v(se);return}const De=String(f||"").trim().toLowerCase();if(De.length===0)return;const ce=(Array.isArray(Z)?Z:[]).find(ve=>{const _e=String(ve?.name??"").toLowerCase(),Ve=String(ve?.barcode??"").toLowerCase();return _e.includes(De)||Ve.includes(De)});ce&&(Ce(ce,1),p(""),v(se))},[Ce,se,Z,m,f]),ye=()=>{if(!t){D.error("Missing token.",{duration:1e3});return}if(!a){D.error("Select class.",{duration:1e3});return}if(!r){D.error("Select section.",{duration:1e3});return}if(!l){D.error("Select student.",{duration:1e3});return}if(!K||K.length===0){D.error("Add at least one product.",{duration:1e3});return}R(!0)},{trigger:me,isMutating:Pe}=it(t?vi.sellProduct:null,(we,{arg:ke})=>hs(we,{arg:ke},t)),Ye=async()=>{if(!I){D.error("Select payment type.",{duration:1e3});return}const we=(Array.isArray(K)?K:[]).map(De=>({id:De?.id,quantity:Number(De?.quantity||1),price:Number(De?.price||0),total_price:Number(De?.total_price||0),fk_vendor_id:De?.fk_vendor_id||"",fk_categoryID:De?.fk_categoryID||"",name:De?.name||"",class_id:De?.class_id||"",fk_sub_categoryID:De?.fk_sub_categoryID||"",description:De?.description||"",min_quantity:Number(De?.min_quantity||0),storecategory:Number(De?.storecategory||0),barcode:De?.barcode||""})),ke={amount:ee,class:a,section:r,student_id:l,payment_type:I,discount:pe,notes:x||"",receipt_date:M?ne(M).format("YYYY-MM-DD"):"",product:JSON.stringify(we),total_payable_amount:ee,attchement:z[0]?.originFileObj||""};try{const ce=Array.isArray(z)&&z.length>0&&z[0]?.originFileObj?(()=>{const _e=new FormData;return Object.entries(ke).forEach(([Ve,He])=>{if(Ve==="products"){_e.append("product",JSON.stringify(He));return}_e.append(Ve,String(He??""))}),_e.append("attachment",z[0].originFileObj),_e})():ke,ve=await me(ce);ve?.Status==="Success"?(D.success("Success! Product sold.",{duration:1e3}),R(!1),b({}),y({}),p(""),v(se),A(""),u(0),j(""),O(ne()),k([])):D.error(ve?.msg??"Failed to submit.",{duration:1e3})}catch{D.error("Failed to submit.",{duration:1e3})}},ze=i.useMemo(()=>[{title:"Product Name",dataIndex:"name",key:"name",ellipsis:!0},{title:"Barcode",dataIndex:"barcode",key:"barcode",width:160},{title:"Stock",dataIndex:"quantity",key:"quantity",width:110},{title:"Price",dataIndex:"price",key:"price",width:120},{title:"Quantity",key:"quantity",width:160,render:(we,ke)=>{const De=Et(ke?.id),ce=Number(ke?.quantity||0),ve=X.has(De),_e=(ve?g?.[De]:S?.[De])??1;return e.jsx(s.InputNumber,{min:1,max:Number.isFinite(ce)&&ce>0?ce:void 0,value:_e,onChange:Ve=>{ve?Le(De,Ve,ce):xe(De,Ve,ce)},disabled:ce<=0})}},{title:"Amount",key:"amount",width:140,render:(we,ke)=>{const De=Et(ke?.id),ce=(X.has(De)?g?.[De]:S?.[De])??1;return Number(ke?.price||0)*Number(ce||1)}},{title:"Action",key:"action",width:120,render:(we,ke)=>{const De=Et(ke?.id),ce=Number(ke?.quantity||0),ve=X.has(De),_e=(ve?g?.[De]:S?.[De])??1;return ve?e.jsx(s.Button,{type:"text",danger:!0,size:"small",icon:e.jsx(re.DeleteOutlined,{}),onClick:()=>Re(De),style:{padding:2}}):e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.PlusOutlined,{}),disabled:ce<=0,onClick:()=>Ce(ke,_e),style:{padding:2}})}}],[Ce,X,g,S,Re,xe,Le]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(w,{pt:5,pb:2,children:[e.jsxs(w,{style:{padding:"12px 16px"},children:[e.jsx(w,{children:"Sell Product"}),e.jsx(s.Card,{style:{borderRadius:16},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(ae,{options:P,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",placeholder:"Class",allowSelectAll:!1,required:!0,onChange:we=>{const ke=we?.value??"";n(ke),o(""),d(""),h(De=>!De)}}),e.jsx(ae,{options:W,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",placeholder:"Section",allowSelectAll:!1,required:!0,onChange:we=>{const ke=we?.value??"";o(ke),d("")}},`section_${c}`),e.jsx(ae,{options:$,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Student",name:"student_id",placeholder:"Student",allowSelectAll:!1,required:!0,onChange:we=>d(we?.value??"")})]})})]}),e.jsx("div",{style:{padding:"0 16px"},children:e.jsxs(s.Card,{style:{borderRadius:16,marginTop:12},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(260px, 520px) 1fr",gap:12,alignItems:"center",marginBottom:12},children:[e.jsx(w,{style:{marginTop:12},children:"Product Section"}),e.jsx(s.AutoComplete,{value:f,options:m,onSearch:p,onFocus:()=>{C&&String(f||"").trim().length<2&&v(se)},onSelect:Te,disabled:!C,children:e.jsx(s.Input,{placeholder:"Search by product name or barcode",onKeyDown:Ue,allowClear:!0})}),e.jsxs("div",{style:{justifySelf:"end",fontWeight:700},children:["Total: ",ra(ee)]})]}),e.jsx(s.Table,{rowKey:we=>Et(we?.id),columns:ze,dataSource:Z,loading:Q,size:"small",bordered:!0,pagination:{pageSize:50,showSizeChanger:!0,pageSizeOptions:[25,50,100,200]},scroll:{x:"max-content"}}),e.jsxs("div",{style:{position:"sticky",bottom:0,background:"#fff",paddingTop:12,marginTop:12,borderTop:"1px solid #f0f0f0"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontWeight:700},children:[e.jsx("span",{children:"Selected Items"}),e.jsx("span",{children:K.length})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontWeight:700,marginTop:6},children:[e.jsx("span",{children:"Total Amount"}),e.jsx("span",{children:ra(ee)})]}),e.jsxs("div",{style:{display:"flex",gap:12,marginTop:12},children:[e.jsx(de,{type:"button",value:"Submit",disabled:!C||K.length===0,onClick:ye,style:{flex:1,minWidth:140}}),e.jsx(s.Button,{type:"text",style:F,onClick:()=>{b({}),y({}),p(""),v(se)},disabled:K.length===0,children:"Clear"})]})]})]})})]}),e.jsx(s.Modal,{open:T,title:"Payment",onCancel:()=>R(!1),onOk:Ye,confirmLoading:Pe,okText:"Submit",destroyOnClose:!0,children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Payment Type"}),e.jsx(s.Select,{value:I||void 0,onChange:A,placeholder:"Select payment type",style:{width:"100%"},options:[{value:"Cash",label:"Cash"},{value:"UPI",label:"UPI"},{value:"Bank",label:"Bank"},{value:"Cheque",label:"Cheque"},{value:"DD",label:"DD"},{value:"Internet Banking",label:"Internet Banking"}]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Receipt Date"}),e.jsx(s.DatePicker,{value:M,onChange:we=>O(we),style:{width:"100%"},format:"YYYY-MM-DD"})]})]}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Discount"}),e.jsx(s.InputNumber,{min:0,max:ee,value:_,onChange:we=>u(Number(we||0)),style:{width:"100%"}})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Attachment"}),e.jsx(s.Upload,{fileList:z,beforeUpload:()=>!1,onChange:({fileList:we})=>k((we||[]).slice(-1)),maxCount:1,children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),children:"Upload"})})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,fontWeight:600,marginBottom:6},children:"Notes"}),e.jsx(s.Input.TextArea,{value:x,onChange:we=>j(we.target.value),rows:3})]}),e.jsx(s.Card,{style:{borderRadius:12,background:"#fafcff"},children:e.jsxs("div",{style:{display:"grid",gap:8},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{children:"Total Amount"}),e.jsx("span",{children:ra(ee)})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{children:"Discount"}),e.jsx("span",{children:ra(pe)})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontWeight:700},children:[e.jsx("span",{children:"Net Amount"}),e.jsx("span",{children:ra(te)})]})]})})]})})]})}const Mx=({token:t})=>e.jsx(Px,{token:t}),sr=mt.unit,Ex=({token:t,page:a=1,perPage:n=10})=>ys({baseUrl:sr.list,page:a,perPage:n,token:t}),Ox={height:36,padding:"0 14px",border:"none",background:"transparent",color:"#243a9b",fontSize:14,fontWeight:500,textTransform:"uppercase",boxShadow:"none"};function $x({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),{isLoading:c,error:h,data:f,mutate:p}=Ex({token:t,page:a.page,perPage:a.rowsPerPage}),m=async R=>{try{await p(fs(sr.add,R,t),pt(R)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch(I){D.error(I?.response?.data?.msg??"Failed to add the new item.",{duration:1e3})}},v=R=>{R.preventDefault();const I=new FormData(R.target);m(I),R.target.reset()},S=(R,I)=>{n({page:R,rowsPerPage:parseInt(I,10)})},y=async R=>{try{await p(gs(sr.remove,R,t),ot(R)),D.success("Success! Deleted item.",{duration:1e3})}catch(I){D.error(I?.response?.data?.msg??"Failed to delete the item.",{duration:1e3})}},g=R=>{d(R),o(!0)},b=async R=>{R.preventDefault();const I=new FormData(R.target);I.set("id",String(l?.id??""));try{await Dn(sr.edit,I,t),await p(),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),o(!1),d(null)}catch(A){D.error(A?.response?.data?.msg??"Failed to update the item.",{duration:1e3})}},T=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,sorter:{compare:(R,I)=>String(R?.name??"").localeCompare(String(I?.name??""))}},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,sorter:{compare:(R,I)=>String(R?.description??"").localeCompare(String(I?.description??""))}},{title:"Action",key:"action",width:100,fixed:"right",render:(R,I)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>g(I),style:{padding:2}}),e.jsx(At,{id:I?.id,funcName:y})]})}],[y]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{open:r,title:l?.name?`Edit ${l.name}`:"Edit Unit",placement:"right",width:420,onClose:()=>{o(!1),d(null)},children:e.jsx("form",{onSubmit:b,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(G,{type:"text",name:"name",label:"Unit Name",defaultValue:l?.name??"",required:"required"}),e.jsx(G,{type:"text",name:"description",label:"Description",defaultValue:l?.description??""}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},style:Ox,children:"Cancel"})]})]})})}),e.jsxs(w,{pt:5,pb:1,children:[e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Unit"})}),e.jsx(w,{px:3,pb:2,children:e.jsx("form",{onSubmit:v,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(G,{type:"text",name:"name",label:"Unit Name*",required:"required"}),e.jsx(G,{type:"text",name:"description",label:"Description"}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})})]}),e.jsxs("div",{style:{marginTop:24},children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Unit List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:S,data:{newData:f,columns:T,columnstype:"antd",action:!1,Loading:c,error:h}})})]})]})]})}const Fx=({token:t})=>e.jsx($x,{token:t}),Bx=mt.product.sellReports,Lx=mt.academy.classes,Ux=mt.academy.sections,Nx=mt.student.dropdown,sd=t=>{const a=Number(t??0);return Number.isFinite(a)?a.toLocaleString(void 0,{minimumFractionDigits:0,maximumFractionDigits:2}):String(t??"")};function zx({token:t}){const a=i.useRef(null),[n,r]=i.useState(null),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState(""),[p,m]=i.useState(!1),v=k=>{const F=k?.data?.data??k?.data??k??[];return Array.isArray(F)?F:Array.isArray(F?.data)?F.data:[]},{data:S}=q(t?[Lx,t]:null,([k,F])=>Y(k,F)),y=i.useMemo(()=>v(S),[S]),g=t&&o?`${Ux}?class_id=${encodeURIComponent(String(o))}`:null,{data:b}=q(g?[g,t]:null,([k,F])=>Y(k,F)),T=i.useMemo(()=>v(b),[b]),R=t&&o&&d?`${Nx}?class=${encodeURIComponent(String(o))}&section=${encodeURIComponent(String(d))}`:null,{data:I}=q(R?[R,t]:null,([k,F])=>Y(k,F)),A=i.useMemo(()=>v(I),[I]),{trigger:_,isMutating:u,data:x}=it(Bx,(k,{arg:F})=>co(k,{arg:F},t));i.useEffect(()=>{const F=new Date().toISOString().slice(0,10);_({duration:[F,F]})},[_]);const j=i.useMemo(()=>{const k=x?.data??x??[];return Array.isArray(k)?k:[]},[x]),M=k=>{const F=Array.isArray(k?.product_details)?k.product_details:[];return F.length===0?null:e.jsx(s.Table,{size:"small",bordered:!0,pagination:!1,rowKey:C=>`${k?.receipt_id??"r"}_${C?.product_name??C?.product_pricem??""}`,columns:[{title:"Product",dataIndex:"product_name",key:"product_name"},{title:"Amount",dataIndex:"product_pricem",key:"product_pricem",render:C=>sd(C)}],dataSource:F})},O=[{title:"Receipt No",dataIndex:"receipt_no",key:"receipt_no"},{title:"Date",dataIndex:"receipt_date",key:"receipt_date"},{title:"Amount",dataIndex:"receipt_amount",key:"receipt_amount",render:k=>sd(k)}],z=async()=>{if(!n||n.length!==2)return;const[k,F]=n;await _({duration:[k.format("YYYY-MM-DD"),F.format("YYYY-MM-DD")],class:o||"",section:d||"",student_id:h||""})};return e.jsx("div",{children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,lg:8,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Filters"}),style:{borderRadius:16},children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Duration"}),e.jsx(s.DatePicker.RangePicker,{value:n,onChange:r,style:{width:"100%"}})]}),e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",placeholder:"Class",allowSelectAll:!1,onChange:k=>{const F=k?.value??"";l(F),c(""),f(""),m(C=>!C)}}),e.jsx(ae,{options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",placeholder:"Section",allowSelectAll:!1,onChange:k=>{const F=k?.value??"";c(F),f("")}},`section_${p}`),e.jsx(ae,{options:A,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Student",placeholder:"Student",allowSelectAll:!1,onChange:k=>f(k?.value??"")}),e.jsx(de,{type:"button",value:u?"Searching...":"Search",disabled:u,onClick:z,style:{width:"100%"}})]})})}),e.jsx(s.Col,{xs:24,lg:16,children:e.jsx(s.Card,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Sell Reports"}),e.jsx(Jt,{data:{tableRef:a}})]}),style:{borderRadius:16},children:e.jsxs("div",{ref:a,children:[e.jsx("div",{className:"print-only",children:e.jsx(da,{})}),e.jsx(s.Table,{bordered:!0,size:"small",loading:u,rowKey:k=>String(k?.receipt_id??k?.receipt_no??Math.random()),columns:O,expandable:{expandedRowRender:M},dataSource:j,pagination:{pageSize:20}})]})})})]})})}const qx=({token:t})=>e.jsx(zx,{token:t}),Yx=mt.product;function Wx({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState([]),[l,d]=i.useState([]),[c,h]=i.useState(!1),[f,p]=i.useState(!1),[m,v]=i.useState(null),[S,y]=i.useState(0),[g,b]=i.useState(null),[T,R]=i.useState(""),I=i.useRef(null),A=Ka.useReactToPrint({contentRef:I,documentTitle:"Stock Barcodes"}),{isLoading:_,error:u,data:x,mutate:j}=hu({token:t,page:a.page,perPage:a.rowsPerPage}),M=(E,P)=>{n({page:E,rowsPerPage:parseInt(P,10)})},O={selectedRowKeys:r,onChange:(E,P)=>{o(E),d(P)}},z=E=>{v(E),y(Number(E?.quantity??0)),b(null),R(""),h(!0)},k=()=>{h(!1),v(null),y(0),b(null),R("")},F=async()=>{if(!m?.id)return;p(!0);const E=new FormData;E.append("product_id",String(m.id)),E.append("qty",String(S??0)),g&&E.append("tran_date",g.format("YYYY-MM-DD")),T&&E.append("remarks",T);try{const P=await Dn(Yx.addStock,E,t);P?.Status==="Success"?(D.success("Success! Updated quantity.",{duration:1e3}),k(),await j()):D.error(P?.msg??"Failed to update quantity.",{duration:1e3})}catch{D.error("Failed to update quantity.",{duration:1e3})}finally{p(!1)}},C=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0,fixed:"left",width:180},{title:"Category",dataIndex:"storecategory",key:"storecategory",ellipsis:!0,responsive:["md"]},{title:"Quantity",dataIndex:"quantity",key:"quantity",width:100},{title:"Unit",dataIndex:"unit_name",key:"unit_name",width:120,responsive:["md"]},{title:"Price",dataIndex:"price",key:"price",width:100,responsive:["md"]},{title:"Barcode",dataIndex:"barcode",key:"barcode",ellipsis:!0,responsive:["lg"]},{title:"Action",key:"action",width:160,fixed:"right",render:(E,P)=>e.jsx("div",{style:{display:"flex",gap:8},children:e.jsx(s.Button,{size:"small",onClick:()=>z(P),children:"Update Qty"})})}],[]);return e.jsxs("div",{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{title:m?.name?`Update Stock: ${m.name}`:"Update Stock",open:c,onCancel:k,onOk:F,okButtonProps:{loading:f},children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,marginBottom:6},children:"Quantity"}),e.jsx(s.InputNumber,{min:0,style:{width:"100%"},value:S,onChange:E=>y(E??0)})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:12,marginBottom:6},children:"Date"}),e.jsx(s.DatePicker,{style:{width:"100%"},value:g,onChange:b})]}),e.jsx(kt,{label:"Remarks",name:"remarks",rows:3,value:T,onChange:E=>R(E.target.value)})]})}),e.jsxs(w,{pt:5,pb:2,children:[e.jsxs(w,{children:["Manage Stock",e.jsx(de,{type:"button",value:"Print Barcodes",disabled:!l||l.length===0,onClick:()=>A?.(),style:{minWidth:170}})]}),e.jsx(w,{style:{padding:"12px 16px"},children:e.jsx(s.Card,{style:{borderRadius:16},children:e.jsx(Ke,{parentCallback:M,data:{newData:x,columns:C,columnstype:"antd",action:!1,Loading:_,error:u,rowSelection:O}})})})]}),e.jsx("div",{style:{position:"absolute",left:-1e4,top:0},children:e.jsx("div",{ref:I,children:e.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:16,padding:24},children:(Array.isArray(l)?l:[]).map(E=>e.jsxs("div",{style:{border:"1px solid #ddd",padding:12},children:[e.jsx("div",{style:{marginBottom:6,fontSize:12},children:E?.name??""}),e.jsx(Sc,{value:String(E?.barcode??E?.id??""),height:50,width:1.6,displayValue:!0})]},E?.id??E?.barcode??E?.name))})})})]})}const Vx=({token:t})=>e.jsx(Wx,{token:t}),Hx=mt.report.stock,Kx=mt.product.dropdown,Gx=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:[]};function Jx({token:t}){const a=i.useRef(null),[n,r]=i.useState(null),[o,l]=i.useState(""),{data:d}=q(t?[Kx,t]:null,([y,g])=>Y(y,g)),c=i.useMemo(()=>Gx(d),[d]),{trigger:h,isMutating:f,data:p}=it(Hx,(y,{arg:g})=>co(y,{arg:g},t));i.useEffect(()=>{const g=new Date().toISOString().slice(0,10);h({duration:[g,g]})},[h]);const m=i.useMemo(()=>{const y=p?.data??p??[];return(Array.isArray(y)?y:[]).flatMap(b=>(Array.isArray(b?.ledger)?b.ledger:[]).map((T,R)=>({key:`${b.product_id??b.product_name??"p"}-${R}`,date:T?.date,product:b?.product_name,opening:T?.opening,inward:T?.inward,outward:T?.outward,closing:T?.closing})))},[p]),v=[{title:"Date",dataIndex:"date",key:"date"},{title:"Product",dataIndex:"product",key:"product"},{title:"Opening",dataIndex:"opening",key:"opening"},{title:"Inward",dataIndex:"inward",key:"inward"},{title:"Outward",dataIndex:"outward",key:"outward"},{title:"Closing",dataIndex:"closing",key:"closing",render:y=>e.jsx("span",{style:{color:Number(y)<0?"red":"green"},children:y})}],S=async()=>{if(!n||n.length!==2)return;const[y,g]=n;await h({duration:[y.format("YYYY-MM-DD"),g.format("YYYY-MM-DD")],product_id:o||""})};return e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Stock Report"}),style:{borderRadius:16},children:[e.jsxs("div",{style:{display:"flex",gap:12,alignItems:"center",marginBottom:16,flexWrap:"wrap"},children:[e.jsx(s.DatePicker.RangePicker,{value:n,onChange:r}),e.jsxs("select",{value:o,onChange:y=>l(y.target.value),style:{height:32,borderRadius:6,border:"1px solid #d9d9d9",padding:"0 8px"},children:[e.jsx("option",{value:"",children:"All Products"}),c.map(y=>e.jsx("option",{value:String(y?.value??""),children:String(y?.label??"")},String(y?.value??y?.id??y?.label)))]}),e.jsx(s.Button,{type:"primary",onClick:S,loading:f,children:"Search"}),e.jsx("div",{style:{marginLeft:"auto"},children:e.jsx(Jt,{data:{tableRef:a}})})]}),e.jsxs("div",{ref:a,children:[e.jsx("div",{className:"print-only",children:e.jsx(da,{})}),e.jsx(s.Table,{bordered:!0,size:"small",loading:f,rowKey:"key",columns:v,dataSource:m,pagination:{pageSize:50}})]})]})}const Qx=({token:t})=>e.jsx(Jx,{token:t}),rd=[{label:"Today",value:"Today"},{label:"Yesterday",value:"Yesterday"},{label:"This Week",value:"This Week"},{label:"This Month",value:"This Month"},{label:"Last Month",value:"Last Month"},{label:"This Year",value:"This Year"},{label:"Custom",value:"Custom"}],pa={total_packages:124,total_downloads:45892,active_packages:118,deprecated_packages:6,pending_approval:3,published_this_month:12,published_this_week:4,packages_needing_update:8,packages_with_issues:2},id=[{npm_id:"NPM-001",package_name:"@ubk/erp-core",version:"1.2.1",description:"Core ERP utilities and shared types",author:"UBK Infotech",repository:"https://github.com/ubk/erp-core",license:"MIT",status:"published",created_at:"2024-01-15",updated_at:"2025-06-20"},{npm_id:"NPM-002",package_name:"@ubk/erp-components",version:"2.0.0",description:"Reusable Ant Design ERP component library",author:"UBK Infotech",repository:"https://github.com/ubk/erp-components",license:"ISC",status:"published",created_at:"2024-03-10",updated_at:"2025-08-01"},{npm_id:"NPM-003",package_name:"@ubk/erp-api-client",version:"0.9.5",description:"Axios-based API client for UBK ERP backends",author:"UBK Infotech",repository:"https://github.com/ubk/erp-api-client",license:"MIT",status:"draft",created_at:"2025-05-22",updated_at:"2025-07-14"},{npm_id:"NPM-004",package_name:"@ubk/erp-hooks",version:"1.1.0",description:"Custom React hooks for ERP workflows",author:"UBK Infotech",repository:"https://github.com/ubk/erp-hooks",license:"MIT",status:"published",created_at:"2024-08-05",updated_at:"2025-04-30"},{npm_id:"NPM-005",package_name:"@ubk/erp-utils",version:"3.2.1",description:"Utility functions for date, currency, and validation",author:"UBK Infotech",repository:"https://github.com/ubk/erp-utils",license:"ISC",status:"deprecated",created_at:"2023-11-20",updated_at:"2025-02-10"}],od=[{key:"dashboard",label:"Dashboard"},{key:"allPackages",label:"All Packages"},{key:"published",label:"Published"},{key:"draft",label:"Draft"},{key:"deprecated",label:"Deprecated"},{key:"pendingApproval",label:"Pending Approval"}];function Xx(){const[t,a]=i.useState("dashboard"),[n,r]=i.useState("This Month"),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState(1),[p,m]=i.useState(10),[v,S]=i.useState(""),y=i.useRef(null),g=["dashboard","allPackages","published","draft","deprecated","pendingApproval"].includes(t),b=i.useMemo(()=>{if(!v.trim())return id;const _=v.toLowerCase();return id.filter(u=>Object.values(u).some(x=>String(x??"").toLowerCase().includes(_)))},[v]),T=i.useMemo(()=>{const _=(h-1)*p;return b.slice(_,_+p)},[b,h,p]),R=()=>{f(1)},I=()=>{const _=[{title:"Total Packages",value:pa.total_packages,icon:e.jsx(re.FileTextOutlined,{}),color:"#1976d2"},{title:"Total Downloads",value:pa.total_downloads.toLocaleString(),icon:e.jsx(re.StarOutlined,{}),color:"#2e7d32"},{title:"Active Packages",value:pa.active_packages,icon:e.jsx(re.CheckCircleOutlined,{}),color:"#0288d1"},{title:"Deprecated",value:pa.deprecated_packages,icon:e.jsx(re.CloseCircleOutlined,{}),color:"#d32f2f"},{title:"Pending Approval",value:pa.pending_approval,icon:e.jsx(re.ClockCircleOutlined,{}),color:"#ed6c02"},{title:"Published This Month",value:pa.published_this_month,icon:e.jsx(re.CalendarOutlined,{}),color:"#9c27b0"},{title:"Published This Week",value:pa.published_this_week,icon:e.jsx(re.SyncOutlined,{}),color:"#455a64"},{title:"Needs Update",value:pa.packages_needing_update,icon:e.jsx(re.CodeOutlined,{}),color:"#c62828"},{title:"With Issues",value:pa.packages_with_issues,icon:e.jsx(re.CloseCircleOutlined,{}),color:"#f57c00"}];return e.jsx(s.Row,{gutter:[16,16],children:_.map((u,x)=>e.jsx(s.Col,{xs:24,sm:12,md:8,lg:6,children:e.jsxs(s.Card,{style:{display:"flex",alignItems:"center",padding:16,borderLeft:`6px solid ${u.color}`,transition:"0.2s",cursor:"default"},bodyStyle:{display:"flex",alignItems:"center",width:"100%"},children:[e.jsx(w,{style:{width:48,height:48,borderRadius:"50%",backgroundColor:`${u.color}15`,color:u.color,display:"flex",alignItems:"center",justifyContent:"center",fontSize:22,marginRight:16,flexShrink:0},children:u.icon}),e.jsxs(w,{children:[e.jsx(s.Typography.Text,{type:"secondary",style:{fontSize:12,fontWeight:500},children:u.title}),e.jsx("div",{style:{fontSize:22,fontWeight:700,marginTop:4},children:u.value})]})]})},x))})},A=()=>{const _=[{title:"NPM ID",dataIndex:"npm_id",key:"npm_id",width:100},{title:"Package Name",dataIndex:"package_name",key:"package_name",ellipsis:!0},{title:"Version",dataIndex:"version",key:"version",width:100},{title:"Description",dataIndex:"description",key:"description",ellipsis:!0,responsive:["md"]},{title:"Author",dataIndex:"author",key:"author",width:140,responsive:["lg"]},{title:"License",dataIndex:"license",key:"license",width:100},{title:"Status",dataIndex:"status",key:"status",width:120,render:u=>{let x="default";return u==="published"?x="green":u==="draft"?x="orange":u==="deprecated"?x="red":u==="pending"&&(x="blue"),e.jsx(s.Tag,{color:x,children:u.toUpperCase()})}},{title:"Created Date",dataIndex:"created_at",key:"created_at",width:120,responsive:["lg"]},{title:"Updated Date",dataIndex:"updated_at",key:"updated_at",width:120,responsive:["lg"]},{title:"Actions",key:"action",width:120,fixed:"right",render:(u,x)=>e.jsx("a",{style:{color:"#5080f8",cursor:"pointer",fontSize:13},children:"View"})}];return t==="dashboard"?[]:_};return e.jsx(w,{pt:5,pb:1,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:"NPM Package Report"})}),e.jsxs(w,{p:3,children:[e.jsxs(s.Row,{gutter:[16,16],mb:3,children:[g&&e.jsxs(e.Fragment,{children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(ae,{options:rd,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Date Range",allowSelectAll:!1,value:rd.find(_=>_.value===n)||null,onChange:_=>r(_?.value||"This Month")})}),n==="Custom"&&e.jsxs(e.Fragment,{children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(Ge,{Desplay:"From Date",format:"YYYY-MM-DD",onChange:_=>l(_?_.format("YYYY-MM-DD"):"")})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(Ge,{Desplay:"To Date",format:"YYYY-MM-DD",onChange:_=>c(_?_.format("YYYY-MM-DD"):"")})})]})]}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{display:"flex",alignItems:"center",height:"100%",mt:t==="dashboard"?0:2,children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:R})})})]}),e.jsx(s.Tabs,{activeKey:t,onChange:a,items:od})]})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(s.Typography.Title,{level:5,style:{margin:0,color:"#fff"},children:od.find(_=>_.key===t)?.label||"Report"})}),e.jsxs(w,{p:3,children:[t!=="dashboard"&&e.jsx(Jt,{data:{tableRef:y}}),t==="dashboard"?I():e.jsx(s.Table,{size:"small",dataSource:T,columns:A(),loading:!1,pagination:!1,bordered:!0,rowKey:_=>_.npm_id||_.package_name||Math.random(),ref:y}),t!=="dashboard"&&b.length>0&&e.jsx(s.Pagination,{current:h,pageSize:p,total:b.length,onChange:(_,u)=>{f(_),m(u)},showSizeChanger:!0,showQuickJumper:!0,pageSizeOptions:[10,20,50,100],style:{marginTop:16,textAlign:"right"}})]})]})})]})})}const Lr=t=>t??localStorage.getItem("authToken")??"",Zx=(t,a)=>{const n=String(t??""),r=String(a);return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},Je={upload:"api/branchapi/frontoffice/uploadfrontofficeDocument",roleDropdown:"api/Branch/getRoledropdownforBranch",staff:{list:"api/branchapi/staff/stafflist",searchByRole:"api/branchapi/staff/staffsearchbyRole",searchByKeywords:"api/branchapi/staff/staffsearchbyKeywords",deactivate:"api/branchapi/staff/staff_deactive",basicById:"api/branchapi/staff/getbasicdetailsbyID",experienceById:"api/branchapi/staff/getworkexperencebyID",payrollById:"api/branchapi/staff/getpayrollbyID",lastEmpNo:"api/branchapi/staff/getLastStaffEMPnumber",addBasic:"api/branchapi/staff/addstaffbasicdetails",editBasic:"api/branchapi/staff/editstaffbasicdetails",addExperience:"api/branchapi/staff/addstaffExperience",editExperience:"api/branchapi/staff/editstaffExperience",addPayroll:"api/branchapi/staff/addstaffpayroll",editPayroll:"api/branchapi/staff/editstaffpayroll",uploadProfile:"api/branchapi/staff/uploadstaffProfilepicture",uploadDocuments:"api/branchapi/staff/uploadDocuments"},master:{shift:{dropdown:"api/branchapi/generalSettings/shiftDropdown",table:"api/branchapi/generalSettings/shiftTable",add:"api/branchapi/generalSettings/shiftTable",add:"api/branchapi/generalSettings/addshift",edit:"api/branchapi/generalSettings/addshift",edit:"api/branchapi/generalSettings/editshift",remove:"api/branchapi/generalSettings/deleteshift",show:"api/branchapi/generalSettings/shiftShowdata"},department:{dropdown:"api/branchapi/humanResource/departmentDropdown",table:"api/branchapi/humanResource/departmenttypeTable",add:"api/branchapi/humanResource/adddepartment",edit:"api/branchapi/humanResource/editdepartment",remove:"api/branchapi/humanResource/deletedepartment",show:"api/branchapi/humanResource/departmentShowdata"},designation:{dropdown:"api/branchapi/humanResource/designationDropdown",table:"api/branchapi/humanResource/designationTable",add:"api/branchapi/humanResource/adddesignation",edit:"api/branchapi/humanResource/editdesignation",remove:"api/branchapi/humanResource/deletedesignation",show:"api/branchapi/humanResource/designationShowdata"},leaveType:{dropdown:"api/branchapi/humanResource/leavetypeDropdown",table:"api/branchapi/humanResource/LeavetypeTable",add:"api/branchapi/humanResource/addleavetype",edit:"api/branchapi/humanResource/editleavetype",remove:"api/branchapi/humanResource/deleteleavetype",show:"api/branchapi/humanResource/leavetypeShowdata"}},leave:{table:"api/branchapi/humanResource/LeaveTable",apply:"api/branchapi/humanResource/applyLeave",requestTable:"api/branchapi/humanResource/leaverequestTable",approveRequest:"api/branchapi/humanResource/approveleaveRequest"},attendance:{staffListForAttendance:"api/staff/attendence/stafflistforAttendence",staffDropdownByRole:"api/staff/attendence/getStaffDropDownByRoleId",addAttendanceToStaffByBranch:"api/staff/attendence/addattendencetoStaffbyBranch",manualAttendance:"api/staff/attendence/staffMenualAttendance",staffShiftByStaffId:"api/branchapi/staff/getStaffShiftByStaffId",dailyAttendance:"api/staff_attendance/attendance/report/daily",dailyAttendanceMultipleShift:"api/staff/attendence/dailyAttendanceMultipleShift"},attendanceReport:{monthlyStaffReport:"api/AttendenceReport/staffmonthlyAttendenceReport_new",staffAttendanceList:"api/AttendenceReport/staffAttendanceList",overallStaffReport:"api/staff/attendence/getAlloverAttendenceReportofStaff"},payroll:{monthlyGraph:"api/branchapi/reportGraph/monthlyPayroleReportgraph",staffPayrollByStaffId:"api/branchapi/humanResource/getStaffPayroleByStaffID",generatePayslip:"api/branchapi/humanResource/generatePayslip",payrollByRole:"api/branchapi/humanResource/getpayrolebyRole",monthlyReport:"api/branchapi/humanResource/monthlyPayRolereport"}},fu=()=>Zx(Nt(),Je.upload),eb=async({baseUrl:t,page:a=1,perPage:n=10},r)=>{const o=t.includes("?")?"&":"?",l=`${t}${o}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(n))}`;return Y(l,Lr(r))},ca=async(t,a,n)=>Ze(t,a,Lr(n)),Pa=async(t,a,n)=>ct(t,a,Lr(n)),xs=async(t,a,n)=>st(t,a,Lr(n)),Ya=Je.staff,tb=Je.master.shift.dropdown,ab=Je.master.department.dropdown,nb=Je.master.designation.dropdown,sb=Je.roleDropdown,rb=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},gu=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},ib=(t,a)=>{const n=`${t||""}`.trim();if(!n)return"";if(/^https?:\/\//i.test(n))return n;const r=gu(a),o=n.startsWith("/")?n.slice(1):n;return rb(ut(),`uploads/school_${r}/staff/Profile_picture/${o}`)},ob=t=>/^https?:\/\//i.test(String(t??""))||String(t??"").startsWith("data:"),rr=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},lb=t=>rr(t).map(n=>{if(n?.value!==void 0&&n?.label!==void 0)return{...n,value:String(n.value),label:String(n.label)};const r=String(n?.shift_id??n?.id??n?.value??""),o=String(n?.shift_name??n?.label??n?.name??n?.title??r);return{...n,value:r,label:o}}),db=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",qn={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},ld=[{value:"A+",label:"A+"},{value:"A-",label:"A-"},{value:"B+",label:"B+"},{value:"B-",label:"B-"},{value:"O+",label:"O+"},{value:"O-",label:"O-"},{value:"AB+",label:"AB+"},{value:"AB-",label:"AB-"}],dd={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function cb({token:t,mode:a,staffId:n,initialValues:r,onSubmitted:o}){const[l,d]=i.useState(!1),c=i.useMemo(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings"))}catch{return null}},[]),h=String(c?.multiple_shift??"").toLowerCase()==="yes",[f,p]=i.useState(r?.roleValue??null),[m,v]=i.useState(r?.departmentValue??null),[S,y]=i.useState(r?.designationValue??null),[g,b]=i.useState(r?.genderValue??null),[T,R]=i.useState(r?.shiftValue??(h?[]:null)),[I,A]=i.useState(r?.dob?ne(r.dob):null),[_,u]=i.useState(r?.doj?ne(r.doj):null),[x,j]=i.useState(r?.file??""),[M,O]=i.useState(r?.bloodGroup??"");i.useEffect(()=>{r&&(p(r?.roleValue??null),v(r?.departmentValue??null),y(r?.designationValue??null),b(r?.genderValue??null),R(r?.shiftValue??(h?[]:null)),A(r?.dob?ne(r.dob):null),u(r?.doj?ne(r.doj):null),j(r?.file??""),O(r?.bloodGroup??""))},[r,h]);const{data:z}=q(t?[tb,t]:null,([$,N])=>Y($,N)),{data:k}=q(t?[ab,t]:null,([$,N])=>Y($,N)),{data:F}=q(t?[nb,t]:null,([$,N])=>Y($,N)),{data:C}=q(t?[sb,t]:null,([$,N])=>Y($,N)),{data:E}=q(t?[Ya.lastEmpNo,t]:null,([$,N])=>Y($,N)),P=i.useMemo(()=>lb(z),[z]),U=i.useMemo(()=>rr(k),[k]),H=i.useMemo(()=>rr(F),[F]),W=i.useMemo(()=>rr(C),[C]),L=i.useMemo(()=>{const $=E?.data?.emp_number??E?.emp_number??E?.data??"";return String($??"")},[E]),B=async $=>{$.preventDefault(),d(!0);const N=new FormData($.target);N.set("role",f?.value??f??""),N.set("department",m?.value??m??""),N.set("designation",S?.value??S??""),N.set("gender",g?.value??g??""),N.set("dob",I?I.format("YYYY-MM-DD"):""),N.set("doj",_?_.format("YYYY-MM-DD"):""),h?(N.delete("shift_id"),(Array.isArray(T)?T:[]).forEach(Q=>{N.append("shift_id[]",Q?.value??Q??"")})):N.set("shift_id",T?.value??T??""),x&&N.set("file",x);try{const V=a==="edit"&&n,Q=V?Ya.editBasic:Ya.addBasic;V&&N.set("staff_id",String(n));const Z=V?await Pa(Q,N,t):await ca(Q,N,t),J=Z?.ID??Z?.id??n??null;D.success("Success!",{duration:1e3}),o?.({staffId:J,basic:{roleValue:f,departmentValue:m,designationValue:S,genderValue:g,shiftValue:T,dob:I,doj:_,file:x}})}catch(V){D.error(V?.response?.data?.msg??V?.message??"Failed.",{duration:1e3})}finally{d(!1)}};return e.jsx("form",{onSubmit:B,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(G,{type:"number",name:"emp_number",label:"EMP No",defaultValue:r?.emp_number??L,required:!0}),e.jsx(G,{type:"text",name:"f_name",label:"First Name",defaultValue:r?.f_name??"",required:!0}),e.jsx(G,{type:"text",name:"l_name",label:"Last Name",defaultValue:r?.l_name??"",required:!0}),e.jsx(G,{type:"text",name:"pan_no",label:"PAN",defaultValue:r?.pan_no??"",pattern:"[A-Z]{5}[0-9]{4}[A-Z]",title:"Enter valid PAN (e.g., ABCDE1234D)"}),e.jsx(G,{type:"text",name:"adhar_no",label:"Aadhar",defaultValue:r?.adhar_no??"",pattern:"[0-9]{12}",title:"Enter 12-digit Aadhaar number"}),e.jsx(ae,{label:"Role",options:W,value:f,onChange:$=>p($??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(ae,{label:"Department",options:U,value:m,onChange:$=>v($??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(ae,{label:"Designation",options:H,value:S,onChange:$=>y($??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(ae,{label:"Gender",options:[{value:"Male",label:"Male"},{value:"Female",label:"Female"},{value:"Other",label:"Other"}],value:g,onChange:$=>b($??null),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(G,{type:"email",name:"email",label:"Email",defaultValue:r?.email??"",title:"Enter a valid email address"}),e.jsxs("div",{children:[e.jsx("div",{style:qn,children:"DOB"}),e.jsx(s.DatePicker,{value:I,onChange:$=>A($),style:dd,placeholder:"Select DOB"})]}),e.jsxs("div",{children:[e.jsx("div",{style:qn,children:"DOJ"}),e.jsx(s.DatePicker,{value:_,onChange:$=>u($),style:dd,placeholder:"Select DOJ"})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Blood Group",options:ld,value:ld.find($=>$.value===M)??null,onChange:$=>O($?.value??""),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1}),e.jsx("input",{type:"hidden",name:"bloodGroup",value:M})]}),e.jsx(G,{type:"text",name:"contact_no",label:"Contact No",defaultValue:r?.contact_no??"",required:!0,pattern:"[0-9]{10}",title:"Enter 10-digit contact number"}),e.jsx(G,{type:"text",name:"education",label:"Education",defaultValue:r?.education??""}),e.jsxs("div",{children:[e.jsx("div",{style:qn,children:"Shift"}),e.jsx(ae,{options:P,value:Array.isArray(T)&&h?P.filter($=>T.some(N=>String(N?.value??N)===String($?.value??$))):P.find($=>String(T?.value??T)===String($?.value??$))??(T&&!h?T:null),onChange:$=>R($??(h?[]:null)),isMulti:h,closeMenuOnSelect:!h,hideSelectedOptions:!1,allowSelectAll:!1,required:!0})]}),e.jsxs("div",{style:{width:"100%"},children:[e.jsx("div",{style:qn,children:"Profile Picture"}),e.jsxs("div",{style:{display:"grid",gap:8},children:[x?e.jsx("img",{src:ob(x)?x:ib(x,t),alt:"profile-preview",style:{width:88,height:88,objectFit:"cover",borderRadius:8,border:"1px solid #d9d9d9",background:"#fafafa"}}):null,e.jsx(s.Upload,{action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${gu(t)}/staff/Profile_picture`},headers:t?{Authorization:t}:void 0,maxCount:1,accept:"image/*",onChange:$=>{if($?.file?.status==="done"){const N=db($?.file?.response);N&&j(N)}$?.file?.status==="removed"&&j("")},children:e.jsx(s.Button,{type:"link",style:{paddingLeft:0},children:x?"Change":"Upload"})})]}),e.jsx("input",{type:"hidden",name:"file",value:x??""})]}),e.jsxs("div",{style:{gridColumn:"1 / -1"},children:[e.jsx("div",{style:qn,children:"Address"}),e.jsx("textarea",{name:"address",rows:3,defaultValue:r?.address??"",placeholder:"Address",style:{width:"100%",resize:"vertical",padding:10,border:"1px solid #d9d9d9",borderRadius:8,outline:"none"}})]}),e.jsx("div",{style:{gridColumn:"1 / -1",display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:l?"Saving...":"Save & Next",color:"primary",disabled:l,loading:l})})]})})}const ub=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},yu=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},pb=t=>/^https?:\/\//i.test(String(t??""))||String(t??"").startsWith("data:"),mb=(t,a)=>{const n=`${t||""}`.trim();if(!n)return"";if(pb(n))return n;const r=yu(a),o=n.startsWith("/")?n.slice(1):n;return ub(ut(),`uploads/school_${r}/staff/document/${o}`)},Ns={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},cd={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},hb=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",ud=t=>{if(!t)return null;const a=ne(t);return a.isValid()?a:null};function fb({token:t,mode:a,staffId:n,initialRows:r,onSubmitted:o,onBack:l}){const[d,c]=i.useState(!1),[h,f]=i.useState(()=>(Array.isArray(r)&&r.length?r:[{name:"",from:null,to:null,image:""}]).map(b=>({name:b?.name??"",from:ud(b?.from_date??b?.from),to:ud(b?.to_date??b?.to),image:b?.image??""}))),p=i.useMemo(()=>t?{Authorization:t}:void 0,[t]),m=(g,b)=>{f(T=>T.map((R,I)=>I===g?{...R,...b}:R))},v=()=>f(g=>[...g,{name:"",from:null,to:null,image:""}]),S=g=>f(b=>b.length<=1?b:b.filter((T,R)=>R!==g)),y=async g=>{if(g.preventDefault(),c(!0),!n){D.error("Missing staff id.",{duration:1e3}),c(!1);return}const b=new FormData;b.append("staff_id",String(n)),h.forEach((T,R)=>{b.append(`experience[${R}][name]`,String(T?.name??"")),b.append(`experience[${R}][from]`,T?.from?T.from.format("YYYY-MM-DD"):""),b.append(`experience[${R}][to]`,T?.to?T.to.format("YYYY-MM-DD"):""),b.append(`experience[${R}][image]`,String(T?.image??""))});try{const T=a==="edit",R=T?Ya.editExperience:Ya.addExperience,I=T?await Pa(R,b,t):await ca(R,b,t);D.success("Success!",{duration:1e3}),o?.({experience:h,result:I})}catch(T){D.error(T?.response?.data?.msg??T?.message??"Failed.",{duration:1e3})}finally{c(!1)}};return e.jsx("form",{onSubmit:y,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[h.map((g,b)=>e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end",border:"1px solid #eee",borderRadius:12,padding:14},children:[e.jsxs("div",{children:[e.jsx("div",{style:Ns,children:"Name"}),e.jsx("input",{value:g.name,onChange:T=>m(b,{name:T.target.value}),placeholder:"Company / School",style:{width:"100%",height:40,border:"none",borderBottom:"1px solid #d9d9d9",outline:"none",background:"transparent"}})]}),e.jsxs("div",{children:[e.jsx("div",{style:Ns,children:"From"}),e.jsx(s.DatePicker,{value:g.from,onChange:T=>m(b,{from:T}),style:cd})]}),e.jsxs("div",{children:[e.jsx("div",{style:Ns,children:"To"}),e.jsx(s.DatePicker,{value:g.to,onChange:T=>m(b,{to:T}),style:cd})]}),e.jsxs("div",{children:[e.jsx("div",{style:Ns,children:"Document"}),e.jsx(s.Upload,{maxCount:1,action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${yu(t)}/staff/document`},headers:p,onChange:T=>{if(T?.file?.status==="done"){const R=hb(T?.file?.response);R&&m(b,{image:R})}T?.file?.status==="removed"&&m(b,{image:""})},children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),children:"Upload"})}),!!g.image&&e.jsx("a",{href:mb(g.image,t),target:"_blank",rel:"noopener noreferrer",style:{fontSize:12,color:"#1677ff",textDecoration:"underline",cursor:"pointer"},children:"View document"})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:e.jsx(s.Button,{type:"text",icon:e.jsx(re.DeleteOutlined,{}),danger:!0,onClick:()=>S(b),disabled:h.length<=1})})]},`exp-${b}`)),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",gap:12},children:[e.jsx(s.Button,{icon:e.jsx(re.PlusOutlined,{}),onClick:v,children:"Add Experience"}),e.jsxs("div",{style:{display:"flex",gap:12},children:[e.jsx(s.Button,{onClick:l,children:"Back"}),e.jsx(de,{type:"submit",value:d?"Saving...":"Save & Next",color:"primary",disabled:d,loading:d})]})]})]})})}const pd=(t,a=[])=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){const n=a.length?a:["allowances","Allowances","dedection","Dedection","deductions","Deductions"],r=[t];t?.data&&typeof t.data=="object"&&r.push(t.data);for(const l of r)for(const d of n){const c=l?.[d]??l?.[d.toLowerCase()]??l?.[d.toUpperCase()];if(Array.isArray(c)&&c.length>0)return c}const o=t?.data;if(Array.isArray(o)&&o.length>0)return o}return[]},Yn=[{label:"Per Hour",value:"Hourly"},{label:"Per Lecture",value:"lecture_wise"}];function gb({token:t,mode:a,staffId:n,initialValues:r,onSubmitted:o,onBack:l}){const[d,c]=i.useState(!1),[h,f]=i.useState(r?.type??"Permanent"),[p,m]=i.useState(r?.salary_type??Yn[0]?.value),[v,S]=i.useState(Number(r?.amount??0)),[y,g]=i.useState(Number(r?.basic_pay)||0),[b,T]=i.useState(r?.declarationPERyear??""),{data:R}=q(t?[Wh,t]:null,([j,M])=>Y(j,M),{revalidateOnFocus:!1}),I=i.useMemo(()=>r?.allowances&&Array.isArray(r.allowances)&&r.allowances.length>0?r.allowances:pd(R,["allowances","Allowances"]),[R,r]),A=i.useMemo(()=>r?.deductions&&Array.isArray(r.deductions)&&r.deductions.length>0?r.deductions:pd(R,["dedection","Dedection","deductions","Deductions"]),[R,r]),_=i.useMemo(()=>{const j=Number(y||0),M=(Array.isArray(I)?I:[]).map(C=>{const E=C?.amount_type??C?.amountType??C?.type??"",P=Number(C?.Amount??C?.amount??0),H=String(E).trim().toLowerCase()==="flat"?P:Number(j)/100*Number(P||0);return{...C,value:Number.isFinite(H)?H:0}}),O=(Array.isArray(A)?A:[]).map(C=>{const E=C?.amount_type??C?.amountType??C?.type??"",P=Number(C?.Amount??C?.amount??0),H=String(E).trim().toLowerCase()==="flat"?P:Number(j)/100*Number(P||0);return{...C,value:Number.isFinite(H)?H:0}}),z=M.reduce((C,E)=>C+Number(E?.value||0),0),k=O.reduce((C,E)=>C+Number(E?.value||0),0),F=Math.max(0,Number(j)+z-k);return{allowances:M,deductions:O,netAmount:F}},[I,A,y]),u=async j=>{if(j.preventDefault(),c(!0),!n){D.error("Missing staff id.",{duration:1e3}),c(!1);return}const M=new FormData;M.append("staff_id",String(n)),M.append("type",h),h==="Nonpermanent"?(M.append("salary_type",p??""),M.append("amount",String(v||"")),M.append("Allowances",JSON.stringify([])),M.append("Dedection",JSON.stringify([]))):(M.append("basic_pay",String(y??0)),M.append("declarationPERyear",String(b??"")),M.append("Allowances",JSON.stringify(_.allowances||[])),M.append("Dedection",JSON.stringify(_.deductions||[])),M.append("amount",String(_.netAmount||0)));try{const O=a==="edit",z=O?Ya.editPayroll:Ya.addPayroll,k=O?await Pa(z,M,t):await ca(z,M,t);D.success("Success!",{duration:1e3}),o?.({payroll:{staffType:h,salaryType:p,amount:v,basicPay:y,declaration:b},result:k})}catch(O){D.error(O?.response?.data?.msg??O?.message??"Failed.",{duration:1e3})}finally{c(!1)}},x=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title",ellipsis:!0},{title:"Amount",key:"amount",width:160,render:(j,M)=>`${M?.Amount??""} / ${M?.amount_type??""}`},{title:"Value",dataIndex:"value",key:"value",width:120}],[]);return e.jsx("form",{onSubmit:u,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{label:"Employment Type",options:[{label:"Permanent",value:"Permanent"},{label:"Non Permanent",value:"Nonpermanent"}],value:{label:h==="Nonpermanent"?"Non Permanent":"Permanent",value:h},onChange:j=>f(j?.value??"Permanent"),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),h==="Nonpermanent"?e.jsxs(e.Fragment,{children:[e.jsx(ae,{label:"Type",options:Yn,value:Yn.find(j=>j.value===p)??Yn[0],onChange:j=>m(j?.value??Yn[0]?.value),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsx(G,{type:"number",label:"Amount",value:v,onChange:j=>S(Number(j.target.value||0)),required:!0})]}):e.jsxs(e.Fragment,{children:[e.jsx(G,{type:"number",label:"Basic Pay",value:y,onChange:j=>g(Number(j.target.value||0)),required:!0}),e.jsx(G,{type:"text",label:"IT Declarations/Year",value:b,onChange:j=>T(j.target.value)}),e.jsx(G,{type:"number",label:"Net Amount",value:_.netAmount,disabled:!0})]})]}),h==="Permanent"&&e.jsxs(e.Fragment,{children:[e.jsx(s.Card,{size:"small",title:e.jsx("div",{style:{fontWeight:600},children:"Allowances"}),children:e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(j,M)=>`${j?.title??"a"}-${M}`,columns:x,dataSource:_.allowances,pagination:!1})}),e.jsx(s.Card,{size:"small",title:e.jsx("div",{style:{fontWeight:600},children:"Deductions"}),children:e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(j,M)=>`${j?.title??"d"}-${M}`,columns:x,dataSource:_.deductions,pagination:!1})})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:e.jsx(de,{type:"submit",value:d?"Finishing...":"Finish",color:"primary",disabled:d,loading:d})})]})})}const yb=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function xu({token:t,mode:a="add",staffId:n,onFinished:r}){const[o,l]=i.useState(0),[d,c]=i.useState(n??null),[h,f]=i.useState(null),[p,m]=i.useState(null),[v,S]=i.useState(null),y=a==="edit"?n??d:null,g=i.useMemo(()=>y?`${Je.staff.basicById}?staff_id=${encodeURIComponent(String(y))}`:null,[y]),b=i.useMemo(()=>y?`${Je.staff.experienceById}?staff_id=${encodeURIComponent(String(y))}`:null,[y]),T=i.useMemo(()=>y?`${Je.staff.payrollById}?staff_id=${encodeURIComponent(String(y))}`:null,[y]),R=q(t&&g?[g,t]:null,([C,E])=>Y(C,E)),I=q(t&&b?[b,t]:null,([C,E])=>Y(C,E)),A=q(t&&T?[T,t]:null,([C,E])=>Y(C,E)),_=R?.data,u=I?.data,x=A?.data,j=!!R?.isLoading;I?.isLoading,A?.isLoading;const M=i.useMemo(()=>{try{const C=JSON.parse(localStorage.getItem("genrall_settings")??"null");return String(C?.multiple_shift??"").toLowerCase()==="yes"}catch{return!1}},[]),O=i.useMemo(()=>{const C=yb(_)[0]??_?.data??_??null;if(!C)return null;let E=null;const P=C?.shift_id??C?.shift_ids??C?.shift;if(P)if(M){const U=String(P).split(",").map(H=>H.trim()).filter(Boolean);U.length>0&&(E=U.map(H=>({value:String(H),label:H})))}else C?.shift_id?E={value:String(C.shift_id),label:C?.shift??""}:C?.shift&&(E={value:String(C.shift),label:C.shift});return{emp_number:C?.emp_number??C?.empNo??C?.employee_id??"",f_name:C?.f_name??C?.firstname??C?.first_name??C?.name??"",l_name:C?.l_name??C?.lastname??C?.last_name??C?.surname??"",pan_no:C?.pan_no??C?.pan??"",adhar_no:C?.adhar_no??C?.aadhar_no??"",email:C?.email??C?.email_id??"",dob:C?.dob??C?.date_of_birth??"",doj:C?.doj??C?.date_of_joining??C?.joining_date??"",bloodGroup:C?.bloodGroup??C?.blood_group??"",contact_no:C?.contact_no??C?.phone??C?.contact??"",education:C?.education??C?.qualification??"",address:C?.address??C?.bussiness_address??C?.business_address??"",file:C?.file??C?.profile_picture??C?.profile_pic??C?.image??"",genderValue:C?.gender?{value:C.gender,label:C.gender}:null,roleValue:C?.role_id?{value:String(C.role_id),label:C?.role??""}:C?.fk_roleid?{value:String(C.fk_roleid),label:C?.role??""}:null,departmentValue:C?.department?{value:String(C.department),label:C?.departments??""}:null,designationValue:C?.designation?{value:String(C.designation),label:C?.designations??""}:null,shiftValue:E}},[_,M]),z=i.useMemo(()=>{const C=u?.data??u??null;return(Array.isArray(C?.experience)?C.experience:Array.isArray(C)?C:[]).map(P=>({name:P?.name??"",from:P?.from_date??P?.from??"",to:P?.to_date??P?.to??"",image:P?.image??""}))},[u]),k=i.useMemo(()=>{const C=x?.data??x??null,P=(Array.isArray(C)?C:C?.data&&Array.isArray(C.data)?C.data:[])[0]??null;if(!P)return null;const U=x?.allowances??C?.allowances??[],H=x?.dedection??C?.dedection??x?.deductions??C?.deductions??[];return{type:P?.type??"Permanent",salary_type:P?.salary_type??"Hourly",amount:Number(P?.amount??0),basic_pay:Number(P?.basic_pay??0),declarationPERyear:P?.declarationPERyear??P?.it_declarationPERyear??"",allowances:Array.isArray(U)?U:[],deductions:Array.isArray(H)?H:[]}},[x]),F=i.useMemo(()=>[{title:"Basic"},{title:"Experience"},{title:"Payroll"}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:a==="edit"?"Edit Staff":"Add Staff"}),children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(s.Steps,{current:o,items:F}),o===0&&(a==="edit"&&j?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",padding:40},children:e.jsx(s.Spin,{tip:"Loading staff data...",size:"large"})}):e.jsx(cb,{token:t,mode:a,staffId:y,initialValues:O,onSubmitted:({staffId:C})=>{C&&c(C),l(1)}})),o===1&&e.jsx(fb,{token:t,mode:a,staffId:y??d,initialRows:z,onBack:()=>l(0),onSubmitted:()=>l(2)}),o===2&&e.jsx(gb,{token:t,mode:a,staffId:y??d,initialValues:k,onBack:()=>l(1),onSubmitted:()=>{D.success("Completed.",{duration:1e3}),r?.({staffId:y??d}),l(0),a!=="edit"&&(c(null),f(null),m(null),S(null))}})]})})]})}function xb({token:t}){return e.jsx(xu,{token:t,mode:"add"})}const bb=({token:t})=>e.jsx(xb,{token:t}),zs=Je.staff,jb=Je.roleDropdown,Sb=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},wb=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function vb({token:t,onNavigate:a}){const[n,r]=i.useState({page:1,rowsPerPage:10}),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState(!1),[p,m]=i.useState(null),{data:v}=q(t?[jb,t]:null,([u,x])=>Y(u,x)),S=i.useMemo(()=>Sb(v),[v]),y=i.useMemo(()=>{const u=n.page,x=n.rowsPerPage,j=o&&!d?`${zs.searchByRole}?role_id=${encodeURIComponent(String(o))}`:d?`${zs.searchByKeywords}?key=${encodeURIComponent(String(d))}`:zs.list,M=j.includes("?")?"&":"?";return`${j}${M}page=${encodeURIComponent(String(u))}&per_page=${encodeURIComponent(String(x))}`},[n.page,n.rowsPerPage,d,o]),{isLoading:g,error:b,data:T,mutate:R}=q(t?[y,t]:null,([u,x])=>Y(u,x)),I=i.useMemo(()=>wb(T),[T]),A=async u=>{const x=u?.id??u?.fk_staffID??u?.staff_id;if(x)try{await xs(zs.deactivate,x,t),D.success("Success! Staff deactivated.",{duration:1e3}),await R()}catch(j){D.error(j?.response?.data?.msg??j?.message??"Failed to deactivate staff.",{duration:1e3})}},_=i.useMemo(()=>[{title:"Emp ID",dataIndex:"employee_id",key:"employee_id",width:120,responsive:["lg"]},{title:"Name",key:"name",ellipsis:!0,render:(u,x)=>`${x?.name||""} ${x?.surname||""}`.trim()},{title:"Role",dataIndex:"role",key:"role",ellipsis:!0,responsive:["md"]},{title:"Department",dataIndex:"departments",key:"departments",ellipsis:!0,responsive:["md"]},{title:"Phone",dataIndex:"contact_no",key:"contact_no",ellipsis:!0,responsive:["md"]},{title:"Status",key:"steps",width:140,responsive:["lg"],render:(u,x)=>{const j=Number(x?.steps??x?.status??1),M=j<=1?30:j===2?60:100;return e.jsx(s.Progress,{percent:M,size:"small",format:O=>`${O}%`,style:{margin:"-4px 0"}})}},{title:"Action",key:"action",width:110,fixed:"right",render:(u,x)=>e.jsxs(s.Space,{size:"middle",children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>{typeof a=="function"?a("staff-edit",x):(m(x?.id??x?.fk_staffID??x?.staff_id??""),f(!0))}}),e.jsx(s.Popconfirm,{title:"Delete staff?",description:"Are you sure you want to deactivate this staff member?",okText:"Yes",cancelText:"No",onConfirm:()=>A(x),children:e.jsx(s.Button,{type:"text",danger:!0,size:"small",icon:e.jsx(re.DeleteOutlined,{}),style:{padding:2}})})]})}],[t]);return e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs("div",{style:{gridTemplateColumns:"repeat(auto-fit, minmax(320px, 1fr))",gap:20,alignItems:"start"},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:2,style:{margin:0},children:"Filters"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:[{value:"",label:"All Roles"},...S],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Role",placeholder:"Role",allowSelectAll:!1,onChange:u=>{l(u?.value??""),r(x=>({...x,page:1}))}}),e.jsx(G,{type:"text",label:"Keyword",value:d,onChange:u=>c(u.target.value),placeholder:"Search by keywords"}),e.jsx(de,{type:"button",value:"Refresh",onClick:()=>R()})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:8,style:{margin:0},children:"Staff Directory"}),children:e.jsx(s.Table,{bordered:!0,size:"small",loading:g,rowKey:u=>String(u?.id??u?.fk_staffID??u?.staff_id??Math.random()),columns:_,dataSource:I,pagination:{current:n.page,pageSize:n.rowsPerPage,onChange:(u,x)=>r({page:u,rowsPerPage:x}),showSizeChanger:!0},scroll:{x:"max-content"}})})]})]}),e.jsx(s.Drawer,{open:h,onClose:()=>{f(!1),m(null)},title:"Edit Staff",width:"80%",destroyOnClose:!0,footer:null,children:p!=null&&e.jsx(xu,{token:t,mode:"edit",staffId:String(p),onFinished:()=>{f(!1),m(null),R()}})})]})}const Cb=({token:t,onNavigate:a})=>e.jsx(vb,{token:t,onNavigate:a}),_b=Je.attendance,Ab=Je.roleDropdown,md=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},qs={display:"block",marginBottom:6,fontSize:"14px",fontWeight:500,color:"#222"},hd={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Db({token:t,open:a,onClose:n,roleId:r,onSaved:o}){const[l,d]=i.useState(null),[c,h]=i.useState(""),[f,p]=i.useState(ne()),[m,v]=i.useState(ne()),[S,y]=i.useState(ne()),g=i.useMemo(()=>r?`${Je.attendance.staffDropdownByRole}?role_id=${encodeURIComponent(String(r))}`:null,[r]),{data:b}=q(t&&g?[g,t]:null,([u,x])=>Y(u,x)),T=i.useMemo(()=>md(b),[b]),{trigger:R,data:I}=it(t?Je.attendance.staffShiftByStaffId:null,(u,{arg:x})=>Da(u,{arg:x},t)),A=i.useMemo(()=>md(I),[I]),_=async()=>{if(!l?.value){D.error("Select staff.",{duration:1e3});return}if(!c){D.error("Select shift.",{duration:1e3});return}const u=new FormData;u.set("staffID",String(l.value)),u.set("shift_id",String(c)),u.set("attendance_date",f?f.format("YYYY-MM-DD"):""),u.set("intime",m?m.format("h:mm a"):""),u.set("outime",S?S.format("h:mm a"):"");try{await ca(Je.attendance.manualAttendance,u,t),D.success("Success!",{duration:1e3}),o?.(),n?.(),d(null),h(""),p(ne()),v(ne()),y(ne())}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed.",{duration:1e3})}};return e.jsx(s.Modal,{open:a,onCancel:n,footer:null,destroyOnClose:!0,title:"Attendance",width:620,children:e.jsx(s.Card,{children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(ae,{label:"Staff",options:T,value:l,onChange:async u=>{if(d(u??null),h(""),u?.value&&R)try{await R({staff_id:u.value})}catch{}},closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0}),e.jsxs("div",{children:[e.jsx("div",{style:qs,children:"Shift"}),e.jsx(s.Radio.Group,{value:c,onChange:u=>h(u.target.value),style:{display:"grid",gap:8},children:A.map(u=>e.jsx(s.Radio,{value:u?.value,children:u?.label??u?.name??u?.title??String(u?.value??"")},String(u?.value)))})]}),e.jsxs("div",{children:[e.jsx("div",{style:qs,children:"Date"}),e.jsx(s.DatePicker,{value:f,onChange:u=>u&&p(u),style:{width:"100%"}})]}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:16},children:[e.jsxs("div",{children:[e.jsx("div",{style:qs,children:"Start Time"}),e.jsx(s.TimePicker,{value:m,onChange:u=>u&&v(u),use12Hours:!0,format:"h:mm a",style:hd})]}),e.jsxs("div",{children:[e.jsx("div",{style:qs,children:"End Time"}),e.jsx(s.TimePicker,{value:S,onChange:u=>u&&y(u),use12Hours:!0,format:"h:mm a",style:hd})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:[e.jsx(s.Button,{onClick:n,children:"Cancel"}),e.jsx(de,{type:"button",value:"Save",color:"primary",onClick:_})]})]})})})}const Tb=({tableRef:t,excelDisabled:a})=>{const n=new Date().getTime(),r=Ka.useReactToPrint({content:()=>t?.current});return e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsxs(s.Row,{gutter:8,children:[e.jsx(s.Col,{children:e.jsx(s.Button,{type:"text",icon:e.jsx(re.PrinterOutlined,{style:{color:"#5080f8"}}),onClick:r})}),e.jsx(s.Col,{children:a?e.jsx(s.Button,{type:"text",icon:e.jsx(re.FileTextOutlined,{style:{color:"gray"}}),onClick:()=>D.error("You must save attendance before download",{duration:2e3})}):e.jsx(cu.DownloadTableExcel,{filename:n,sheet:"users",currentTableRef:t?.current,children:e.jsx(s.Button,{type:"text",icon:e.jsx(re.FileTextOutlined,{style:{color:"#5080f8"}})})})})]})})})},kb=(t,a)=>{const n=t?.data?.data??t?.data??t??null;return n?a==="student"?Array.isArray(n?.student)?n.student:[]:Array.isArray(n?.staff)?n.staff:[]:[]},Rb=t=>{const a=t?.pagination?.total_rows??t?.data?.pagination?.total_rows??t?.total??t?.total_rows,n=Number(a);return Number.isFinite(n)&&n>=0?n:0},Ib=(t,a)=>{const n=t?.data?.data??t?.data??t??null;return n?a==="student"?{sunday:String(n?.sunday??"").toLowerCase()==="yes",holiday:String(n?.holiday??"").toLowerCase()==="yes"}:{sunday:!!n?.sunday,holiday:!!n?.holiday}:{sunday:!1,holiday:!1}};function Pb({token:t,url:a,columns:n,reload:r,setReload:o,saveBtnRef:l,setSaveBtnDisabled:d,date:c,type:h="staff"}){const f=i.useRef(null),[p,m]=i.useState({page:0,rowsPerPage:10}),[v,S]=i.useState(!1),[y,g]=i.useState(!1),[b,T]=i.useState(null),[R,I]=i.useState([]),[A,_]=i.useState({sunday:!1,holiday:!1}),[u,x]=i.useState(!0);i.useEffect(()=>{m(z=>({...z,page:0}))},[a]),i.useEffect(()=>{let z=!0;return(async()=>{if(!(!t||!a)){S(!0);try{const F=String(a).includes("?")?"&":"?",C=`${a}${F}page=${p.page+1}&per_page=${p.rowsPerPage}`,E=await Y(C,t);if(!z)return;T(E),E?.Status==="Success"?(d?.(!1),I(kb(E,h)),_(Ib(E,h))):(d?.(!0),I([]),_({sunday:!1,holiday:!1}))}catch{if(!z)return;d?.(!0),I([])}finally{z&&S(!1)}}})(),()=>{z=!1}},[p.page,p.rowsPerPage,r,d,t,h,a]);const j=i.useMemo(()=>Rb(b),[b]);i.useEffect(()=>{const z=(Array.isArray(R)?R:[]).find(k=>k?.attendence_type_id===null);x(!!z)},[R]);const M=async()=>{if(t){g(!0);try{if(h==="staff"){const z=(Array.isArray(R)?R:[]).map(k=>({staff_id:k?.staff_id,attendence_type_id:k?.attendence_type_id?k.attendence_type_id:"1",in_time:k?.intime,out_time:k?.outtime,date:c}));await ca(Je.attendance.addAttendanceToStaffByBranch,z,t),D.success("Attendance saved successfully",{duration:2e3}),o?.(k=>!k)}else D.error("Student attendance save is not migrated yet.",{duration:2e3})}catch(z){D.error(z?.response?.data?.msg??z?.message??"Failed required dates",{duration:2e3})}finally{g(!1)}}},O=i.useMemo(()=>(Array.isArray(n)?n:[]).map(k=>k?.selector==="attendence_type_id"?{title:k?.name??"Attendance",dataIndex:k.selector,key:k.selector,render:F=>F==null||F===""?e.jsx(s.Tag,{color:"orange",children:"Not Set"}):String(F)==="1"?e.jsx(s.Tag,{color:"green",children:"Present"}):String(F)==="4"?e.jsx(s.Tag,{color:"red",children:"Absent"}):String(F)==="3"?e.jsx(s.Tag,{color:"orange",children:"Late"}):e.jsx(s.Tag,{children:String(F)})}:k?.selector==="snum"?{title:k?.name??"Sl",key:k.selector,render:(F,C,E)=>E+1}:{title:k?.name??k?.selector,dataIndex:k?.selector,key:k?.selector}),[n]);return e.jsxs("div",{style:{width:"100%"},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(s.Card,{children:[e.jsx(Tb,{tableRef:f,excelDisabled:u}),e.jsx(s.Modal,{open:y,footer:null,closable:!1,centered:!0,children:e.jsxs("div",{style:{display:"grid",placeItems:"center",gap:12,padding:12},children:[e.jsx(s.Spin,{size:"large"}),e.jsx("div",{children:"Please wait..."})]})}),A.sunday?e.jsx("div",{style:{textAlign:"center",fontWeight:600,padding:"16px 0"},children:"Weekly Off"}):A.holiday?e.jsx("div",{style:{textAlign:"center",padding:"16px 0"},children:e.jsx("div",{style:{fontWeight:700,marginBottom:6},children:"Holiday"})}):e.jsxs(e.Fragment,{children:[e.jsx("div",{ref:f,children:e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(z,k)=>String(z?.id??z?.staff_id??k),columns:O,dataSource:R,loading:v,pagination:{current:p.page+1,pageSize:p.rowsPerPage,total:j,showSizeChanger:!0,onChange:(z,k)=>m({page:z-1,rowsPerPage:k})},scroll:{x:"max-content"}})}),e.jsx("button",{type:"button",onClick:M,ref:l,style:{display:"none"},children:"hidden"})]})]})]})}const Mb=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Eb={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Ob({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(ne().format("YYYY-MM-DD")),[l,d]=i.useState(!1),[c,h]=i.useState(null),[f,p]=i.useState(!1),[m,v]=i.useState(!0),[S,y]=i.useState(!1),g=i.useRef(null),{data:b}=q(t?[Ab,t]:null,([I,A])=>Y(I,A)),T=i.useMemo(()=>Mb(b),[b]),R=i.useMemo(()=>[{id:"1",name:"Staff Id",selector:"employee_id",sortable:!0},{id:"2",name:"Name",selector:"full_name",sortable:!0},{id:"4",name:"Contact",selector:"contact_no",sortable:!0},{id:"3",name:"Attendance",selector:"attendence_type_id",sortable:!0},{id:"5",name:"In Time",selector:"intime",sortable:!0},{id:"6",name:"Out Time",selector:"outtime",sortable:!0}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Staff Attendance"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Roles",placeholder:"Roles",allowSelectAll:!1,onChange:I=>n(I?.value??""),required:!0}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(s.DatePicker,{defaultValue:ne(),onChange:I=>I&&o(I.format("YYYY-MM-DD")),style:Eb,allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:()=>{!a||!r||(h(`${_b.staffListForAttendance}?role=${encodeURIComponent(String(a))}&date=${encodeURIComponent(String(r))}`),d(I=>!I))}})})]})}),e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Staff Attendance List"}),children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",gap:12,flexWrap:"wrap",marginBottom:12},children:[e.jsx(s.Button,{size:"small",type:f?"primary":"default",onClick:()=>p(I=>!I),children:f?"Marked":"Mark As Holiday"}),e.jsx(s.Button,{size:"small",type:"default",disabled:m,onClick:()=>y(!0),children:"Give Attendance"})]}),c?e.jsx(Pb,{token:t,url:c,columns:R,reload:l,setReload:d,saveBtnRef:g,setSaveBtnDisabled:v,date:r,type:"staff",holidayChecked:f}):null]}),e.jsx(Db,{token:t,open:S,onClose:()=>y(!1),roleId:a,onSaved:()=>d(I=>!I)})]})}const $b=({token:t})=>e.jsx(Ob,{token:t}),fd=Je.attendanceReport.monthlyStaffReport,Fb=Je.roleDropdown,Bb=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function Lb({token:t}){const a=i.useRef(null),[n,r]=i.useState(!1),[o,l]=i.useState([]),[d,c]=i.useState({role:"",rolllabel:"",year:"",month:""}),h=i.useMemo(()=>po(5),[]),{data:f}=q(t?[Fb,t]:null,([z,k])=>Y(z,k)),p=i.useMemo(()=>Bb(f),[f]),[m,v]=i.useState([]),[S,y]=i.useState(1),[g,b]=i.useState(!1),[T,R]=i.useState(!1),[I,A]=i.useState(null),_=i.useMemo(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings"))?.session_id??"1"}catch{return"1"}},[]),{trigger:u}=it(t&&fd?`${fd}?page=${S}&per_page=3`:null,(z,{arg:k})=>Da(z,{arg:k},t),{onSuccess:z=>{b(!1);const k=Array.isArray(z)?z:[];k.length>0&&v(F=>[...F||[],...k]),k.length>1?y(F=>F+1):R(!1)},onError:()=>{b(!1),R(!1)}});i.useEffect(()=>{T&&u&&I&&u(I)},[T,S,I,u]);const x=i.useMemo(()=>{const z=[{title:"Staff Id",dataIndex:"employee_id",key:"employee_id",align:"center"},{title:"Name",dataIndex:"full_name",key:"full_name",render:(k,F)=>e.jsx("span",{className:"attendanceFont",style:{cursor:"pointer",whiteSpace:"nowrap",color:"blue",textDecoration:"underline"},children:F?.full_name??""})}];return Array.isArray(m)&&m.length>0&&((m[0]?.monthly_data??[]).forEach((F,C)=>{z.push({title:C+1,align:"center",key:String(C+1),render:(E,P)=>{const U=P?.monthly_data?.[C]?.[0]?.data?.[0]??{},H=U?.intime??"",W=U?.outtime??"",L=U?.attendance_type??"";return e.jsx(s.Tooltip,{title:e.jsxs("div",{style:{fontSize:12},children:[e.jsxs("div",{children:["In Time ",H]}),e.jsxs("div",{children:["Out Time ",W]})]}),placement:"top",children:e.jsx("span",{className:"attendanceFont",style:{fontSize:10,display:"flex",justifyContent:"center"},children:St(L)})})}})}),z.push({title:"Total",key:"Total",render:(F,C)=>{const E=C?.monthly_data??[],P=E.filter(H=>H?.[0]?.data?.[0]?.attendance_type==="A").length,U=E.filter(H=>H?.[0]?.data?.[0]?.attendance_type==="P").length;return e.jsx("span",{className:"attendanceFont",children:e.jsxs("b",{children:["A : ",P," P : ",U]})})}})),z},[m]),j=i.useMemo(()=>[{label:"Present",el:St("P")},{label:"Absent",el:St("A")},{label:"Leave",el:St("L")},{label:"Weekly Off",el:St("W")},{label:"Holiday",el:St("H")}],[]),M=i.useMemo(()=>d.month?o.find(z=>z?.value==d.month)?.label??d.month??"--":"--",[d.month,o]),O=async z=>{if(z.preventDefault(),!d.role||!d.year||!d.month)return;y(1),b(!0),v([]);const k={session:_,year:d.year,month:d.month,day:"01",role:d.role};A(k),R(!0),await u?.(k)};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(s.Card,{className:"d-print-none",title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Attendance Report"}),children:e.jsx("form",{onSubmit:O,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:p,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Roles",allowSelectAll:!1,name:"role",required:!0,onChange:z=>c(k=>({...k,role:z?.value??"",rolllabel:z?.label??""}))}),e.jsx(ae,{options:h,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Year",allowSelectAll:!1,name:"year",required:!0,onChange:z=>{const k=mo(z?.value);l(k),r(F=>!F),c(F=>({...F,year:z?.label??""}))}}),e.jsx(ae,{options:o,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Month",allowSelectAll:!1,name:"month",required:!0,onChange:z=>c(k=>({...k,month:z?.value??""}))},`month-${n}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Monthly Attendance Report"}),children:e.jsxs("div",{ref:a,children:[e.jsx("div",{className:"print-only",children:e.jsx(da,{})}),e.jsxs("div",{style:{border:"1px solid #ddd",borderRadius:8,padding:16,marginBottom:24,backgroundColor:"#f8f9fa"},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr auto",gap:12,alignItems:"center"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:18,fontWeight:600,marginBottom:6},children:"Staff Attendance Summary"}),e.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:10,fontSize:13},children:[e.jsxs("div",{children:["Role: ",e.jsx("span",{style:{fontWeight:700},children:d.rolllabel||"--"})]}),e.jsxs("div",{children:["Year: ",e.jsx("span",{style:{fontWeight:700},children:d.year||"--"})]}),e.jsxs("div",{children:["Month: ",e.jsx("span",{style:{fontWeight:700},children:M})]})]})]}),e.jsx("div",{className:"d-print-none",style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(Jt,{data:{tableRef:a}})})]}),e.jsx("div",{style:{marginTop:14,paddingTop:14,borderTop:"1px solid #e0e0e0"},children:e.jsx("div",{style:{display:"flex",justifyContent:"center",flexWrap:"wrap",gap:12,fontSize:12},children:j.map(z=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsxs("div",{children:[z.label," :"]}),e.jsx("div",{children:z.el})]},z.label))})})]}),e.jsx(s.Skeleton,{active:!0,loading:g,paragraph:{rows:10},children:e.jsx(s.Table,{size:"small",bordered:!0,className:"my-zero-padding-table",columns:x,dataSource:m,pagination:!1,scroll:{x:"max-content"},rowKey:(z,k)=>String(z?.staff_id??z?.id??k)})})]})})]})}const Ub=({token:t})=>e.jsx(Lb,{token:t}),gd=Je.payroll,Nb=Je.roleDropdown,zb=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},qb=t=>t?.data?.data??t?.data??t??[];function Yb({token:t,receiptDetailsPath:a="/HumanResourceDashboard/PayrollReceiptDetails",onOpenReceiptDetails:n}){const[r,o]=i.useState({page:1,rowsPerPage:10}),[l,d]=i.useState(!1),[c,h]=i.useState([]),[f,p]=i.useState({role:"",roleLabel:"",year:"",month:""}),[m,v]=i.useState(null),S=x=>{if(!x)return;if(typeof n=="function"){n(x);return}const j=`${a}?id=${encodeURIComponent(String(x))}`;typeof window<"u"&&window?.location&&(window.location.href=j)},{data:y}=q(t?[Nb,t]:null,([x,j])=>Y(x,j)),g=i.useMemo(()=>zb(y),[y]),b=i.useMemo(()=>po(5),[]),{isLoading:T,error:R,data:I}=q(t&&m?[m,t]:null,([x,j])=>Y(x,j)),A=i.useMemo(()=>{const x=qb(I);return Array.isArray(x)?x:[]},[I]),_=i.useMemo(()=>{const x=I?.pagination?.total_rows??I?.data?.pagination?.total_rows??I?.total??I?.total_rows,j=Number(x);return Number.isFinite(j)&&j>=0?j:A.length},[I,A.length]),u=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(x,j,M)=>M+1},{title:"Name",dataIndex:"full_name",key:"full_name",ellipsis:!0},{title:"Designations",dataIndex:"designations",key:"designations",ellipsis:!0,responsive:["md"]},{title:"Mobile No",dataIndex:"contact_no",key:"contact_no",width:140,responsive:["md"]},{title:"Status",dataIndex:"status",key:"status",width:120,align:"center",render:(x,j)=>{const M=j?.id??j?.staff_id??j?.staffId;return e.jsx(s.Button,{type:"link",size:"small",style:{padding:0,fontSize:12},onClick:()=>{S(M)},children:lu(j?.status)})}}],[]);return e.jsx("div",{style:{display:"grid",gap:20},children:e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Payroll"}),children:[e.jsx("form",{onSubmit:x=>{if(x.preventDefault(),!f.role||!f.year||!f.month)return;const j=`${gd.payrollByRole}?page=${encodeURIComponent(String(r.page))}&per_page=${encodeURIComponent(String(r.rowsPerPage))}&role=${encodeURIComponent(String(f.role))}&year=${encodeURIComponent(String(f.year))}&month=${encodeURIComponent(String(f.month))}`;v(j)},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end",marginBottom:14,padding:14,borderRadius:12,border:"1px solid #eee",background:"#fafafa"},children:[e.jsx(ae,{options:g,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Roles",placeholder:"Roles",allowSelectAll:!1,name:"role",required:!0,onChange:x=>p(j=>({...j,role:x?.value??"",roleLabel:x?.label??""}))}),e.jsx(ae,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Year",allowSelectAll:!1,name:"year",required:!0,onChange:x=>{const j=mo(x?.value);h(j),d(M=>!M),p(M=>({...M,year:x?.label??"",month:""}))}}),e.jsx(ae,{options:c,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Month",allowSelectAll:!1,name:"month",required:!0,onChange:x=>p(j=>({...j,month:x?.value??""}))},`month-${l}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary",onClick:()=>o(x=>({...x,page:1}))})})]})}),e.jsx(s.Table,{bordered:!0,size:"small",loading:T,rowKey:(x,j)=>String(x?.id??x?.staff_id??j),columns:u,dataSource:A,pagination:{current:r.page,pageSize:r.rowsPerPage,total:_,showSizeChanger:!0,onChange:(x,j)=>{o({page:x,rowsPerPage:j}),!(!f.role||!f.year||!f.month)&&v(`${gd.payrollByRole}?page=${encodeURIComponent(String(x))}&per_page=${encodeURIComponent(String(j))}&role=${encodeURIComponent(String(f.role))}&year=${encodeURIComponent(String(f.year))}&month=${encodeURIComponent(String(f.month))}`)}},scroll:{x:"max-content"}})]})})}const Wb=({token:t})=>e.jsx(Yb,{token:t}),bu=Je.leave,Tn=({baseUrl:t,page:a=1,perPage:n=10,token:r})=>q(r&&t?[t,a,n,r]:null,([l,d,c,h])=>eb({baseUrl:l,page:d,perPage:c},h)),Vb=({token:t,page:a=1,perPage:n=10})=>Tn({token:t,baseUrl:bu.requestTable,page:a,perPage:n}),Hb=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Kb=(t,a)=>{const n=new FormData;return Object.entries(t??{}).forEach(([r,o])=>{o!=null&&n.append(r,String(o))}),n.set("status",a),n};function Gb({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),{isLoading:r,error:o,data:l,mutate:d}=Vb({token:t,page:a.page,perPage:a.rowsPerPage}),c=i.useMemo(()=>Hb(l),[l]),h=async(p,m)=>{try{const v=Kb(p,m),S=await Pa(bu.approveRequest,v,t);S?.Status==="Success"?D.success("Success! Updated request.",{duration:1e3,icon:"🚀"}):D.error(S?.msg??"Failed to update request.",{duration:1e3}),await d()}catch(v){D.error(v?.response?.data?.msg??v?.message??"Failed to update request.",{duration:1e3})}},f=i.useMemo(()=>[{title:"Name",key:"full_name",ellipsis:!0,render:(p,m)=>m?.full_name??m?.staff_name??""},{title:"From",key:"leave_from",width:120,render:(p,m)=>m?.leave_from??m?.from_date??""},{title:"To",key:"leave_to",width:120,render:(p,m)=>m?.leave_to??m?.to_date??""},{title:"Leave Type",key:"leavetype",ellipsis:!0,render:(p,m)=>m?.leavetype??m?.leave_type??""},{title:"Leave Days",key:"leave_days",width:110,render:(p,m)=>m?.leave_days??""},{title:"Remarks",key:"employee_remark",ellipsis:!0,responsive:["md"],render:(p,m)=>m?.employee_remark??m?.reason??""},{title:"View",key:"document_file",width:140,render:(p,m)=>{const v=m?.document_file;return v?e.jsx(s.Button,{size:"small",onClick:()=>window.open(v,"_blank","noopener,noreferrer"),children:"View Document"}):"-"}},{title:"Status",dataIndex:"status",key:"status",width:140,align:"center",render:(p,m)=>{const v=String(m?.status??"").toLowerCase();return v==="approved"?e.jsx(s.Tag,{color:"green",children:"Approved"}):v==="declined"?e.jsx(s.Tag,{color:"red",children:"Declined"}):e.jsxs("div",{style:{display:"flex",justifyContent:"center",gap:10},children:[e.jsx(s.Button,{type:"text",size:"small",onClick:()=>h(m,"approved"),icon:e.jsx(re.CheckOutlined,{style:{color:"#06c937"}})}),e.jsx(s.Button,{type:"text",size:"small",onClick:()=>h(m,"declined"),icon:e.jsx(re.CloseOutlined,{style:{color:"#e80911"}})})]})}}],[t]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Approve Leave Requests"}),children:e.jsx(s.Table,{bordered:!0,size:"small",loading:r,rowKey:(p,m)=>String(p?.id??p?.leave_id??m),columns:f,dataSource:c,pagination:{current:a.page,pageSize:a.rowsPerPage,onChange:(p,m)=>n({page:p,rowsPerPage:m}),showSizeChanger:!0},scroll:{x:"max-content"}})})]})}const Jb=({token:t})=>e.jsx(Gb,{token:t}),Qb=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",Xb=({token:t,value:a,onChange:n})=>{const r=i.useMemo(()=>{if(t)return{Authorization:t}},[t]);return e.jsx(s.Upload,{maxCount:1,action:fu(),headers:r,onChange:o=>{if(o?.file?.status==="done"){const l=Qb(o?.file?.response);l&&n?.(l)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})})},ju=Je.leave,Zb=Je.master.leaveType.dropdown,ej=({token:t,page:a=1,perPage:n=10})=>Tn({token:t,baseUrl:ju.table,page:a,perPage:n}),tj=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Ci={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function aj({token:t,userType:a}){const[n,r]=i.useState({page:1,rowsPerPage:10}),[o,l]=i.useState(!1),[d,c]=i.useState(""),[h]=s.Form.useForm();console.log("ApplyLeavePage render",a);const{isLoading:f,error:p,data:m,mutate:v}=ej({token:t,page:n.page,perPage:n.rowsPerPage}),{data:S}=q(t?[Zb,t]:null,([u,x])=>Y(u,x)),y=i.useMemo(()=>tj(S),[S]),g=(u,x)=>r({page:u,rowsPerPage:parseInt(x,10)}),b=()=>{c(""),h.resetFields(),h.setFieldsValue({apply_date:ne()}),l(!0)},T=()=>{l(!1),c(""),h.resetFields()},R=async u=>{const x=new FormData;x.set("apply_date",u?.apply_date?u.apply_date.format("YYYY-MM-DD"):""),x.set("leave_type",u?.leave_type?.value??u?.leave_type??""),x.set("from_date",u?.from_date?u.from_date.format("YYYY-MM-DD"):""),x.set("to_date",u?.to_date?u.to_date.format("YYYY-MM-DD"):""),x.set("reason",u?.reason??""),d&&x.set("file",d);try{await ca(ju.apply,x,t),D.success("Success! Leave request submitted.",{duration:1e3}),T(),await v()}catch(j){D.error(j?.response?.data?.msg??j?.message??"Failed to submit leave request.",{duration:1e3})}},I=i.useMemo(()=>{const u=m?.data??m??[];return Array.isArray(u)?u:Array.isArray(u?.data)?u.data:[]},[m]),A=i.useMemo(()=>[{title:"Leave Type",key:"leavetype",render:(u,x)=>x?.leavetype??x?.leave_type??""},{title:"Apply Date",key:"date",width:130,render:(u,x)=>x?.date??x?.apply_date??""},{title:"From",key:"leave_from",width:130,render:(u,x)=>x?.leave_from??x?.from_date??""},{title:"To",key:"leave_to",width:130,render:(u,x)=>x?.leave_to??x?.to_date??""},{title:"Approval Status",dataIndex:"status",key:"status",width:140},{title:"Remark",key:"employee_remark",render:(u,x)=>x?.employee_remark??"",ellipsis:!0,responsive:["md"]}],[]),_=a==="staff";return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:o,title:"Add Leave Request",onCancel:T,footer:null,destroyOnClose:!0,children:e.jsxs(s.Form,{form:h,layout:"vertical",onFinish:R,children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(s.Form.Item,{name:"apply_date",rules:[{required:!0,message:"Select date"}],style:{marginBottom:0},children:e.jsx(s.DatePicker,{style:Ci})})]}),e.jsx(s.Form.Item,{name:"leave_type",rules:[{required:!0,message:"Select leave type"}],children:e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Leave Type",allowSelectAll:!1})}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"From"}),e.jsx(s.Form.Item,{name:"from_date",rules:[{required:!0,message:"Select from date"}],style:{marginBottom:0},children:e.jsx(s.DatePicker,{style:Ci})})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"To"}),e.jsx(s.Form.Item,{name:"to_date",rules:[{required:!0,message:"Select to date"}],style:{marginBottom:0},children:e.jsx(s.DatePicker,{style:Ci})})]}),e.jsx(s.Form.Item,{name:"reason",rules:[{required:!0,message:"Enter reason"}],children:e.jsx(G,{type:"text",label:"Reason",placeholder:"Reason"})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingTop:22},children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222"},children:"Attachment"}),e.jsx(Xb,{token:t,value:d,onChange:c})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:12},children:[e.jsx(s.Button,{onClick:T,children:"Cancel"}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})]})}),_&&e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Apply Leave"}),extra:e.jsx(de,{type:"button",value:"Add Leave Request",onClick:b})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Leave Requests"}),children:e.jsx(s.Table,{bordered:!0,size:"small",loading:f,rowKey:(u,x)=>String(u?.id??u?.leave_id??x),columns:A,dataSource:I,pagination:{current:n.page,pageSize:n.rowsPerPage,onChange:(u,x)=>g(u,x),showSizeChanger:!0},scroll:{x:"max-content"}})})]})}const nj=({token:t,userType:a})=>e.jsx(aj,{token:t,userType:a}),ir=Je.master.leaveType,sj=({token:t,page:a=1,perPage:n=10})=>Tn({token:t,baseUrl:ir.table,page:a,perPage:n});function rj({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r]=s.Form.useForm(),[o]=s.Form.useForm(),[l,d]=i.useState(!1),[c,h]=i.useState(null),{isLoading:f,error:p,data:m,mutate:v}=sj({token:t,page:a.page,perPage:a.rowsPerPage}),S=(A,_)=>{n({page:A,rowsPerPage:parseInt(_,10)})},y=async A=>{const _=new FormData;_.set("title",A?.title??"");try{await v(ca(ir.add,_,t),pt(_)),D.success("Success! Added new leave type.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to add leave type.",{duration:1e3})}},g=A=>{h(A??null),o.setFieldsValue({title:A?.leave_type_name??A?.name??""}),d(!0)},b=()=>{d(!1),h(null),o.resetFields()},T=async A=>{const _=c?.id??c?.leave_type_id;if(!_){D.error("Missing leave type id.",{duration:1e3});return}const u=new FormData;u.set("id",String(_)),u.set("title",A?.title??"");try{await Pa(ir.edit,u,t),await v(),D.success("Success! Updated leave type.",{duration:1e3,icon:"🚀"}),b()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to update leave type.",{duration:1e3})}},R=async A=>{const _=A?.id??A?.leave_type_id;if(_)try{await v(xs(ir.remove,_,t),ot(_)),D.success("Success! Deleted leave type.",{duration:1e3})}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to delete leave type.",{duration:1e3})}},I=i.useMemo(()=>[{title:"Name",dataIndex:"type",key:"type",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(A,_)=>e.jsxs(s.Space,{size:6,children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>g(_)}),e.jsx(s.Popconfirm,{title:"Remove leave type?",okText:"Yes",cancelText:"No",onConfirm:()=>R(_),children:e.jsx(s.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(re.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:l,title:"Edit Leave Type",onCancel:b,footer:null,destroyOnClose:!0,children:e.jsxs(s.Form,{form:o,layout:"vertical",onFinish:T,children:[e.jsx(s.Form.Item,{name:"title",rules:[{required:!0,message:"Enter leave type name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(s.Button,{onClick:b,children:"Cancel"}),e.jsx(de,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Leave Type"}),children:e.jsxs(s.Form,{form:r,layout:"vertical",onFinish:y,children:[e.jsx(s.Form.Item,{name:"title",rules:[{required:!0,message:"Enter leave type name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Leave Type List"}),children:e.jsx(Ke,{parentCallback:S,data:{newData:m,columns:I,columnstype:"antd",action:!1,Loading:f,error:p}})})]})}const ij=({token:t})=>e.jsx(rj,{token:t}),or=Je.master.department,oj=({token:t,page:a=1,perPage:n=10})=>Tn({token:t,baseUrl:or.table,page:a,perPage:n});function lj({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r]=s.Form.useForm(),[o]=s.Form.useForm(),[l,d]=i.useState(!1),[c,h]=i.useState(null),{isLoading:f,error:p,data:m,mutate:v}=oj({token:t,page:a.page,perPage:a.rowsPerPage}),S=(A,_)=>{n({page:A,rowsPerPage:parseInt(_,10)})},y=async A=>{const _=new FormData;_.set("title",A?.title??"");try{await v(ca(or.add,_,t),pt(_)),D.success("Success! Added new department.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to add department.",{duration:1e3})}},g=A=>{h(A??null),o.setFieldsValue({title:A?.department_name??A?.name??""}),d(!0)},b=()=>{d(!1),h(null),o.resetFields()},T=async A=>{const _=c?.id??c?.department_id;if(!_){D.error("Missing department id.",{duration:1e3});return}const u=new FormData;u.set("id",String(_)),u.set("title",A?.title??"");try{await Pa(or.edit,u,t),await v(),D.success("Success! Updated department.",{duration:1e3,icon:"🚀"}),b()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to update department.",{duration:1e3})}},R=async A=>{const _=A?.id??A?.department_id;if(_)try{await v(xs(or.remove,_,t),ot(_)),D.success("Success! Deleted department.",{duration:1e3})}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to delete department.",{duration:1e3})}},I=i.useMemo(()=>[{title:"Name",dataIndex:"department_name",key:"department_name",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(A,_)=>e.jsxs(s.Space,{size:6,children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>g(_)}),e.jsx(s.Popconfirm,{title:"Remove department?",okText:"Yes",cancelText:"No",onConfirm:()=>R(_),children:e.jsx(s.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(re.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:l,title:"Edit Department",onCancel:b,footer:null,destroyOnClose:!0,children:e.jsxs(s.Form,{form:o,layout:"vertical",onFinish:T,children:[e.jsx(s.Form.Item,{name:"title",rules:[{required:!0,message:"Enter department name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(s.Button,{onClick:b,children:"Cancel"}),e.jsx(de,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Department"}),children:e.jsxs(s.Form,{form:r,layout:"vertical",onFinish:y,children:[e.jsx(s.Form.Item,{name:"title",rules:[{required:!0,message:"Enter department name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Department List"}),children:e.jsx(Ke,{parentCallback:S,data:{newData:m,columns:I,columnstype:"antd",action:!1,Loading:f,error:p}})})]})}const dj=({token:t})=>e.jsx(lj,{token:t}),lr=Je.master.designation,cj=({token:t,page:a=1,perPage:n=10})=>Tn({token:t,baseUrl:lr.table,page:a,perPage:n});function uj({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r]=s.Form.useForm(),[o]=s.Form.useForm(),[l,d]=i.useState(!1),[c,h]=i.useState(null),{isLoading:f,error:p,data:m,mutate:v}=cj({token:t,page:a.page,perPage:a.rowsPerPage}),S=(A,_)=>{n({page:A,rowsPerPage:parseInt(_,10)})},y=async A=>{const _=new FormData;_.set("title",A?.title??"");try{await v(ca(lr.add,_,t),pt(_)),D.success("Success! Added new designation.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to add designation.",{duration:1e3})}},g=A=>{h(A??null),o.setFieldsValue({title:A?.designation??""}),d(!0)},b=()=>{d(!1),h(null),o.resetFields()},T=async A=>{const _=c?.id??c?.designation_id;if(!_){D.error("Missing designation id.",{duration:1e3});return}const u=new FormData;u.set("id",String(_)),u.set("title",A?.title??"");try{await Pa(lr.edit,u,t),await v(),D.success("Success! Updated designation.",{duration:1e3,icon:"🚀"}),b()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to update designation.",{duration:1e3})}},R=async A=>{const _=A?.id??A?.designation_id;if(_)try{await v(xs(lr.remove,_,t),ot(_)),D.success("Success! Deleted designation.",{duration:1e3})}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to delete designation.",{duration:1e3})}},I=i.useMemo(()=>[{title:"Name",dataIndex:"designation",key:"designation",ellipsis:!0},{title:"Action",key:"action",width:110,fixed:"right",render:(A,_)=>e.jsxs(s.Space,{size:6,children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>g(_)}),e.jsx(s.Popconfirm,{title:"Remove designation?",okText:"Yes",cancelText:"No",onConfirm:()=>R(_),children:e.jsx(s.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(re.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:l,title:"Edit Designation",onCancel:b,footer:null,destroyOnClose:!0,children:e.jsxs(s.Form,{form:o,layout:"vertical",onFinish:T,children:[e.jsx(s.Form.Item,{name:"title",rules:[{required:!0,message:"Enter designation name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(s.Button,{onClick:b,children:"Cancel"}),e.jsx(de,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Designation"}),children:e.jsxs(s.Form,{form:r,layout:"vertical",onFinish:y,children:[e.jsx(s.Form.Item,{name:"title",rules:[{required:!0,message:"Enter designation name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Designation List"}),children:e.jsx(Ke,{parentCallback:S,data:{newData:m,columns:I,columnstype:"antd",action:!1,Loading:f,error:p}})})]})}const pj=({token:t})=>e.jsx(uj,{token:t}),dr=Je.master.shift,mj=({token:t,page:a=1,perPage:n=10})=>Tn({token:t,baseUrl:dr.table,page:a,perPage:n}),Ot="hh:mm A",un=t=>{const a=String(t??"");if(!a)return null;const n=ne(a,[Ot,"HH:mm","HH:mm:ss"],!0);return n.isValid()?n:null},pn=t=>t?t.format(Ot):"",Kt={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function hj({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r]=s.Form.useForm(),[o]=s.Form.useForm(),[l,d]=i.useState(!1),[c,h]=i.useState(null),{isLoading:f,error:p,data:m,mutate:v}=mj({token:t,page:a.page,perPage:a.rowsPerPage}),S=(u,x)=>{n({page:u,rowsPerPage:parseInt(x,10)})},y=(u,x)=>{const j=new FormData;return x&&j.set("id",String(x)),j.set("name",u?.name??""),j.set("start_time",pn(u?.start_time)),j.set("end_time",pn(u?.end_time)),j.set("shift_start_from",pn(u?.shift_start_from)),j.set("shift_start_to",pn(u?.shift_start_to)),j.set("shift_end_from",pn(u?.shift_end_from)),j.set("shift_end_to",pn(u?.shift_end_to)),j},g=async u=>{const x=y(u);try{await v(ca(dr.add,x,t)),D.success("Success! Added new shift.",{duration:1e3,icon:"🎉"}),r.resetFields()}catch(j){D.error(j?.response?.data?.msg??j?.message??"Failed to add shift.",{duration:1e3})}},b=u=>{h(u??null),o.setFieldsValue({name:u?.shift_name??u?.name??"",start_time:un(u?.start_time),end_time:un(u?.end_time),shift_start_from:un(u?.shift_start_from),shift_start_to:un(u?.shift_start_to),shift_end_from:un(u?.shift_end_from),shift_end_to:un(u?.shift_end_to)}),d(!0)},T=()=>{d(!1),h(null),o.resetFields()},R=async u=>{const x=c?.id??c?.shift_id;if(!x){D.error("Missing shift id.",{duration:1e3});return}try{const j=y(u,x);await v(Pa(dr.edit,j,t)),D.success("Success! Updated shift.",{duration:1e3,icon:"🚀"}),T()}catch(j){D.error(j?.response?.data?.msg??j?.message??"Failed to update shift.",{duration:1e3})}},I=async u=>{const x=u?.id??u?.shift_id;if(x)try{await v(xs(dr.remove,x,t)),D.success("Success! Deleted shift.",{duration:1e3})}catch(j){D.error(j?.response?.data?.msg??j?.message??"Failed to delete shift.",{duration:1e3})}},A=i.useMemo(()=>[{title:"Name",dataIndex:"shift_name",key:"shift_name",ellipsis:!0,fixed:"left",width:160},{title:"Start Time",dataIndex:"start_time",key:"start_time",width:120},{title:"End Time",dataIndex:"end_time",key:"end_time",width:120},{title:"Start From",dataIndex:"shift_start_from",key:"shift_start_from",width:120,responsive:["md"]},{title:"Start To",dataIndex:"shift_start_to",key:"shift_start_to",width:120,responsive:["md"]},{title:"End From",dataIndex:"shift_end_from",key:"shift_end_from",width:120,responsive:["md"]},{title:"End To",dataIndex:"shift_end_to",key:"shift_end_to",width:120,responsive:["md"]},{title:"Action",key:"action",width:110,fixed:"right",render:(u,x)=>e.jsxs(s.Space,{size:6,children:[e.jsx(s.Button,{type:"text",size:"small",icon:e.jsx(re.EditOutlined,{}),onClick:()=>b(x)}),e.jsx(s.Popconfirm,{title:"Remove shift?",okText:"Yes",cancelText:"No",onConfirm:()=>I(x),children:e.jsx(s.Button,{danger:!0,type:"text",size:"small",icon:e.jsx(re.DeleteOutlined,{})})})]})}],[]),_=[{required:!0,message:"Select time"}];return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{open:l,title:"Edit Shift",onCancel:T,footer:null,destroyOnClose:!0,children:e.jsxs(s.Form,{form:o,layout:"vertical",onFinish:R,children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{name:"name",rules:[{required:!0,message:"Enter shift name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsx(s.Form.Item,{name:"start_time",label:"Start Time",rules:_,children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"end_time",label:"End Time",rules:_,children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_start_from",label:"Start Time From",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_start_to",label:"Start Time To",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_end_from",label:"End Time From",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_end_to",label:"End Time To",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(s.Button,{onClick:T,children:"Cancel"}),e.jsx(de,{type:"submit",value:"Update",color:"primary"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Shift"}),children:e.jsx(s.Form,{form:r,layout:"vertical",onFinish:g,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{name:"name",rules:[{required:!0,message:"Enter shift name"}],children:e.jsx(G,{type:"text",label:"Name"})}),e.jsx(s.Form.Item,{name:"start_time",label:"Start Time",rules:_,children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"end_time",label:"End Time",rules:_,children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_start_from",label:"Start Time From",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_start_to",label:"Start Time To",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_end_from",label:"End Time From",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(s.Form.Item,{name:"shift_end_to",label:"End Time To",children:e.jsx(s.TimePicker,{format:Ot,use12Hours:!0,style:Kt})}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Shift List"}),children:e.jsx(Ke,{parentCallback:S,data:{newData:m,columns:A,columnstype:"antd",action:!1,Loading:f,error:p}})})]})}const fj=({token:t})=>e.jsx(hj,{token:t}),gj=Je.attendance;function yj({data:t}){return t?e.jsx("div",{style:{margin:15,fontSize:13,padding:10},children:e.jsxs("table",{style:{width:"100%",borderCollapse:"collapse"},children:[e.jsxs("thead",{children:[e.jsxs("tr",{children:[e.jsx("th",{}),e.jsx("th",{}),(t?.shifts??[]).map((a,n)=>e.jsx("th",{colSpan:"2",style:{border:"1px solid #000",paddingLeft:10},children:a?.shift_name??""},`${n}heading1`))]}),e.jsxs("tr",{children:[e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"Sl.No"}),e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"Teacher's Name"}),(t?.shifts??[]).map((a,n)=>e.jsxs(i.Fragment,{children:[e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"In Time"}),e.jsx("th",{style:{border:"1px solid #000",paddingLeft:10},children:"Out Time"})]},`${n}heading2`))]})]}),e.jsx("tbody",{children:(t?.data??[]).map((a,n)=>e.jsxs("tr",{children:[e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:n+1})}),e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:`${a?.name??""} ${a?.surname??""}`.trim()})}),(t?.shifts??[]).map((r,o)=>e.jsxs(i.Fragment,{children:[e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:a?.attendance_data?(a.attendance_data?.[r?.office_shift_id]?.checkintime??"").toUpperCase():""})}),e.jsx("td",{style:{border:"1px solid #000",paddingLeft:10},children:e.jsx("div",{style:{paddingLeft:10},children:a?.attendance_data?(a.attendance_data?.[r?.office_shift_id]?.checkouttime??"").toUpperCase():""})})]},`${o}cells${n}`))]},`${n}row`))})]})}):null}const xj=t=>{const a=t?.data??t??{};return Array.isArray(a)?a:Array.isArray(a?.items)?a.items:Array.isArray(a?.data)?a.data:[]},bj=t=>{const a=String(t??"").toLowerCase();return a==="present"?e.jsx(s.Tag,{color:"green",children:"Present"}):a==="absent"?e.jsx(s.Tag,{color:"red",children:"Absent"}):a==="leave"?e.jsx(s.Tag,{color:"orange",children:"Leave"}):e.jsx(s.Tag,{children:t??""})};function jj({token:t}){const[a,n]=i.useState(ne()),[r,o]=i.useState(!1),[l,d]=i.useState(0),c=i.useMemo(()=>`${gj.dailyAttendance}?attendance_date=${encodeURIComponent(a.format("YYYY-MM-DD"))}`,[a,r,l]),{isLoading:h,error:f,data:p}=q(t?[c,t]:null,([g,b])=>Y(g,b)),m=i.useMemo(()=>xj(p),[p]),v=i.useMemo(()=>r?p?.data?.data??p?.data??p??null:null,[p,r]),S=Ka.useReactToPrint({content:()=>document.getElementById("ubk-hr-daily-attendance-print")}),y=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(g,b,T)=>T+1},{title:"Name",key:"name",render:(g,b)=>b?.staff_name??`${b?.name??""} ${b?.surname??""}`.trim(),ellipsis:!0},{title:"Department",dataIndex:"department",key:"department",ellipsis:!0,responsive:["md"]},{title:"Designation",dataIndex:"designation",key:"designation",ellipsis:!0,responsive:["md"]},{title:"Status",key:"attendance",width:160,render:(g,b)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[bj(b?.attendance_status??b?.attendance),b?.is_week_off?e.jsx(s.Tag,{color:"blue",children:"W/O"}):null]})},{title:"In Time",key:"intime",width:120,render:(g,b)=>{const T=b?.attendance_data?.[0];return b?.check_in??T?.intime??""}},{title:"Out Time",key:"outtime",width:120,render:(g,b)=>{const T=b?.attendance_data?.[0];return b?.check_out??T?.outtime??""}}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Staff Daily Attendance"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end",padding:14,borderRadius:12,border:"1px solid #eee",background:"#fafafa"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(s.DatePicker,{value:a,onChange:g=>g&&n(g),style:{width:"100%"},allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Search",onClick:()=>d(g=>g+1)})})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Staff Attendance List"}),extra:e.jsx(re.PrinterOutlined,{style:{color:"#5080f8",fontSize:18,cursor:"pointer"},onClick:S}),children:e.jsxs("div",{id:"ubk-hr-daily-attendance-print",children:[e.jsx("div",{className:"print-only",children:e.jsx(da,{})}),r?e.jsx(yj,{data:v}):e.jsx(s.Table,{bordered:!0,size:"small",loading:h,rowKey:(g,b)=>String(g?.id??g?.staff_id??b),columns:y,dataSource:m,pagination:{pageSize:20},scroll:{x:"max-content"}})]})})]})}const Sj=({token:t})=>e.jsx(jj,{token:t}),yd=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},wj=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"";function vj({token:t,staffId:a}){const[n,r]=i.useState(!1),[o,l]=i.useState(null),[d,c]=i.useState({value:"Cash",label:"Cash"}),[h,f]=i.useState(""),[p,m]=i.useState(""),v=i.useMemo(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings"))?.currency_icon??""}catch{return""}},[]),S=M=>{const O=Number(M??0),z=Number.isFinite(O)?O.toLocaleString("en-IN"):"0";return`${v?`${v} `:""}${z}`},y=i.useMemo(()=>a?`${Je.staff.basicById}?staff_id=${encodeURIComponent(String(a))}`:null,[a]),g=i.useMemo(()=>a?`${Je.payroll.staffPayrollByStaffId}?staff_id=${encodeURIComponent(String(a))}`:null,[a]),{data:b}=q(t&&y?[y,t]:null,([M,O])=>Y(M,O)),{data:T,isLoading:R,mutate:I}=q(t&&g?[g,t]:null,([M,O])=>Y(M,O)),A=i.useMemo(()=>yd(b)[0]??b?.data??b??null,[b]),_=i.useMemo(()=>yd(T),[T]),u=i.useMemo(()=>[{title:"Month",dataIndex:"month",key:"month",width:120,align:"center"},{title:"Basic Salary",dataIndex:"basic_salary",key:"basic_salary",width:140,align:"center",render:(M,O)=>e.jsx("div",{style:{fontSize:11},children:ra(O?.basic_salary)})},{title:"Gross Salary",dataIndex:"gross_salary",key:"gross_salary",width:140,align:"center",render:(M,O)=>e.jsx("div",{style:{fontSize:11},children:ra(O?.gross_salary)})},{title:"Net Salary",dataIndex:"net_amount",key:"net_amount",width:140,align:"center",render:(M,O)=>e.jsx("div",{style:{fontSize:11},children:ra(O?.net_amount)})},{title:"Payable",dataIndex:"Total_Payable_Amount",key:"Total_Payable_Amount",width:140,align:"center",render:(M,O)=>e.jsx("div",{style:{fontSize:11},children:ra(O?.Total_Payable_Amount)})},{title:"Status",dataIndex:"status",key:"status",width:140,align:"center",render:(M,O)=>e.jsx("div",{style:{cursor:O?.status==="due"?"pointer":"default"},onClick:()=>{O?.status==="due"&&(l(O),r(!0))},children:lu(O?.status)})}],[]),x=i.useMemo(()=>[{value:"Cash",label:"Cash"},{value:"UPI",label:"UPI"},{value:"DD",label:"DD"},{value:"Bank",label:"Bank"},{value:"Internet Banking",label:"Internet Banking"},{value:"Cheque",label:"Cheque"}],[]),j=async()=>{if(!o)return;const M={...o,staff_id:a,payment_type:d?.value??"",notes:h,attchement:p};try{await Ze(Je.payroll.generatePayslip,{arg:M},t),D.success("Success!",{duration:1e3}),r(!1),l(null),f(""),m(""),await I()}catch(O){D.error(O?.response?.data?.msg??O?.message??"Failed.",{duration:1e3})}};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Payroll Receipt Details"}),children:e.jsxs("div",{style:{display:"grid",gap:14},children:[e.jsx("div",{style:{fontSize:13,color:"#444"},children:A?`${A?.f_name??A?.firstname??""} ${A?.l_name??A?.lastname??""}`.trim():""}),e.jsx(s.Table,{bordered:!0,size:"small",loading:R,rowKey:(M,O)=>String(M?.id??`${M?.month}-${O}`),columns:u,dataSource:_,pagination:{pageSize:12},scroll:{x:"max-content"}})]})}),e.jsx(s.Modal,{open:n,onCancel:()=>{r(!1),l(null)},footer:null,destroyOnClose:!0,title:"Payment Options",width:640,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(ae,{label:"Pay",options:x,value:d,onChange:M=>c(M??x[0]),closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1}),e.jsxs("div",{children:[e.jsx("div",{style:{marginBottom:6,fontSize:14,fontWeight:500,color:"#222"},children:"Note"}),e.jsx(s.Input.TextArea,{rows:4,placeholder:"Note",value:h,onChange:M=>f(M.target.value)})]}),e.jsxs("div",{children:[e.jsx("div",{style:{marginBottom:6,fontSize:14,fontWeight:500,color:"#222"},children:"Attachment"}),e.jsx(s.Upload,{maxCount:1,action:fu(),headers:t?{Authorization:t}:void 0,onChange:M=>{if(M?.file?.status==="done"){const O=wj(M?.file?.response);O&&m(O)}M?.file?.status==="removed"&&m("")},children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),children:"Upload"})}),!!p&&e.jsx("div",{style:{fontSize:12,color:"#666",marginTop:6},children:p})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:[e.jsx(s.Button,{onClick:()=>r(!1),children:"Cancel"}),e.jsx(de,{type:"button",value:o?.Total_Payable_Amount?`Pay ${S(o.Total_Payable_Amount)}`:"Pay",onClick:j})]})]})})]})}function Cj({token:t,staffId:a}){const n=i.useMemo(()=>{if(a!=null&&String(a).trim()!=="")return a;if(typeof window>"u")return null;const r=new URLSearchParams(window.location.search).get("id");return r||null},[a]);return n?e.jsx(vj,{token:t,staffId:n}):e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Payroll Receipt Details"}),children:e.jsx("div",{style:{fontSize:13,color:"#666"},children:"Missing staff id."})})}function Ma({onAdd:t,onExport:a,onPrint:n,onDownload:r,onFilter:o,onRefresh:l,actions:d}){const c=i.useMemo(()=>[{key:"add",title:"Add",icon:e.jsx(re.PlusOutlined,{}),onClick:t},{key:"export",title:"Export",icon:e.jsx(re.FileExcelOutlined,{}),onClick:a},{key:"print",title:"Print",icon:e.jsx(re.PrinterOutlined,{}),onClick:n},{key:"download",title:"Download",icon:e.jsx(re.DownloadOutlined,{}),onClick:r},{key:"filter",title:"Filter",icon:e.jsx(re.FilterOutlined,{}),onClick:o},{key:"refresh",title:"Refresh",icon:e.jsx(re.ReloadOutlined,{}),onClick:l}],[t,a,n,r,o,l]),h=i.useMemo(()=>{const f=Array.isArray(d)&&d.length?new Set(d):null;return f?c.filter(p=>f.has(p.key)):c},[c,d]);return e.jsx(s.Space,{size:8,children:h.map(f=>e.jsx(s.Tooltip,{title:f.title,children:e.jsx(s.Button,{type:"text",icon:f.icon,onClick:f.onClick,disabled:!f.onClick})},f.key))})}const fo=t=>t??localStorage.getItem("authToken")??"",fa={dashboard:{monthlyGraph:"api/branchapi/reportGraph/studentPresentvsAbsentmonthlyReportgraph",weeklyGraph:"api/branchapi/reportGraph/studentPresentvsAbsentweeklyReportgraph"},dropdowns:{classes:"api/branchapi/academy/classdropdownlist",sectionsByClass:"api/branchapi/academy/sectionoftheClass",sessions:"api/branchapi/generalSettings/sessiondropdown"},studentAttendance:{list:"api/StudentAttendace/studentlistforBranchbyClass",save:"api/studentAttendace/addattendencebyBranch",emergencyLeave:"api/StudentAttendace/emergency_leave"},dailyAttendance:{list:"api/StudentAttendace/studentlistforBranchbyClass"},monthlyReport:{table:"api/AttendenceReport/studentmonthlyAttendencebyclass",byStudent:"api/branchapi/student/getStududentMonthlyByIdUrlnew"},yearlyReport:{table:"api/AttendenceReport/studentyearlyAttendenceReport"}},Ta=async(t,a)=>Y(t,fo(a)),_j=async(t,a,n)=>Ze(t,a,fo(n)),Aj=async(t,a,n)=>gn(t,{arg:a},fo(n)),os=(t,a)=>{const n=new URLSearchParams;Object.entries(a??{}).forEach(([o,l])=>{l==null||l===""||n.set(o,String(l))});const r=t.includes("?")?"&":"?";return`${t}${r}${n.toString()}`},xd=()=>{try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1"}catch{return"1"}},Dj=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Su=(t,a)=>{const n=t?.data?.data??t?.data??t??{},r=a?n?.[a]:n;return Array.isArray(r)?r:Array.isArray(n?.student)?n.student:Array.isArray(n?.staff)?n.staff:Array.isArray(n?.data)?n.data:[]},Tj=t=>Array.isArray(t?.monthly_data)?t.monthly_data:Array.isArray(t?.month_data)?t.month_data:[],kj=t=>{const a={present:0,absent:0,late:0,leave:0};return(Array.isArray(t)?t:[]).forEach(n=>{if(Array.isArray(n?.monthly_data)||Array.isArray(n?.month_data)){Tj(n).forEach(o=>{const l=o?.[0]?.data?.[0]??o?.data?.[0]??o??{},d=String(l?.attendance_type??l?.attendence_type_id??"").toUpperCase();(d==="P"||d==="1")&&(a.present+=1),(d==="A"||d==="4")&&(a.absent+=1),(d==="L"||d==="3")&&(a.late+=1),(d==="LEAVE"||d==="2")&&(a.leave+=1)});return}const r=String(n?.attendance_type??n?.attendence_type_id??"").toUpperCase();(r==="P"||r==="1")&&(a.present+=1),(r==="A"||r==="4")&&(a.absent+=1),(r==="L"||r==="3")&&(a.late+=1),(r==="LEAVE"||r==="2")&&(a.leave+=1)}),a},go=(t,a)=>{const{data:n,isLoading:r,error:o}=q(a&&t?[t,a]:null,([l,d])=>Ta(l,d));return{isLoading:r,error:o,data:n,options:i.useMemo(()=>Dj(n),[n])}},Ur=t=>go(fa.dropdowns.classes,t),Nr=(t,a)=>{const n=t?`${fa.dropdowns.sectionsByClass}?class_id=${encodeURIComponent(String(t))}`:null;return go(n,a)},Rj=t=>go(fa.dropdowns.sessions,t),yo=t=>{const a=String(t??"").toUpperCase();return St(a==="1"||a==="P"||a==="PRESENT"?"P":a==="4"||a==="A"||a==="ABSENT"?"A":a==="3"||a==="L"||a==="LATE"?"L":a==="2"||a==="LEAVE"?"LEAVE":a==="W"?"W":a==="H"?"H":a||"-")},wu=(t,a,n)=>{const r=new Blob([t],{type:a}),o=URL.createObjectURL(r),l=document.createElement("a");l.href=o,l.download=n,document.body.appendChild(l),l.click(),l.remove(),URL.revokeObjectURL(o)},bd=t=>String(t??"").replace(/"/g,'""'),Ij=({rows:t,columns:a,fileName:n})=>{const r=Array.isArray(a)?a:[],o=Array.isArray(t)?t:[],l=r.map(c=>`"${bd(c?.title??c?.name??c?.key??c?.dataIndex)}"`).join(","),d=o.map((c,h)=>r.map(f=>{const p=f?.dataIndex??f?.selector??f?.key,m=p==="sl"?h+1:c?.[p];return`"${bd(m)}"`}).join(",")).join(`
61
+ `);wu([l,d].filter(Boolean).join(`
62
+ `),"text/csv;charset=utf-8;",n)},Pj=({value:t,fileName:a})=>{wu(JSON.stringify(t??null,null,2),"application/json;charset=utf-8;",a)};function vu({summary:t}){const a=[{key:"present",label:"Present",color:"#52c41a"},{key:"absent",label:"Absent",color:"#ff4d4f"},{key:"leave",label:"Leave",color:"#1677ff"}];return e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(140px, 1fr))",gap:12},children:a.map(n=>e.jsxs(s.Card,{size:"small",styles:{body:{padding:12}},children:[e.jsx("div",{style:{fontSize:11,color:"#666",marginBottom:4},children:n.label}),e.jsx("div",{style:{fontSize:20,fontWeight:700,color:n.color},children:t?.[n.key]??0})]},n.key))})}function wn({summary:t,title:a="Attendance Overview"}){const n=i.useMemo(()=>[{key:"present",label:"Present",value:Number(t?.present??0),color:"#52c41a"},{key:"absent",label:"Absent",value:Number(t?.absent??0),color:"#ff4d4f"},{key:"leave",label:"Leave",value:Number(t?.leave??0),color:"#1677ff"}],[t]),r=Math.max(...n.map(o=>o.value),1);return e.jsx(s.Card,{size:"small",title:a,children:e.jsx("div",{style:{display:"grid",gap:8},children:n.map(o=>e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"80px 1fr 40px",gap:8,alignItems:"center"},children:[e.jsx("div",{style:{fontSize:11,color:"#444"},children:o.label}),e.jsx("div",{style:{height:10,background:"#f0f0f0",borderRadius:999},children:e.jsx("div",{style:{width:`${o.value/r*100}%`,height:"100%",background:o.color,borderRadius:999}})}),e.jsx("div",{style:{fontSize:11,fontWeight:600,textAlign:"right"},children:o.value})]},o.key))})})}function Mj(){const t=[{label:"Present",node:St("P")},{label:"Absent",node:St("A")},{label:"Late",node:St("L")},{label:"Weekly Off",node:St("W")},{label:"Holiday",node:St("H")}];return e.jsx(s.Space,{wrap:!0,size:[12,8],children:t.map(a=>e.jsxs(s.Space,{size:6,children:[e.jsx("span",{style:{fontSize:12,color:"#555"},children:a.label}),a.node]},a.label))})}function ka({items:t}){const a=Array.isArray(t)?t.filter(n=>n?.value):[];return a.length?e.jsx(s.Space,{wrap:!0,size:[8,8],children:a.map(n=>e.jsxs(s.Tag,{color:"blue",children:[n.label,": ",n.value]},n.label))}):null}function zr({title:t,subtitle:a,printRef:n,exportRows:r,exportColumns:o,onRefresh:l,onAdd:d,filterSection:c,summary:h,chartContent:f,reportTitle:p,reportExtra:m,children:v,fileBaseName:S="attendance"}){const y=Ka.useReactToPrint({content:()=>n?.current});return e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsx(s.Card,{size:"small",title:e.jsxs("div",{children:[e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:t}),a?e.jsx(s.Typography.Text,{type:"secondary",style:{display:"block",marginTop:2,fontSize:12},children:a}):null]}),extra:e.jsx(Ma,{actions:["add","export","print","download","refresh"],onAdd:d,onExport:()=>Ij({rows:r,columns:o,fileName:`${S}.csv`}),onPrint:y,onDownload:()=>Pj({value:r,fileName:`${S}.json`}),onRefresh:l}),children:c}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(260px, 1fr))",gap:12,alignItems:"start"},children:[e.jsx(vu,{summary:h}),f===!1?null:f||e.jsx(wn,{summary:h})]}),e.jsx(s.Card,{size:"small",title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:p}),extra:m,styles:{body:{padding:0}},children:v})]})}const Ej=[{label:"Present",value:"1"},{label:"Absent",value:"4"},{label:"Late",value:"3"},{label:"Leave",value:"2"}];function Oj({rows:t,loading:a,sunday:n,holiday:r,holidayTitle:o,onChangeRows:l,onEmergency:d}){const c=(f,p)=>{const m=(Array.isArray(t)?t:[]).map((v,S)=>(v?.student_session_id??v?.student_id??v?.id??S)===f?{...v,...p}:v);l?.(m)},h=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(f,p,m)=>m+1},{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:130},{title:"EC No",dataIndex:"ecno",key:"ecno",width:100},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:100},{title:"Full Name",key:"full_name",render:(f,p)=>p?.full_name??p?.student_name??p?.name??"--"},{title:"Attendance",dataIndex:"attendence_type_id",key:"attendence_type_id",width:180,render:(f,p,m)=>{const v=p?.student_session_id??p?.student_id??p?.id??m;return e.jsx(s.Select,{size:"small",style:{width:"100%"},options:Ej,value:String(f??"1"),onChange:S=>c(v,{attendence_type_id:S})})}},{title:"Date",dataIndex:"date",key:"date",width:120,render:f=>f?ne(f).format("DD-MM-YYYY"):"--"},{title:"Remarks",dataIndex:"remark",key:"remark",width:140},{title:"In Time",dataIndex:"intime",key:"intime",width:120},{title:"Out Time",dataIndex:"outtime",key:"outtime",width:120},{title:"Emergency Leave",key:"emergency_leave",width:140,render:(f,p)=>e.jsx(s.Tag,{color:"orange",style:{cursor:"pointer"},icon:e.jsx(re.ClockCircleOutlined,{}),onClick:()=>d?.(p),children:"E.L"})}],[d,t]);return n?e.jsx("div",{style:{textAlign:"center",fontWeight:700,padding:"32px 0"},children:"Weekly Off"}):r?e.jsxs("div",{style:{textAlign:"center",padding:"32px 0"},children:[e.jsx("div",{style:{fontWeight:700,marginBottom:8},children:"Holiday"}),e.jsx("div",{children:o||"--"})]}):e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(f,p)=>String(f?.student_session_id??f?.student_id??f?.id??p),columns:h,dataSource:Array.isArray(t)?t:[],loading:a,pagination:{pageSize:25},scroll:{x:"max-content"}})}function $j({rows:t,loading:a,sunday:n,holiday:r,holidayTitle:o}){const l=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(d,c,h)=>h+1},{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:130},{title:"EC No",dataIndex:"ecno",key:"ecno",width:100},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:100},{title:"Full Name",key:"full_name",render:(d,c)=>c?.full_name??c?.student_name??c?.name??"--"},{title:"Attendance",dataIndex:"attendence_type_id",key:"attendence_type_id",width:120,render:d=>yo(d)},{title:"Date",dataIndex:"date",key:"date",width:120,render:d=>d?ne(d).format("DD-MM-YYYY"):"--"},{title:"Remarks",dataIndex:"remark",key:"remark",width:140},{title:"In Time",dataIndex:"intime",key:"intime",width:120},{title:"Out Time",dataIndex:"outtime",key:"outtime",width:120}],[]);return n?e.jsx("div",{style:{textAlign:"center",fontWeight:700,padding:"32px 0"},children:"Weekly Off"}):r?e.jsxs("div",{style:{textAlign:"center",padding:"32px 0"},children:[e.jsx("div",{style:{fontWeight:700,marginBottom:8},children:"Holiday"}),e.jsx("div",{children:o||"--"})]}):e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(d,c)=>String(d?.student_session_id??d?.student_id??d?.id??c),columns:l,dataSource:Array.isArray(t)?t:[],loading:a,pagination:{pageSize:25},scroll:{x:"max-content"}})}function Fj({data:t,loading:a,onViewStudent:n}){const r=t?.data??t??{},o=Array.isArray(r?.studentAttendance)?r.studentAttendance:Array.isArray(r?.students)?r.students:Array.isArray(r?.report)?r.report:Array.isArray(r?.data?.resultlist)?r.data.resultlist:Array.isArray(r?.resultlist)?r.resultlist:Array.isArray(r?.data)?r.data:Array.isArray(r)?r:[],l=Array.isArray(r?.monthly_holiday)?r.monthly_holiday:[],d=Array.isArray(r?.dateSun)?r.dateSun:[],c=Number(r?.totalDaysMonth??0),h=i.useMemo(()=>{const f=[{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:20,fixed:"left"},{title:"Name",key:"student_name",fixed:"left",render:(p,m)=>e.jsx(s.Button,{type:"link",style:{padding:0},onClick:()=>n?.(m),children:m?.student_name??m?.full_name??"--"})}];return[...new Array(c).keys()].forEach(p=>{f.push({title:String(p+1),key:`day-${p+1}`,align:"center",render:(m,v)=>{const y=v?.[`${v?.student_id}_${o.indexOf(v)}`]?.[p]??{},g=y?.attendance_date,b=l.find(T=>T?.date===g);return d.includes(g)?Dl("sunday","W"):b?Dl("holiday","H"):yo(y?.attendence_type_id)}})}),f.push({title:"Total",key:"total",fixed:"right",render:(p,m)=>{let v=0,S=0,y=0;return[...new Array(c).keys()].forEach(g=>{const b=m?.[`${m?.student_id}_${o.indexOf(m)}`]?.[g]??{},T=String(b?.attendence_type_id??"");T==="1"&&(v+=1),T==="4"&&(S+=1),T==="3"&&(y+=1)}),e.jsxs("span",{children:["P: ",v," A: ",S," L: ",y]})}}),f},[l,n,o,d,c]);return e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(f,p)=>String(f?.student_id??p),columns:h,dataSource:o,loading:a,pagination:{pageSize:20},scroll:{x:"max-content"},locale:{emptyText:e.jsx(s.Empty,{description:"No monthly report found"})}})}function Bj({open:t,onClose:a,loading:n,data:r,studentName:o}){const l=Array.isArray(r?.data?.report)?r.data.report:[],d=[{title:"Date",dataIndex:"attendance_date",key:"attendance_date",render:c=>c?ne(c).format("DD-MM-YYYY"):"--"},{title:"Status",key:"status",render:(c,h)=>yo(h?.attendence_type_id??h?.attendance_type)},{title:"In Time",dataIndex:"intime",key:"intime"},{title:"Out Time",dataIndex:"outtime",key:"outtime"},{title:"Remark",dataIndex:"remark",key:"remark"}];return e.jsx(s.Modal,{open:t,onCancel:a,footer:null,width:900,title:`Monthly Details${o?` - ${o}`:""}`,children:e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(c,h)=>String(c?.attendance_date??h),columns:d,dataSource:l,loading:n,pagination:{pageSize:20},scroll:{x:"max-content"}})})}function Lj({open:t,onClose:a,onSubmit:n,loading:r}){const[o,l]=s.Modal.useModal(),[d,c]=i.useState(null),[h,f]=i.useState(""),p=async()=>{if(!d){await o.warning({title:"Select time"});return}await n?.({outtime:d.format("h:mm a"),message:h}),c(null),f("")};return e.jsxs(e.Fragment,{children:[l,e.jsx(s.Modal,{title:"Emergency Leave",open:t,onCancel:a,onOk:p,confirmLoading:r,children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:13,fontWeight:500,marginBottom:6},children:"Select Time"}),e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",value:d,onChange:c,style:{width:"100%"}})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:13,fontWeight:500,marginBottom:6},children:"Purpose"}),e.jsx(s.Input.TextArea,{rows:4,value:h,onChange:m=>f(m.target.value)})]})]})})]})}const Cu=t=>kj(t),jd=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a.reduce((n,r)=>({present:n.present+Number(r?.present??r?.Present??r?.total_present??0),absent:n.absent+Number(r?.absent??r?.Absent??r?.total_absent??0),late:n.late+Number(r?.late??r?.Late??0),leave:n.leave+Number(r?.leave??r?.Leave??0)}),{present:0,absent:0,late:0,leave:0}):{present:Number(a?.present??a?.Present??a?.total_present??0),absent:Number(a?.absent??a?.Absent??a?.total_absent??0),late:Number(a?.late??a?.Late??0),leave:Number(a?.leave??a?.Leave??0)}};function Uj({token:t}){const{data:a}=q(t?[fa.dashboard.monthlyGraph,t]:null,([l,d])=>Ta(l,d)),{data:n}=q(t?[fa.dashboard.weeklyGraph,t]:null,([l,d])=>Ta(l,d)),r=i.useMemo(()=>jd(a),[a]),o=i.useMemo(()=>jd(n),[n]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsxs(s.Card,{children:[e.jsx(s.Typography.Title,{level:4,style:{marginTop:0},children:"Attendance Dashboard"}),e.jsx(s.Typography.Paragraph,{style:{marginBottom:0},children:"Student attendance overview with monthly and weekly analytics migrated from the ERP dashboard."})]}),e.jsx(vu,{summary:r}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(320px, 1fr))",gap:20},children:[e.jsx(wn,{summary:r,title:"Monthly Attendance Chart"}),e.jsx(wn,{summary:o,title:"Weekly Attendance Chart"})]})]})}const _i=fa.studentAttendance,Nj={width:"100%",height:40};function zj({token:t}){const a=i.useRef(null),[n,r]=i.useState(""),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState(""),[p,m]=i.useState(""),[v,S]=i.useState(""),[y,g]=i.useState(ne()),[b,T]=i.useState(0),[R,I]=i.useState([]),[A,_]=i.useState(!1),[u,x]=i.useState(null),[j,M]=i.useState(!1),[O,z]=i.useState(!1),k=Ur(t),F=Nr(n,t),C=i.useMemo(()=>!n||!d||b===0?null:os(_i.list,{cID:n,sID:d,batch_id:p,date:y.format("YYYY-MM-DD")}),[p,n,y,b,d]),{data:E,isLoading:P,mutate:U}=q(t&&C?[C,t]:null,([J,K])=>Ta(J,K));i.useEffect(()=>{I(Su(E,"student"))},[E]);const H=E?.data?.data??E?.data??E??{},W=!!H?.sunday,L=!!H?.holiday?.holiday,B=H?.holiday?.title??"",$=i.useMemo(()=>Cu(R),[R]),N=i.useMemo(()=>[{title:"Admission No",dataIndex:"admission_no"},{title:"EC No",dataIndex:"ecno"},{title:"Roll No",dataIndex:"roll_no"},{title:"Full Name",dataIndex:"full_name"},{title:"Attendance",dataIndex:"attendence_type_id"},{title:"Date",dataIndex:"date"},{title:"Remarks",dataIndex:"remark"},{title:"In Time",dataIndex:"intime"},{title:"Out Time",dataIndex:"outtime"}],[]),V=async()=>{if(R.length)try{z(!0),await _j(_i.save,{attendenceData:R,date:y.format("YYYY-MM-DD"),holiday:A?"YES":"NO"},t),D.success("Student attendance saved."),U?.()}catch(J){D.error(J?.message??"Failed to save attendance.")}finally{z(!1)}},Q=async({outtime:J,message:K})=>{if(u?.attendence_id)try{M(!0),await Aj(_i.emergencyLeave,{outtime:J,message:K,id:u.attendence_id},t),D.success("Emergency leave updated."),x(null),U?.()}catch(X){D.error(X?.message??"Failed to update emergency leave.")}finally{M(!1)}},Z=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(ae,{options:k.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:J=>{r(J?.value??""),l(J?.label??""),c(""),f(""),m(""),S("")},required:!0}),e.jsx(ae,{options:F.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:J=>{c(J?.value??""),f(J?.label??""),m(""),S("")},required:!0},`section-${n}`),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(s.DatePicker,{value:y,onChange:J=>J&&g(J),style:Nj,allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:()=>T(J=>J+1)})})]}),e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Date",value:y.format("DD-MM-YYYY")}]})]});return e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{}),e.jsx(zr,{title:"Student Attendance",printRef:a,exportRows:R,exportColumns:N,onRefresh:()=>U?.(),filterSection:Z,summary:$,chartContent:!1,reportTitle:"Student Attendance List",reportExtra:e.jsxs("div",{style:{display:"flex",gap:8},children:[e.jsx(s.Button,{size:"small",type:A?"primary":"default",onClick:()=>_(J=>!J),children:A?"Marked":"Mark As Holiday"}),e.jsx(s.Button,{size:"small",type:"primary",onClick:V,loading:O,disabled:!R.length,children:"Save Attendance"})]}),fileBaseName:"student-attendance",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(da,{}),e.jsx(s.Typography.Title,{level:5,children:"Student Attendance"}),e.jsx(s.Card,{size:"small",style:{marginBottom:12},children:e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Date",value:y.format("DD-MM-YYYY")}]})})]}),e.jsx(Oj,{rows:R,loading:P,sunday:W,holiday:L,holidayTitle:B,onChangeRows:I,onEmergency:x})]})}),e.jsx(Lj,{open:!!u,onClose:()=>x(null),onSubmit:Q,loading:j})]})}const qj=fa.dailyAttendance,Yj={width:"100%",height:40};function Wj({token:t}){const a=i.useRef(null),[n,r]=i.useState(""),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState(""),[p,m]=i.useState(""),[v,S]=i.useState(""),[y,g]=i.useState(ne()),[b,T]=i.useState(0),R=Ur(t),I=Nr(n,t),A=i.useMemo(()=>!n||!d||b===0?null:os(qj.list,{cID:n,sID:d,batch_id:p,date:y.format("YYYY-MM-DD")}),[p,n,y,b,d]),{data:_,isLoading:u,mutate:x}=q(t&&A?[A,t]:null,([P,U])=>Ta(P,U)),j=i.useMemo(()=>Su(_,"student"),[_]),M=_?.data?.data??_?.data??_??{},O=!!M?.sunday,z=!!M?.holiday?.holiday,k=M?.holiday?.title??"",F=i.useMemo(()=>Cu(j),[j]),C=i.useMemo(()=>[{title:"Admission No",dataIndex:"admission_no"},{title:"EC No",dataIndex:"ecno"},{title:"Roll No",dataIndex:"roll_no"},{title:"Full Name",dataIndex:"full_name"},{title:"Attendance",dataIndex:"attendence_type_id"},{title:"Date",dataIndex:"date"},{title:"Remarks",dataIndex:"remark"},{title:"In Time",dataIndex:"intime"},{title:"Out Time",dataIndex:"outtime"}],[]),E=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(ae,{options:R.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:P=>{r(P?.value??""),l(P?.label??""),c(""),f(""),m(""),S("")},required:!0}),e.jsx(ae,{options:I.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:P=>{c(P?.value??""),f(P?.label??""),m(""),S("")},required:!0},`section-${n}`),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Date"}),e.jsx(s.DatePicker,{value:y,onChange:P=>P&&g(P),style:Yj,allowClear:!1})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:()=>T(P=>P+1)})})]}),e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Date",value:y.format("DD-MM-YYYY")}]})]});return e.jsx(zr,{title:"Daily Attendance",subtitle:"Read-only daily attendance enquiry migrated from ERP AttendanceDashboard.",printRef:a,exportRows:j,exportColumns:C,onRefresh:()=>x?.(),filterSection:E,summary:F,chartContent:e.jsx(wn,{summary:F,title:"Daily Attendance Overview"}),reportTitle:"Daily Attendance List",fileBaseName:"daily-attendance",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(da,{}),e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Date",value:y.format("DD-MM-YYYY")}]})]}),e.jsx($j,{rows:j,loading:u,sunday:O,holiday:z,holidayTitle:k})]})})}const Sd=fa.monthlyReport,_u=t=>Array.isArray(t?.studentAttendance)?t.studentAttendance:Array.isArray(t?.students)?t.students:Array.isArray(t?.report)?t.report:Array.isArray(t?.data?.resultlist)?t.data.resultlist:Array.isArray(t?.resultlist)?t.resultlist:Array.isArray(t?.data)?t.data:Array.isArray(t)?t:[],Vj=t=>{const a=_u(t),n=Number(t?.totalDaysMonth??0),r={present:0,absent:0,late:0,leave:0};return a.forEach((o,l)=>{[...new Array(n).keys()].forEach(d=>{const c=o?.[`${o?.student_id}_${l}`]?.[d]??{},h=String(c?.attendence_type_id??"");h==="1"&&(r.present+=1),h==="4"&&(r.absent+=1),h==="3"&&(r.late+=1),h==="2"&&(r.leave+=1)})}),r},Hj=t=>{const a=_u(t),n=Number(t?.totalDaysMonth??0);return a.map((r,o)=>{let l=0,d=0,c=0;return[...new Array(n).keys()].forEach(h=>{const f=r?.[`${r?.student_id}_${o}`]?.[h]??{},p=String(f?.attendence_type_id??"");p==="1"&&(l+=1),p==="4"&&(d+=1),p==="3"&&(c+=1)}),{roll_no:r?.roll_no??"",student_name:r?.student_name??r?.full_name??"",present:l,absent:d,late:c}})};function Kj({token:t}){const a=i.useRef(null),[n,r]=i.useState(""),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState(""),[p,m]=i.useState(""),[v,S]=i.useState(""),[y,g]=i.useState(String(new Date().getFullYear())),[b,T]=i.useState(String(new Date().getMonth()+1).padStart(2,"0")),[R,I]=i.useState(0),[A,_]=i.useState(null),u=Ur(t),x=Nr(n,t),j=i.useMemo(()=>mo(Number(y)),[y]),M=i.useMemo(()=>po(10),[]),O=i.useMemo(()=>!n||!d||!y||!b||R===0?null:os(Sd.table,{session:xd(),class_id:n,section_id:d,year:y,month:b,batch_id:p}),[p,n,b,R,d,y]),{data:z,isLoading:k,mutate:F}=q(t&&O?[O,t]:null,([$,N])=>Ta($,N)),C=z?.data?.data??z?.data??z??{},E=i.useMemo(()=>Vj(C),[C]),P=i.useMemo(()=>Hj(C),[C]),U=i.useMemo(()=>[{title:"Roll No",dataIndex:"roll_no"},{title:"Name",dataIndex:"student_name"},{title:"Present",dataIndex:"present"},{title:"Absent",dataIndex:"absent"},{title:"Late",dataIndex:"late"}],[]),H=i.useMemo(()=>A?.student_id?os(Sd.byStudent,{student_id:A.student_id,month:b,year:y,session:xd()}):null,[b,A,y]),{data:W,isLoading:L}=q(t&&H?[H,t]:null,([$,N])=>Ta($,N)),B=e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(180px, 1fr))",gap:12,alignItems:"end"},children:[e.jsx(ae,{options:u.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:$=>{r($?.value??""),l($?.label??""),c(""),f(""),m(""),S("")},required:!0}),e.jsx(ae,{options:x.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:$=>{c($?.value??""),f($?.label??""),m(""),S("")},required:!0},`section-${n}`),e.jsx(ae,{options:M,label:"Year",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:M.find($=>String($?.value)===String(y))??null,onChange:$=>g(String($?.value??"")),required:!0}),e.jsx(ae,{options:j,label:"Month",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:j.find($=>String($?.value)===String(b))??null,onChange:$=>T(String($?.value??"").padStart(2,"0")),required:!0},`month-${y}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:()=>I($=>$+1)})})]}),e.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:12,alignItems:"center",justifyContent:"space-between"},children:[e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Month",value:j.find($=>String($?.value)===String(b))?.label??b},{label:"Year",value:y}]}),e.jsx(Mj,{})]})]});return e.jsxs(e.Fragment,{children:[e.jsx(zr,{title:"Monthly Report",subtitle:"Monthly class-wise attendance matrix and student drilldown.",printRef:a,exportRows:P,exportColumns:U,onRefresh:()=>F?.(),filterSection:B,summary:E,chartContent:e.jsx(wn,{summary:E,title:"Monthly Attendance Summary"}),reportTitle:"Monthly Attendance Table",fileBaseName:"monthly-attendance-report",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(da,{}),e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Month",value:j.find($=>String($?.value)===String(b))?.label??b},{label:"Year",value:y}]})]}),e.jsx(Fj,{data:C,loading:k,onViewStudent:_})]})}),e.jsx(Bj,{open:!!A,onClose:()=>_(null),loading:L,data:W,studentName:A?.student_name??A?.full_name})]})}const Gj=fa.yearlyReport,Jj=t=>{const a=t?.data?.data??t?.data??t??{};return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:Array.isArray(a?.students)?a.students:Array.isArray(a?.report)?a.report:Array.isArray(a?.resultlist)?a.resultlist:[]},Qj=t=>(Array.isArray(t)?t:[]).reduce((a,n)=>({present:a.present+Number(n?.singleStudentPresentData??n?.present??0),absent:a.absent+Number(n?.singleStudentAbsentData??n?.absent??0),late:a.late+Number(n?.late??0),leave:a.leave+Number(n?.leave??0)}),{present:0,absent:0,late:0,leave:0});function Xj({token:t}){const a=i.useRef(null),[n,r]=i.useState(""),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState(""),[p,m]=i.useState(""),[v,S]=i.useState(""),[y,g]=i.useState(""),[b,T]=i.useState(""),[R,I]=i.useState(0),A=Ur(t),_=Nr(n,t),u=Rj(t),x=i.useMemo(()=>!n||!d||R===0?null:os(Gj.table,{class_id:n,section_id:d,session_id:p,batch_id:y}),[y,n,R,d,p]),{data:j,isLoading:M,mutate:O}=q(t&&x?[x,t]:null,([P,U])=>Ta(P,U)),z=i.useMemo(()=>Jj(j),[j]),k=i.useMemo(()=>Qj(z),[z]),F=i.useMemo(()=>[{title:"Roll No",dataIndex:"roll_no"},{title:"Full Name",dataIndex:"full_name"},{title:"Present",dataIndex:"singleStudentPresentData"},{title:"Absent",dataIndex:"singleStudentAbsentData"}],[]),C=i.useMemo(()=>[{title:"Sl No.",key:"sl",width:70,render:(P,U,H)=>H+1},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:100},{title:"Full Name",dataIndex:"full_name",key:"full_name"},{title:"Total Present",dataIndex:"singleStudentPresentData",key:"singleStudentPresentData",width:130},{title:"Total Absent",dataIndex:"singleStudentAbsentData",key:"singleStudentAbsentData",width:130}],[]),E=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:16,alignItems:"end"},children:[e.jsx(ae,{options:A.options,label:"Class",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:P=>{r(P?.value??""),l(P?.label??""),c(""),f(""),g(""),T("")},required:!0}),e.jsx(ae,{options:_.options,label:"Section",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:P=>{c(P?.value??""),f(P?.label??""),g(""),T("")},required:!0},`section-${n}`),e.jsx(ae,{options:u.options,label:"Session",closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:P=>{m(P?.value??""),S(P?.label??"")},required:!0}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:()=>I(P=>P+1)})})]}),e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Session",value:v}]})]});return e.jsx(zr,{title:"Yearly Report",subtitle:"Yearly attendance summary migrated from ERP AttendanceDashboard.",printRef:a,exportRows:z,exportColumns:F,onRefresh:()=>O?.(),filterSection:E,summary:k,chartContent:e.jsx(wn,{summary:k,title:"Yearly Attendance Summary"}),reportTitle:"Yearly Attendance List",fileBaseName:"yearly-attendance-report",children:e.jsxs("div",{ref:a,children:[e.jsxs("div",{className:"print-only",children:[e.jsx(da,{}),e.jsx(ka,{items:[{label:"Class",value:o},{label:"Section",value:h},{label:"Session",value:v}]})]}),e.jsx(s.Table,{bordered:!0,size:"small",rowKey:(P,U)=>String(P?.student_id??P?.id??U),columns:C,dataSource:z,loading:M,pagination:{pageSize:25},scroll:{x:"max-content"}})]})})}const Zj=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},Au=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},wd=(t,a)=>{const n=`${t||""}`.trim();if(!n)return"";if(/^https?:\/\//i.test(n))return n;const r=Au(a),o=n.startsWith("/")?n.slice(1):n;return Zj(ut(),`uploads/school_${r}/branch/income/${o}`)},eS=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a.map(n=>({value:n?.value??n?.id??"",label:n?.label??n?.name??n?.income_category??n?.title??""})):[]};function tS({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),{isLoading:o,data:l}=q(n&&r?[`${ff}?id=${r}`,n]:null,([u,x])=>Y(u,x)),{data:d}=q(n?[Vc,n]:null,([u,x])=>Y(u,x)),c=i.useMemo(()=>eS(d),[d]),h=i.useMemo(()=>{if(Array.isArray(l))return l[0];const u=l?.data?.data??l?.data??l??{};return Array.isArray(u)?u[0]:u??{}},[l]),[f,p]=i.useState({income_head:"",name:"",invoice_no:"",date:ne(),amount:"",description:"",doc:""}),[m,v]=i.useState(!1),[S,y]=i.useState(!1),[g,b]=i.useState(""),[T,R]=i.useState(""),I=async u=>{u.preventDefault(),v(!0);try{await a(u,r)}finally{v(!1)}};i.useEffect(()=>{h&&p({income_head:h?.inc_head_id||"",name:h?.name||"",invoice_no:h?.invoice_no||"",date:h?.date?ne(h.date):ne(),amount:h?.amount||"",description:h?.note||"",doc:h?.documents||""})},[h]);const A=(u,x)=>{p(j=>({...j,[u]:x}))},_=c.find(u=>String(u.value)===String(f.income_head))??null;return o?e.jsx(w,{pt:4,pb:1,style:{width:550,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(s.Spin,{tip:"Loading..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:I,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Edit Income"})}),e.jsx(w,{p:2,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(ae,{label:"Income Head",options:c,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"income_head",required:!0,value:_,onChange:u=>A("income_head",u?.value||"")})]})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"name",type:"text",label:"Name",required:!0,value:f.name,onChange:u=>A("name",u.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0,value:f.invoice_no,onChange:u=>A("invoice_no",u.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:f.date,Desplay:"Date",name:"date",required:!0,onChange:u=>A("date",u)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"amount",type:"number",label:"Amount",required:!0,value:f.amount,onChange:u=>A("amount",u.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(kt,{name:"description",label:"Description",rows:3,value:f.description,onChange:u=>A("description",u.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.Upload,{action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${Au(n)}/branch/income`},headers:{Authorization:n},maxCount:1,onChange:u=>{if(u.file.status==="removed"&&A("doc",""),u.file.status==="done"){const x=u.file.response?.data??u.file.response?.file??"";A("doc",String(x??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:f.doc?"Change":"Upload"})},f.doc||"empty"),f.doc&&e.jsx("a",{href:wd(f.doc,n),target:"_blank",rel:"noreferrer",style:{display:"block",marginTop:8,fontSize:12,color:"#1677ff",textDecoration:"underline"},onClick:u=>{u.preventDefault(),b(wd(f.doc,n)),R(f.doc||"Document"),y(!0)},children:"View existing document"}),e.jsx("input",{type:"hidden",name:"doc",value:f.doc||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:m?"Saving...":"Submit",color:"primary",disabled:m})})})})})]})})]})}),e.jsx(s.Modal,{open:S,onCancel:()=>{y(!1),b(""),R("")},footer:null,width:900,closable:!0,children:e.jsxs(w,{p:3,children:[e.jsx(w,{mb:2,children:e.jsx(he,{level:5,children:T||"View Document"})}),g?g.match(/\.pdf(?:[?#]|$)/i)?e.jsx("iframe",{src:g,title:T||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:g,alt:T||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(he,{children:"No document found"})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const aS=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},nS=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},vd=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}};function sS({token:t}){const[a,n]=i.useState([]),[r,o]=i.useState(""),[l,d]=i.useState(""),[c,h]=i.useState({income_head:"",name:"",invoice_no:"",date:ne().format("YYYY-MM-DD"),amount:"",description:"",doc:""}),[f,p]=i.useState(!1),[m,v]=i.useState({page:1,rowsPerPage:10}),S=(k,F)=>{v({...m,page:k,rowsPerPage:parseInt(F,10)})},y=async(k,F)=>{try{await R(Ze(k,F,t),pt(F)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{D.error("Failed to add the new item.",{duration:1e3})}},{isLoading:g,error:b,data:T,mutate:R}=q(t?[of,t,m.page,m.rowsPerPage]:null,([k,F,C,E])=>Y(`${k}?page=${C}&per_page=${E}`,F)),I=i.useMemo(()=>[{id:"1",name:"Name",selector:"name",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0},{id:"3",name:"Income Category",selector:"income_category",sortable:!0},{id:"4",name:"Invoice No",selector:"invoice_no",sortable:!0},{id:"5",name:"Date",selector:"date",sortable:!0},{id:"6",name:"Note",selector:"note",sortable:!0},{id:"7",name:"Amount",selector:"amount",sortable:!0},{id:"8",name:"File",selector:"documents",sortable:!1,render:k=>{const F=vd(t),C=k?/^https?:\/\//i.test(k)?k:nS(ut(),`uploads/school_${F}/branch/income/${k}`):null;return k?e.jsx("span",{style:{textDecoration:"underline",color:"#5080f8",cursor:"pointer"},onClick:()=>C&&window.open(C,"_blank"),children:"View"}):"Not Uploaded"}}],[t]),A=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],_=async k=>{try{await R(st(cf,k,t),ot(k)),D.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{D.error("Failed to delete the item.",{duration:1e3})}},u=async(k,F,C)=>{try{await R(ct(k,F,t)),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),await C(null)}catch{D.error("Failed to update the item.",{duration:1e3})}},x=async(k,F)=>{k.preventDefault();const C=new FormData(k.target);await u(df,C,F),M(!1)},j=async k=>{if(k.preventDefault(),!k.target.date.value)D.error("Select required dates",{duration:1e3}),k.target?.date?.focus(),d("textDanger");else{const F=new FormData(k.target);await y(lf,F),k.target.reset(),o(""),h(C=>({...C,date:ne().format("YYYY-MM-DD")}))}},M=k=>{p(k)},{data:O}=q(t?[Vc,t]:null,([k,F])=>Y(k,F)),z=i.useMemo(()=>aS(O),[O]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Add Income"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:j,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{label:"Income Head",options:z,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"income_head",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"name",type:"text",label:"Name",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:ne(),Desplay:"Date",name:"date",status:l===""?"":"error",classnme:l,onChange:()=>d("")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"amount",type:"number",label:"Amount",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.Upload,{action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${vd(t)}/branch/income`},headers:{Authorization:t},maxCount:1,onChange:k=>{if(k.file.status==="removed"&&o(""),k.file.status==="done"){const F=k.file.response?.data??k.file.response?.file??"";o(String(F??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:r?"Change":"Upload"})},r||"empty"),e.jsx("input",{type:"hidden",name:"doc",value:r||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(kt,{name:"description",label:"Description",rows:3})})}),e.jsx(s.Col,{xs:24,md:12,className:"buttonCoustom",children:e.jsx(s.Row,{justifyContent:"flex-end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Income List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:S,data:{newData:T,columns:I,action:!0,Loading:g,ActionView:A,error:b,editDesign:e.jsx(tS,{data:{handleUpdate:x,token:t}}),deleteTodoMutation:_,open:f,DrawerUpdate:M}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; } .textDanger { color: #dc2626; } .buttonCoustom { margin-top: 8px; }"})]})}const Cd={width:"100%",height:40};function rS({token:t}){const[a,n]=i.useState(null),[r,o]=i.useState(null),[l,d]=i.useState(""),[c,h]=i.useState(""),[f,p]=i.useState(""),[m,v]=i.useState({page:1,rowsPerPage:10}),S=(A,_)=>{v({...m,page:A,rowsPerPage:parseInt(_,10)})},{isLoading:y,error:g,data:b,mutate:T}=q(t&&l?[l,t,m.page,m.rowsPerPage]:null,([A,_,u,x])=>Y(`${A}page=${u}&per_page=${x}`,_)),R=i.useMemo(()=>[{id:"1",name:"Invoice No",selector:"invoice_no",sortable:!0},{id:"2",name:"Date",selector:"date",sortable:!0},{id:"3",name:"Name",selector:"name",sortable:!0},{id:"4",name:"Description",selector:"description",sortable:!0},{id:"5",name:"Income Category",selector:"income_category",sortable:!0},{id:"6",name:"Note",selector:"note",sortable:!0},{id:"7",name:"Amount",selector:"amount",sortable:!0}],[]),I=()=>{if(!a){D.error("Select required dates",{duration:1e3}),h("textDanger");return}if(!r){D.error("Select required dates",{duration:1e3}),p("textDanger");return}const A=a.format("YYYY-MM-DD"),_=r.format("YYYY-MM-DD");d(`${yf}?from_date=${A}&to_date=${_}&`),v(u=>({...u,page:1}))};return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Search Income"})}),e.jsx(w,{p:3,children:e.jsxs(s.Row,{gutter:[16,16],alignItems:"end",children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsxs(w,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"From Date"}),e.jsx(s.DatePicker,{value:a,onChange:A=>{n(A),h("")},style:Cd,allowClear:!1})]})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsxs(w,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"To Date"}),e.jsx(s.DatePicker,{value:r,onChange:A=>{o(A),p("")},style:Cd,allowClear:!1})]})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:I})})]})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Income List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:S,data:{newData:b,columns:R,action:!1,Loading:y,error:g,pageController:m}})})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}function iS({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),{isLoading:o,data:l}=q(n&&r?[`${gf}?id=${r}`,n]:null,([S,y])=>Y(S,y)),d=i.useMemo(()=>{if(Array.isArray(l))return l[0];const S=l?.data?.data??l?.data??l??{};return Array.isArray(S)?S[0]:S??{}},[l]),[c,h]=i.useState({incomehead:"",description:""}),[f,p]=i.useState(!1);i.useEffect(()=>{d&&h({incomehead:d?.income_category||d?.incomehead||"",description:d?.description||""})},[d]);const m=(S,y)=>{h(g=>({...g,[S]:y}))},v=async S=>{S.preventDefault(),p(!0);try{await a(S)}finally{p(!1)}};return o?e.jsx(w,{pt:4,pb:1,style:{width:350,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(s.Spin,{tip:"Loading..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:350},children:[e.jsx("form",{onSubmit:v,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(w,{children:[e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(G,{name:"incomehead",type:"text",label:"Income Head Name",required:!0,value:c.incomehead,onChange:S=>m("incomehead",S.target.value)})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description",required:!0,value:c.description,onChange:S=>m("description",S.target.value)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justifyContent:"flex-end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:f?"Saving...":"Submit",color:"primary",disabled:f})})})})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function oS({token:t}){const[a,n]=i.useState({incomehead:"",description:""}),[r,o]=i.useState(!1),[l,d]=i.useState(!1),[c,h]=i.useState({page:1,rowsPerPage:10}),f=(u,x)=>{h({...c,page:u,rowsPerPage:parseInt(x,10)})},p=async(u,x)=>{try{await y(Ze(u,x,t),pt(x)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{D.error("Failed to add the new item.",{duration:1e3})}},{isLoading:m,error:v,data:S,mutate:y}=q(t?[uf,t,c.page,c.rowsPerPage]:null,([u,x,j,M])=>Y(`${u}?page=${j}&per_page=${M}`,x)),g=i.useMemo(()=>[{id:"1",name:"Name",selector:"income_category",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],[]),b=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],T=async u=>{try{await y(st(hf,u,t),ot(u)),D.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{D.error("Failed to delete the item.",{duration:1e3})}},R=async(u,x)=>{try{await y(ct(u,x,t)),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"})}catch{D.error("Failed to update the item.",{duration:1e3})}},I=async u=>{u.preventDefault();const x=new FormData(u.target);await R(mf,x),_(!1)},A=async u=>{u.preventDefault(),d(!0);try{await p(pf,new FormData(u.target)),n({incomehead:"",description:""})}finally{d(!1)}},_=u=>{o(u)};return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:5,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Income Head"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:A,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"incomehead",type:"text",label:"Income Head Name",required:!0,value:a.incomehead,onChange:u=>n(x=>({...x,incomehead:u.target.value}))})})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description",required:!0,value:a.description,onChange:u=>n(x=>({...x,description:u.target.value}))})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justifyContent:"flex-end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:l?"Saving...":"Save",color:"primary",disabled:l})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,md:19,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Income Head List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:f,data:{newData:S,columns:g,action:!0,Loading:m,ActionView:b,error:v,editDesign:e.jsx(iS,{data:{handleUpdate:I,token:t}}),deleteTodoMutation:T,open:r,DrawerUpdate:_}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const lS=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},Du=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},_d=(t,a)=>{const n=`${t||""}`.trim();if(!n)return"";if(/^https?:\/\//i.test(n))return n;const r=Du(a),o=n.startsWith("/")?n.slice(1):n;return lS(ut(),`uploads/school_${r}/branch/expense/${o}`)},Ad=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a.map(n=>({value:n?.value??n?.id??"",label:n?.label??n?.name??n?.exp_category??n?.vendor_name??n?.title??""})):[]},Dd=[{label:"Cash",value:"cash"},{label:"UPI",value:"upi"},{label:"Phonepay",value:"phonepay"},{label:"Google Pay",value:"google_pay"},{label:"Net Banking",value:"net_banking"},{label:"Cheque",value:"cheque"},{label:"Demand Draft",value:"demand_draft"}];function dS({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),{isLoading:o,data:l}=q(n&&r?[`${Af}?id=${r}`,n]:null,([O,z])=>Y(O,z)),{data:d}=q(n?[Hc,n]:null,([O,z])=>Y(O,z)),{data:c}=q(n?[Kc,n]:null,([O,z])=>Y(O,z)),h=i.useMemo(()=>Ad(d),[d]),f=i.useMemo(()=>Ad(c),[c]),p=i.useMemo(()=>{if(Array.isArray(l))return l[0];const O=l?.data?.data??l?.data??l??{};return Array.isArray(O)?O[0]:O??{}},[l]),[m,v]=i.useState(!1),[S,y]=i.useState(!1),[g,b]=i.useState(""),[T,R]=i.useState(""),I=async O=>{O.preventDefault(),v(!0);try{await a(O,r)}finally{v(!1)}},[A,_]=i.useState({expense_head:"",vendor:"",name:"",invoice_no:"",date:ne(),amount:"",payment_mode:"",note:"",doc:""});i.useEffect(()=>{p&&_({expense_head:p?.exp_head_id||"",vendor:p?.fk_vendor_id||"",name:p?.name||"",invoice_no:p?.invoice_no||"",date:p?.date?ne(p.date):ne(),amount:p?.amount||"",payment_mode:p?.payment_mode||"",note:p?.note||"",doc:p?.documents||""})},[p]);const u=(O,z)=>{_(k=>({...k,[O]:z}))},x=h.find(O=>String(O.value)===String(A.expense_head))??null,j=f.find(O=>String(O.value)===String(A.vendor))??null,M=Dd.find(O=>String(O.value)===String(A.payment_mode))??null;return o?e.jsx(w,{pt:4,pb:1,style:{width:550,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(s.Spin,{tip:"Loading..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:550},children:[e.jsx("form",{onSubmit:I,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Edit Expense"})}),e.jsx(w,{p:2,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(ae,{label:"Expense Head",options:h,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"expense_head",required:!0,value:x,onChange:O=>u("expense_head",O?.value||"")})]})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{label:"Vendor",options:f,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"vendor",value:j,onChange:O=>u("vendor",O?.value||"")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"name",type:"text",label:"Name",required:!0,value:A.name,onChange:O=>u("name",O.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0,value:A.invoice_no,onChange:O=>u("invoice_no",O.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",value:A.date,Desplay:"Date",name:"date",required:!0,onChange:O=>u("date",O)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"amount",type:"number",label:"Amount",required:!0,value:A.amount,onChange:O=>u("amount",O.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{label:"Payment Mode",options:Dd,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"payment_mode",required:!0,value:M,onChange:O=>u("payment_mode",O?.value||"")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(kt,{name:"note",label:"Description",rows:3,value:A.note,onChange:O=>u("note",O.target.value)})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.Upload,{action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${Du(n)}/branch/expense`},headers:{Authorization:n},maxCount:1,onChange:O=>{if(O.file.status==="removed"&&u("doc",""),O.file.status==="done"){const z=O.file.response?.data??O.file.response?.file??"";u("doc",String(z??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:A.doc?"Change":"Upload"})}),A.doc&&e.jsx("a",{href:_d(A.doc,n),target:"_blank",rel:"noreferrer",style:{display:"block",marginTop:8,fontSize:12,color:"#1677ff",textDecoration:"underline"},onClick:O=>{O.preventDefault(),b(_d(A.doc,n)),R(A.doc||"Document"),y(!0)},children:"View existing document"}),e.jsx("input",{type:"hidden",name:"doc",value:A.doc||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"center",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:m?"Saving...":"Submit",color:"primary",disabled:m})})})})})]})})]})}),e.jsx(s.Modal,{open:S,onCancel:()=>{y(!1),b(""),R("")},footer:null,width:900,closable:!0,children:e.jsxs(w,{p:3,children:[e.jsx(w,{mb:2,children:e.jsx(he,{level:5,children:T||"View Document"})}),g?g.match(/\.pdf(?:[?#]|$)/i)?e.jsx("iframe",{src:g,title:T||"Document Preview",style:{width:"100%",height:"70vh",border:"none"}}):e.jsx("img",{src:g,alt:T||"Document Preview",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(he,{children:"No document found"})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}const Td=t=>{const a=t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},cS=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},Tu=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},uS=(t,a)=>{const n=`${t||""}`.trim();if(!n)return"";if(/^https?:\/\//i.test(n))return n;const r=Tu(a),o=n.startsWith("/")?n.slice(1):n;return cS(ut(),`uploads/school_${r}/branch/expense/${o}`)},pS=[{label:"Cash",value:"cash"},{label:"UPI",value:"upi"},{label:"Phonepay",value:"phonepay"},{label:"Google Pay",value:"google_pay"},{label:"Net Banking",value:"net_banking"},{label:"Cheque",value:"cheque"},{label:"Demand Draft",value:"demand_draft"}];function mS({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(""),[l,d]=i.useState({expense_head:"",vendor:"",name:"",invoice_no:"",date:ne(),amount:"",payment_mode:"",note:"",doc:""}),[c,h]=i.useState(!1),[f,p]=i.useState(!1),[m,v]=i.useState({page:1,rowsPerPage:10}),S=(C,E)=>{v({...m,page:C,rowsPerPage:parseInt(E,10)})},y=async(C,E)=>{try{await Ze(C,E,t),R(),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{D.error("Failed to add the new item.",{duration:1e3})}},{isLoading:g,error:b,data:T,mutate:R}=q(t?[xf,t,m.page,m.rowsPerPage]:null,([C,E,P,U])=>Y(`${C}?page=${P}&per_page=${U}`,E)),I=i.useMemo(()=>[{title:"Sl No",dataIndex:"__serialNumber",key:"sl",sorter:(C,E)=>(C.__serialNumber??0)-(E.__serialNumber??0)},{title:"Name",dataIndex:"name",key:"name",sorter:(C,E)=>String(C.name??"").localeCompare(String(E.name??""))},{title:"Description",dataIndex:"description",key:"description"},{title:"Expense Category",dataIndex:"exp_category",key:"exp_category"},{title:"Invoice No",dataIndex:"invoice_no",key:"invoice_no"},{title:"Note",dataIndex:"note",key:"note"},{title:"Amount",dataIndex:"amount",key:"amount"},{title:"File",dataIndex:"documents",key:"documents",render:(C,E)=>C?e.jsx("span",{style:{textDecoration:"underline",color:"#5080f8",cursor:"pointer"},onClick:()=>window.open(uS(C,t),"_blank"),children:"View"}):"Not Uploaded"}],[t]),A=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],_=async C=>{try{await st(Sf,C,t),R(),D.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{D.error("Failed to delete the item.",{duration:1e3})}},u=async(C,E,P)=>{try{await R(ct(C,E,t)),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"}),await P(null)}catch{D.error("Failed to update the item.",{duration:1e3})}},x=async(C,E)=>{C.preventDefault();const P=new FormData(C.target);await u(jf,P,E),M(!1)},j=async C=>{if(C.preventDefault(),!C.target.date.value)D.error("Select required dates",{duration:1e3}),C.target?.date?.focus(),o("textDanger");else{const E=new FormData(C.target);p(!0);try{await y(bf,E)}finally{p(!1)}C.target.reset(),d(P=>({...P,date:ne()})),n("")}},M=C=>{h(C)},{data:O}=q(t?[Hc,t]:null,([C,E])=>Y(C,E)),{data:z}=q(t?[Kc,t]:null,([C,E])=>Y(C,E)),k=i.useMemo(()=>Td(O),[O]),F=i.useMemo(()=>Td(z),[z]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Add Expense"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:j,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{label:"Expense Head",options:k,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"expense_head",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{label:"Vendor",options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"vendor"})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"name",type:"text",label:"Name",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"invoice_no",type:"text",label:"Invoice Number",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD",defaultValue:ne(),Desplay:"Date",name:"date",status:r===""?"":"error",classnme:r,onChange:()=>o("")})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(G,{name:"amount",type:"number",label:"Amount",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(ae,{label:"Payment Mode",options:pS,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,name:"payment_mode",required:!0})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx(w,{children:e.jsx(kt,{name:"note",label:"Description",rows:3})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsxs(w,{children:[e.jsx(s.Upload,{action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${Tu(t)}/branch/expense`},headers:{Authorization:t},maxCount:1,onChange:C=>{if(C.file.status==="removed"&&n(""),C.file.status==="done"){const E=C.file.response?.data??C.file.response?.file??"";n(String(E??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})}),e.jsx("input",{type:"hidden",name:"doc",value:a||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,md:12,className:"buttonCoustom",children:e.jsx(s.Row,{justifyContent:"flex-end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:f?"Saving...":"Save",color:"primary",disabled:f})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Expense List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:S,data:{newData:T,columns:I,columnstype:"antd",action:!0,Loading:g,ActionView:A,error:b,editDesign:e.jsx(dS,{data:{handleUpdate:x,token:t}}),deleteTodoMutation:_,open:c,DrawerUpdate:M}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; } .textDanger { color: #dc2626; } .buttonCoustom { margin-top: 8px; }"})]})}const hS=[{label:"Paid to",key:"vendor_name"},{label:"Address",key:"address"},{label:"GST Number",key:"gst"},{label:"Bussiness Name",key:"business_name"}],fS=[{label:"Date",key:"date"},{label:"Voucher Number",key:"voucher_number"},{label:"Payment Mode",key:"payment_mode"}];function gS({onClick:t}){return e.jsx(s.Button,{type:"primary",icon:e.jsx(re.PrinterOutlined,{}),onClick:t,children:"Print"})}function yS({data:t}){const a=i.useMemo(()=>{if(!t)return null;if(Array.isArray(t))return t[0];const n=t?.data?.data??t?.data??t??{};return Array.isArray(n)?n[0]:n},[t]);return e.jsx("div",{style:{width:"100%"},children:e.jsxs("div",{style:{border:"1px solid ",margin:"5px"},children:[e.jsx("div",{style:{display:"flex",alignItems:"center",flexDirection:"column",justifyContent:"center",borderBottom:"1px solid black",fontWeight:"bold",padding:"10px",backgroundColor:"#dfdfdf",fontSize:"18px"},children:"Expense Voucher"}),e.jsx("div",{style:{width:"100%",display:"flex",justifyContent:"center",borderBottom:"1px solid black"},children:e.jsx("div",{style:{width:"90%"},children:e.jsx(da,{})})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(s.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(s.Col,{xs:12,style:{borderRight:"1px solid black",display:"flex",alignItems:"flex-start",flexDirection:"column"},children:hS.map((n,r)=>e.jsxs("div",{style:{marginBottom:4},children:[e.jsx("span",{style:{fontWeight:"bold"},children:n.label}),":"," ",a?.[n.key]]},`vendor${r}`))}),e.jsx(s.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:fS.map((n,r)=>e.jsxs("div",{style:{marginBottom:4},children:[e.jsx("span",{style:{fontWeight:"bold"},children:n.label}),":"," ",a?.[n.key]]},`payment${r}`))})]})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(s.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(s.Col,{xs:12,style:{borderRight:"1px solid black",display:"flex",alignItems:"flex-start",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:"Description"}),":"," ",a?.note]})}),e.jsx(s.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsx("div",{children:e.jsx("span",{style:{fontWeight:"bold"},children:"Amount"})})})]})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(s.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(s.Col,{xs:12,style:{borderRight:"1px solid black",display:"flex",alignItems:"flex-start",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:a?.name})," "]})}),e.jsx(s.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsx("div",{children:a?.amount})})]})}),e.jsx("div",{style:{width:"100%",borderBottom:"1px solid black"},children:e.jsxs(s.Row,{style:{paddingLeft:4,paddingRight:4},children:[e.jsx(s.Col,{xs:12,style:{paddingRight:4,borderRight:"1px solid black",display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:"Total"})," "]})}),e.jsx(s.Col,{xs:12,style:{display:"flex",alignItems:"flex-end",flexDirection:"column"},children:e.jsxs("div",{children:[e.jsx("span",{style:{fontWeight:"bold"},children:a?.amount})," "]})})]})}),e.jsx("div",{style:{width:"100%",height:"75px",display:"flex",alignItems:"flex-end"},children:e.jsxs(s.Row,{style:{paddingLeft:4,paddingRight:4},justify:"flex-end",align:"flex-end",children:[e.jsx(s.Col,{xs:4,style:{borderTop:"1px solid gray",display:"flex",justifyContent:"center"},children:"Approved by"}),e.jsx(s.Col,{xs:1}),e.jsx(s.Col,{xs:4,style:{borderTop:"1px solid gray",display:"flex",justifyContent:"flex-end"},children:"Signature"})]})})]})})}function xS({token:t}){const a=i.useMemo(()=>typeof window>"u"?null:new URLSearchParams(window.location.search).get("id")??null,[]),n=i.useRef(null),r=Ka.useReactToPrint({content:()=>n.current}),{isLoading:o,data:l,error:d}=q(t&&a?[Df,a,t]:null,([c,h,f])=>Y(`${c}?id=${h}`,f));return e.jsx(w,{pt:4,pb:1,children:e.jsx(s.Row,{gutter:[16,16],children:e.jsx(s.Col,{xs:24,children:e.jsx("div",{style:{width:"75%"},className:"container",children:e.jsx("div",{className:"row",children:e.jsx("div",{className:"col-lg-12",children:e.jsxs("div",{className:"card",ref:n,children:[e.jsx("div",{style:{width:"100%",display:"flex"},children:o?e.jsx("div",{style:{padding:40,textAlign:"center"},children:e.jsx(s.Spin,{tip:"Loading..."})}):d?e.jsx("div",{style:{padding:40,textAlign:"center"},children:"Error loading data"}):l?.Status==="Success"?e.jsx(yS,{data:l}):e.jsx("div",{style:{padding:40,textAlign:"center"},children:"No Data Found"})}),e.jsxs("div",{className:"d-print-none mt-4",children:[e.jsx("div",{className:"float-end",children:e.jsx(gS,{onClick:r})}),e.jsx("div",{className:"float-end",style:{marginRight:"2%"},children:e.jsx(s.Button,{type:"text",onClick:()=>window.history.back(),children:"Back"})})]})]})})})})})})})}const kd={width:"100%",height:40};function bS({token:t}){const[a,n]=i.useState(null),[r,o]=i.useState(null),[l,d]=i.useState(""),[c,h]=i.useState(""),[f,p]=i.useState(""),[m,v]=i.useState({page:1,rowsPerPage:10}),S=(A,_)=>{v({...m,page:A,rowsPerPage:parseInt(_,10)})},{isLoading:y,error:g,data:b,mutate:T}=q(t&&l?[l,t,m.page,m.rowsPerPage]:null,([A,_,u,x])=>Y(`${A}page=${u}&per_page=${x}`,_)),R=i.useMemo(()=>[{id:"1",name:"Invoice No",selector:"invoice_no",sortable:!0},{id:"2",name:"Date",selector:"date",sortable:!0},{id:"3",name:"Name",selector:"name",sortable:!0},{id:"4",name:"Description",selector:"description",sortable:!0},{id:"5",name:"Expense Category",selector:"exp_category",sortable:!0},{id:"6",name:"Note",selector:"note",sortable:!0},{id:"7",name:"Amount",selector:"amount",sortable:!0}],[]),I=()=>{if(!a){D.error("Select required dates",{duration:1e3}),h("textDanger");return}if(!r){D.error("Select required dates",{duration:1e3}),p("textDanger");return}const A=a.format("YYYY-MM-DD"),_=r.format("YYYY-MM-DD");d(`${kf}?from_date=${A}&to_date=${_}&`),v(u=>({...u,page:1}))};return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Search Expense"})}),e.jsx(w,{p:3,children:e.jsxs(s.Row,{gutter:[16,16],alignItems:"end",children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsxs(w,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"From Date"}),e.jsx(s.DatePicker,{value:a,onChange:A=>{n(A),h("")},style:kd,allowClear:!1})]})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsxs(w,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"To Date"}),e.jsx(s.DatePicker,{value:r,onChange:A=>{o(A),p("")},style:kd,allowClear:!1})]})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:I})})]})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Expense List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:S,data:{newData:b,columns:R,action:!1,Loading:y,error:g,pageController:m}})})]})})]}),e.jsx("style",{children:".textDanger { color: #dc2626; }"})]})}function jS({data:t}){const{handleUpdate:a,token:n}=t||{},r=i.useContext(ta),{isLoading:o,data:l}=q(n&&r?[`${Tf}?id=${r}`,n]:null,([S,y])=>Y(S,y)),d=i.useMemo(()=>{if(Array.isArray(l))return l[0];const S=l?.data?.data??l?.data??l??{};return Array.isArray(S)?S[0]:S??{}},[l]),[c,h]=i.useState({expensehead:"",description:""}),[f,p]=i.useState(!1);i.useEffect(()=>{d&&h({expensehead:d?.exp_category||d?.expensehead||"",description:d?.description||""})},[d]);const m=(S,y)=>{h(g=>({...g,[S]:y}))},v=async S=>{S.preventDefault(),p(!0);try{await a(S)}finally{p(!1)}};return o?e.jsx(w,{pt:4,pb:1,style:{width:350,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(s.Spin,{tip:"Loading..."})}):e.jsxs(w,{pt:4,pb:1,style:{width:350},children:[e.jsx("form",{onSubmit:v,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(w,{children:[e.jsx(G,{type:"text",value:r,name:"id",required:!0,className:"noDisplay",onChange:()=>{}}),e.jsx(G,{name:"expensehead",type:"text",label:"Expense Head Name",required:!0,value:c.expensehead,onChange:S=>m("expensehead",S.target.value)})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description",required:!0,value:c.description,onChange:S=>m("description",S.target.value)})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justifyContent:"flex-end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:f?"Saving...":"Submit",color:"primary",disabled:f})})})})})]})}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function SS({token:t}){const[a,n]=i.useState({expensehead:"",description:""}),[r,o]=i.useState(!1),[l,d]=i.useState(!1),[c,h]=i.useState({page:1,rowsPerPage:10}),f=(u,x)=>{h({...c,page:u,rowsPerPage:parseInt(x,10)})},p=async(u,x)=>{try{await y(Ze(u,x,t),pt(x)),D.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{D.error("Failed to add the new item.",{duration:1e3})}},{isLoading:m,error:v,data:S,mutate:y}=q(t?[wf,t,c.page,c.rowsPerPage]:null,([u,x,j,M])=>Y(`${u}?page=${j}&per_page=${M}`,x)),g=i.useMemo(()=>[{id:"1",name:"Name",selector:"exp_category",sortable:!0},{id:"2",name:"Description",selector:"description",sortable:!0}],[]),b=[{key:"Edit",status:!0},{key:"Delete",status:!0},{key:"View",status:!1}],T=async u=>{try{await y(st(_f,u,t),ot(u)),D.success("Success! Deleted item.",{duration:1e3,icon:"🗑️"})}catch{D.error("Failed to delete the item.",{duration:1e3})}},R=async(u,x)=>{try{await y(ct(u,x,t)),D.success("Success! Updated item.",{duration:1e3,icon:"🚀"})}catch{D.error("Failed to update the item.",{duration:1e3})}},I=async u=>{u.preventDefault();const x=new FormData(u.target);await R(Cf,x),_(!1)},A=async u=>{u.preventDefault(),d(!0);try{await p(vf,new FormData(u.target)),n({expensehead:"",description:""})}finally{d(!1)}},_=u=>{o(u)};return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:5,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Expense Head"})}),e.jsx(w,{p:3,children:e.jsx("form",{onSubmit:A,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"expensehead",type:"text",label:"Expense Head Name",required:!0,value:a.expensehead,onChange:u=>n(x=>({...x,expensehead:u.target.value}))})})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(G,{name:"description",type:"text",label:"Description",required:!0,value:a.description,onChange:u=>n(x=>({...x,description:u.target.value}))})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justifyContent:"flex-end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:l?"Saving...":"Save",color:"primary",disabled:l})})})})})]})})})]})}),e.jsx(s.Col,{xs:24,md:19,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Expense Head List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:f,data:{newData:S,columns:g,action:!0,Loading:m,ActionView:b,error:v,editDesign:e.jsx(jS,{data:{handleUpdate:I,token:t}}),deleteTodoMutation:T,open:r,DrawerUpdate:_}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function wS({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(""),[l,d]=i.useState(""),[c,h]=i.useState(0),[f,p]=i.useState(""),[m,v]=i.useState({page:1,rowsPerPage:10}),S=(M,O)=>{v({...m,page:M,rowsPerPage:parseInt(O,10)})},{isLoading:y,error:g,data:b,mutate:T}=q(t&&f?[f,t,m.page,m.rowsPerPage]:null,([M,O,z,k])=>Y(`${M}page=${z}&per_page=${k}`,O)),{data:R}=q(t?[oa,t]:null,([M,O])=>Y(M,O)),{data:I}=q(t&&a?[`${la}?class_id=${a}`,t]:null,([M,O])=>Y(M,O)),A=i.useMemo(()=>R?Array.isArray(R)?R:Array.isArray(R?.data)?R.data:[]:[],[R]),_=i.useMemo(()=>I?Array.isArray(I)?I:Array.isArray(I?.data)?I.data:[]:[],[I]),u=i.useMemo(()=>[{id:"1",name:"First Name",selector:"firstname",sortable:!0},{id:"2",name:"Last Name",selector:"lastname",sortable:!0},{id:"3",name:"Class",selector:"class",sortable:!0},{id:"4",name:"Section",selector:"section",sortable:!0},{id:"5",name:"ID",selector:"username",sortable:!0},{id:"6",name:"Password",selector:"password",sortable:!0}],[]),x=M=>{n(M?.value||""),o(""),h(O=>O+1)},j=M=>{if(M.preventDefault(),!a){D.error("Please select class",{duration:1e3});return}if(!r){D.error("Please select section",{duration:1e3});return}const O=`${Rf}?class_id=${a}&section_id=${r}&keyword=${l||""}&`;p(O),v(z=>({...z,page:1}))};return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Student Login Credential"})}),e.jsx(w,{p:3,children:e.jsxs(s.Row,{gutter:[16,16],align:"bottom",children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{label:"Class",options:A,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:A.find(M=>String(M.value)===String(a))??null,onChange:x})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{label:"Section",options:_,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:_.find(M=>String(M.value)===String(r))??null,onChange:M=>o(M?.value||"")})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(G,{name:"keyword",type:"text",label:"Search By Keyword",value:l,onChange:M=>d(M.target.value)})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(de,{type:"button",value:"Search",color:"primary",onClick:j})})]})})]})}),f&&e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:S,data:{newData:b,columns:u,action:!1,Loading:y,error:g,pageController:m}})})]})})]}),e.jsx("style",{children:".noDisplay { display: none; }"})]})}function vS({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(""),[l,d]=i.useState(""),[c,h]=i.useState(0),[f,p]=i.useState(Gc),[m,v]=i.useState(!1),[S,y]=i.useState(null);console.log("Selected Student ID:",m);const[g,b]=i.useState({page:1,rowsPerPage:10}),T=(E,P)=>{b({...g,page:E,rowsPerPage:parseInt(P,10)})},{isLoading:R,error:I,data:A,mutate:_}=q(t&&f?[f,t,g.page,g.rowsPerPage]:null,([E,P,U,H])=>Y(`${E}page=${U}&per_page=${H}`,P)),{data:u}=q(t?[oa,t]:null,([E,P])=>Y(E,P)),{data:x}=q(t&&a?[`${la}?class_id=${a}`,t]:null,([E,P])=>Y(E,P)),j=i.useMemo(()=>u?Array.isArray(u)?u:Array.isArray(u?.data)?u.data:[]:[],[u]),M=i.useMemo(()=>x?Array.isArray(x)?x:Array.isArray(x?.data)?x.data:[]:[],[x]),O=i.useMemo(()=>[{id:"1",name:"EC No",selector:"ec_no",sortable:!0},{id:"2",name:"Roll NO",selector:"roll_no",sortable:!0},{id:"3",name:"Admission Number",selector:"admission_no",sortable:!0},{id:"4",name:"First Name",selector:"firstname",sortable:!0},{id:"5",name:"Last Name",selector:"lastname",sortable:!0},{id:"6",name:"Class",selector:"class",sortable:!0},{id:"7",name:"Section",selector:"section",sortable:!0},{id:"8",name:"Father Name",selector:"father_name",sortable:!0},{id:"9",name:"Medicine",selector:"Medical",sortable:!1,render:(E,P)=>e.jsx(s.Button,{type:"primary",size:"small",onClick:()=>{y(P.id),v(!0)},children:"Medical"})}],[]),z=E=>{n(E?.value||""),o(""),h(P=>P+1)},k=E=>{if(E.preventDefault(),!a||!r){D.error("Please select class and section",{duration:1e3});return}const P=`${Qc}?cID=${a}&sID=${r}&page=${g.page}&per_page=${g.rowsPerPage}&`;p(P),b(U=>({...U,page:1}))},F=E=>{E.preventDefault();const P=E.target.searchField?.value||"";d(P);const U=`${Jc}?key=${P}&page=${g.page}&per_page=${g.rowsPerPage}&`;p(U),b(H=>({...H,page:1}))},C=async E=>{E.preventDefault();const P=new FormData(E.target),U=If;try{await _(addData(U,P,t)),D.success("Medicine added successfully",{duration:1e3}),E.target.reset()}catch{D.error("Failed to add medicine",{duration:1e3})}};return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Medical Report"})}),e.jsx(w,{p:3,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:k,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(ae,{label:"Class",options:j,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:j.find(E=>String(E.value)===String(a))??null,onChange:z})})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(ae,{label:"Section",options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:M.find(E=>String(E.value)===String(r))??null,onChange:E=>o(E?.value||"")})})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:F,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:16,children:e.jsx(G,{name:"searchField",type:"text",label:"Search By Keyword",value:l,onChange:E=>d(E.target.value)})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(de,{type:"submit",value:"Submit",color:"primary"})})]})})})]})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:T,data:{newData:A,columns:O,action:!1,Loading:R,error:I,pageController:g}})})]})})]}),e.jsx(s.Drawer,{title:"Medical Report",placement:"right",width:600,open:m,footer:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(de,{type:"button",value:"Close",color:"default"})})}),children:e.jsx(CS,{studentId:S,token:t,onAddMedicine:C})}),e.jsx("style",{children:".noDisplay { display: none; } .buttonCoustom { margin-top: 8px; }"})]})}function CS({studentId:t,token:a,onAddMedicine:n}){const{data:r}=q(a&&t?[`${Xc}?id=${t}`,a]:null,([h,f])=>Y(h,f)),{data:o}=q(a&&t?[`${Pf}?student_id=${t}`,a]:null,([h,f])=>Y(h,f)),l=r?.studentBasicDetails?.[0];let d=[];Array.isArray(o?.data)?d=o.data:Array.isArray(o)&&(d=o);const c=[{title:"Medicine",dataIndex:"medicine",key:"medicine"},{title:"Notes",dataIndex:"notes",key:"notes"},{title:"Date",dataIndex:"date_time",key:"date_time"}];return e.jsxs(w,{children:[l&&e.jsxs(w,{mb:3,children:[e.jsxs(he,{level:4,children:["Name: ",l?.firstname," ",l?.lastname]}),e.jsxs("div",{style:{fontSize:15},children:["Class: ",l?.class," (",l?.section,")"]}),e.jsxs("div",{style:{fontSize:15},children:["Admission No: ",l?.admission_no]})]}),e.jsx(he,{level:5,style:{marginBottom:8},children:"Add Medicine"}),e.jsx("form",{onSubmit:n,style:{marginBottom:24},children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(w,{children:[e.jsx(G,{name:"medicine",type:"text",label:"Medicine Name",required:!0}),e.jsx("input",{name:"student_id",type:"hidden",value:t||"",readOnly:!0})]})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(kt,{name:"notes",label:"Note",rows:3})})}),e.jsx(s.Col,{xs:24,children:e.jsx(w,{children:e.jsx(Ge,{format:"YYYY-MM-DD HH:mm",Desplay:"Date",name:"date_time",defaultValue:ne()})})}),e.jsx(s.Col,{xs:24,children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Add",color:"primary"})})})})})]})}),e.jsx(he,{level:5,style:{marginBottom:8},children:"Previous Medicine"}),e.jsx(s.Table,{size:"small",dataSource:d,pagination:!1,columns:c})]})}const{Group:Rd}=s.Checkbox;function _S({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(""),[l,d]=i.useState(""),[c,h]=i.useState(0),[f,p]=i.useState(Gc),[m,v]=i.useState(!1),[S,y]=i.useState(null),[g,b]=i.useState({page:1,rowsPerPage:10}),T=(U,H)=>{b({...g,page:U,rowsPerPage:parseInt(H,10)})},{isLoading:R,error:I,data:A,mutate:_}=q(t&&f?[f,t,g.page,g.rowsPerPage]:null,([U,H,W,L])=>Y(`${U}page=${W}&per_page=${L}`,H)),{data:u}=q(t?[oa,t]:null,([U,H])=>Y(U,H)),{data:x}=q(t&&a?[`${la}?class_id=${a}`,t]:null,([U,H])=>Y(U,H)),j=i.useMemo(()=>u?Array.isArray(u)?u:Array.isArray(u?.data)?u.data:[]:[],[u]),M=i.useMemo(()=>x?Array.isArray(x)?x:Array.isArray(x?.data)?x.data:[]:[],[x]),O=i.useMemo(()=>[{id:"1",name:"EC No",selector:"ec_no",sortable:!0},{id:"2",name:"Roll NO",selector:"roll_no",sortable:!0},{id:"3",name:"Admission Number",selector:"admission_no",sortable:!0},{id:"4",name:"First Name",selector:"firstname",sortable:!0},{id:"5",name:"Last Name",selector:"lastname",sortable:!0},{id:"6",name:"Class",selector:"class",sortable:!0},{id:"7",name:"Section",selector:"section",sortable:!0},{id:"8",name:"Father Name",selector:"father_name",sortable:!0},{id:"9",name:"Assign Subject",selector:"Assign",sortable:!1,render:(U,H)=>e.jsx(s.Button,{type:"primary",size:"small",onClick:()=>{y(H.id),v(!0)},children:"Assign"})}],[]),z=U=>{n(U?.value||""),o(""),h(H=>H+1)},k=U=>{if(U.preventDefault(),!a||!r){D.error("Please select class and section",{duration:1e3});return}const H=`${Qc}?cID=${a}&sID=${r}&page=${g.page}&per_page=${g.rowsPerPage}&`;p(H),b(W=>({...W,page:1}))},F=U=>{U.preventDefault();const H=U.target.searchField?.value||"";d(H);const W=`${Jc}?key=${H}&page=${g.page}&per_page=${g.rowsPerPage}&`;p(W),b(L=>({...L,page:1}))},C=async U=>{U.preventDefault();const H=new FormData(U.target),W=Ef;try{await _(ct(W,H,t)),D.success("Subject updated successfully",{duration:1e3}),U.target.reset(),v(!1)}catch{D.error("Failed to update subject",{duration:1e3})}},E=async U=>{U.preventDefault();const H=new FormData(U.target),W=Hi;try{await _(ct(W,H,t)),D.success("Extra curricular updated successfully",{duration:1e3}),U.target.reset(),v(!1)}catch{D.error("Failed to update extra curricular",{duration:1e3})}},P=U=>{v(U)};return e.jsxs(w,{pt:5,pb:1,children:[e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Assign Student Subject"})}),e.jsx(w,{p:3,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:k,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(ae,{label:"Class",options:j,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:j.find(U=>String(U.value)===String(a))??null,onChange:z})})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(w,{children:e.jsx(ae,{label:"Section",options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:M.find(U=>String(U.value)===String(r))??null,onChange:U=>o(U?.value||"")})})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Col,{xs:24,md:12,children:e.jsx("form",{onSubmit:F,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:16,children:e.jsx(G,{name:"searchField",type:"text",label:"Search By Keyword",value:l,onChange:U=>d(U.target.value)})}),e.jsx(s.Col,{xs:24,md:8,children:e.jsx(de,{type:"submit",value:"Submit",color:"primary"})})]})})})]})})]})}),e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Student List"})}),e.jsx(w,{pt:3,children:e.jsx(Ke,{parentCallback:T,data:{newData:A,columns:O,action:!1,Loading:R,error:I,pageController:g}})})]})})]}),m&&e.jsx(AS,{open:m,DrawerUpdate:P,studentId:S,token:t,onUpdate:C,onUpdate2:E}),e.jsx("style",{children:".noDisplay { display: none; } .buttonCoustom { margin-top: 8px; }"})]})}function AS({open:t,DrawerUpdate:a,studentId:n,token:r,onUpdate:o,onUpdate2:l}){const[d,c]=i.useState([]),[h,f]=i.useState([]),[p,m]=i.useState([]),[v,S]=i.useState(!1),[y,g]=i.useState([]),[b,T]=i.useState([]),[R,I]=i.useState([]),{trigger:A}=it(Xc,async(O,{arg:z})=>await Y(`${O}?id=${z.id}`,r)),{trigger:_}=it(Hi,async()=>await Y(`${Hi}?student_id=${n}`,r)),{trigger:u}=it(Mf,async(O,{arg:z})=>await Y(`${O}?id=${z.id}`,r));i.useEffect(()=>{(async()=>{if(!n)return;S(!0);const z=await A({id:n});z?.studentBasicDetails?.[0];const k=await _(),F=await u({id:n});c(z),m(F),z&&f(k),S(!1)})()},[n,A,_,u]);const x=O=>{T(O);const z=d?.data?.filter(k=>!O.includes(k.value));g(JSON.stringify(z))},j=O=>{I(O)},M=d?.studentBasicDetails?.[0];return!v&&n?e.jsx("div",{style:{position:"fixed",top:0,right:0,width:400,height:"100vh",background:"#fff",boxShadow:"-2px 0 8px rgba(0,0,0,0.15)",zIndex:9999,overflow:"auto"},children:e.jsxs(w,{p:3,children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Edit Assigned Subjects"})}),e.jsxs(w,{p:3,children:[M&&e.jsxs("div",{style:{marginBottom:16},children:[e.jsxs(he,{level:4,children:["Name: ",M?.firstname," ",M?.lastname]}),e.jsxs("div",{style:{fontSize:15},children:["Class: ",M?.class," (",M?.section,")"]}),e.jsxs("div",{style:{fontSize:15},children:["Admission No: ",M?.admission_no]})]}),e.jsx("form",{onSubmit:o,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsxs(s.Col,{xs:24,children:[e.jsx(he,{level:5,children:"Subjects"}),e.jsx(Rd,{options:d?.data?.map(O=>({label:O.label||O.name,value:O.value})),value:b,onChange:x,style:{display:"grid",gap:8}})]}),e.jsxs(s.Col,{xs:24,children:[e.jsx("input",{name:"student_id",type:"hidden",value:n||"",readOnly:!0}),e.jsx("input",{name:"subjectUncheck[]",type:"hidden",value:y,readOnly:!0})]}),d?.data?.length===0?e.jsx(s.Col,{xs:24,children:e.jsx("span",{style:{cursor:"pointer",fontSize:15,color:"blue",textDecoration:"underline"},children:"Please Assign Subject"})}):e.jsx(s.Col,{xs:24,className:"buttonCoustom",children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Update",color:"primary"})})})})})]})}),h?.data?.length>0&&e.jsx("form",{onSubmit:l,style:{marginTop:24},children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsxs(s.Col,{xs:24,children:[e.jsx(he,{level:5,children:"Extra Curricular Activities"}),e.jsx(Rd,{options:h?.data?.map(O=>({label:O.label||O.name,value:O.value})),value:R,onChange:j,style:{display:"grid",gap:8}})]}),e.jsx(s.Col,{xs:24,children:e.jsx("input",{name:"student_id",type:"hidden",value:n||"",readOnly:!0})}),e.jsx(s.Col,{xs:24,className:"buttonCoustom",children:e.jsx(s.Row,{justify:"end",children:e.jsx(s.Col,{children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Update",color:"primary"})})})})})]})})]})]})}):e.jsx("div",{style:{position:"fixed",top:0,right:0,width:400,height:"100vh",background:"#fff",boxShadow:"-2px 0 8px rgba(0,0,0,0.15)",zIndex:9999,overflow:"auto"},children:e.jsx(w,{p:3,children:e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(s.Spin,{size:"large"})})})})}function DS({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(""),[l,d]=i.useState(0),[c,h]=i.useState(null),[f,p]=i.useState(!1),{data:m}=q(t?[oa,t]:null,([u,x])=>Y(u,x)),{data:v}=q(t&&a?[`${la}?class_id=${a}`,t]:null,([u,x])=>Y(u,x)),{data:S}=q(t?[$f,t]:null,([u,x])=>Y(`${u}?page=1&per_page=10`,x)),y=i.useMemo(()=>m?Array.isArray(m)?m:Array.isArray(m?.data)?m.data:[]:[],[m]),g=i.useMemo(()=>v?Array.isArray(v)?v:Array.isArray(v?.data)?v.data:[]:[],[v]),b=i.useMemo(()=>[{id:"1",name:"Category Id",selector:"id",sortable:!0},{id:"2",name:"Category",selector:"category",sortable:!0}],[]),T=u=>{n(u?.value||""),o(""),d(x=>x+1)},R=u=>{o(u?.value||"")},I=()=>{const u=document.createElement("a");u.href="/sample_student.xlsx",u.download="sample_student.xlsx",u.click()},A=u=>{u.fileList.length>0?h(u.fileList[0].originFileObj):h(null)},_=async u=>{if(u.preventDefault(),!a){D.error("Please select class",{duration:1e3});return}if(!r){D.error("Please select section",{duration:1e3});return}if(!c){D.error("Please select file",{duration:1e3});return}p(!0);const x=new FormData;x.append("file",c),x.append("class_id",a),x.append("section_id",r);try{const j=await bn(Of,x,t);j?.Status==="Failed"?D.error(j?.msg||"Upload failed",{duration:2e3}):(D.success(j?.msg||"Upload successful",{duration:2e3}),h(null),n(""),o(""))}catch(j){D.error(j?.response?.data?.msg||"Upload failed",{duration:2e3})}finally{p(!1)}};return e.jsx(w,{pt:5,pb:1,children:e.jsx(s.Row,{gutter:[16,16],children:e.jsx(s.Col,{xs:24,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,style:{background:"linear-gradient(90deg, #5080f8 0%, #3b5de7 100%)",borderRadius:8,color:"#fff",display:"inline-block"},children:e.jsx(he,{level:5,style:{margin:0,color:"#fff"},children:"Bulk Upload Students"})}),e.jsxs(w,{p:3,children:[e.jsx(s.Row,{justify:"end",style:{marginBottom:16},children:e.jsx(s.Col,{children:e.jsx(s.Button,{type:"primary",icon:e.jsx(re.DownloadOutlined,{}),onClick:I,style:{background:"#368fed"},children:"Download Sample Import File"})})}),e.jsxs("div",{style:{marginBottom:16,padding:16,background:"#f5f5f5",borderRadius:8},children:[e.jsx(he,{level:5,style:{marginBottom:8},children:"Information"}),e.jsx("div",{children:"1. Your Excel data should be in the format below. The first line of your Excel file should be the column headers as in the table example. Also make sure that your file is UTF-8 to avoid unnecessary encoding problems."}),e.jsx("div",{children:"2. If the column you are trying to import is date make sure that is formatted in format Y-m-d (2024-01-10)."}),e.jsx("div",{children:"3. Duplicate Admission Number, ec_no, aadhaar_number, (unique) rows will not be imported."}),e.jsx("div",{children:"4. For student Gender use Male, Female value."}),e.jsx("div",{children:"5. For student Blood Group use A+, A-, B+, B-, O+, O-, AB+, AB- value."}),e.jsx("div",{children:"6. * Imported field are admission_no, ec_no, firstname, lastname, roll_no, guardian_phone, aadhaar_number, category_id"})]}),e.jsxs("div",{style:{marginBottom:24},children:[e.jsx(he,{level:5,style:{marginBottom:8},children:"Category Table"}),e.jsx(Ke,{parentCallback:()=>{},data:{newData:S,columns:b,action:!1,Loading:!1,error:null,pageController:{page:1,rowsPerPage:10}}})]}),e.jsx("form",{onSubmit:_,children:e.jsxs(s.Row,{gutter:[16,16],children:[e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{label:"Class",options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0,value:y.find(u=>String(u.value)===String(a))??null,onChange:T})})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsx(w,{children:e.jsx(ae,{label:"Section",options:g,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,required:!0,value:g.find(u=>String(u.value)===String(r))??null,onChange:R},`section-${l}`)})}),e.jsx(s.Col,{xs:24,md:6,children:e.jsxs(w,{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"File"}),e.jsx(s.Upload,{beforeUpload:()=>!1,onChange:A,maxCount:1,accept:".xlsx,.xls",children:e.jsx(s.Button,{icon:e.jsx(re.UploadOutlined,{}),style:{width:"100%"},children:c?c.name:"Select Excel File"})})]})}),e.jsx(s.Col,{xs:24,md:6,style:{display:"flex",alignItems:"flex-end"},children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:f?"Processing...":"Save",color:"primary",loading:f})})})]})})]})]})})})})}function TS(){return null}const qr=t=>t??localStorage.getItem("authToken")??"",ku=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},Ru=()=>JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1",qe={uploadNotes:"api/branchapi/Academy/uploadNotes",master:{classes:{dropdown:"api/branchapi/academy/classdropdownlist",table:"api/branchapi/academy/classestableList",add:"api/branchapi/academy/addclasses",edit:"api/branchapi/academy/editclass",remove:"api/branchapi/academy/deleteclass",show:"api/branchapi/academy/classShowdata"},sections:{list:"api/branchapi/academy/sectionlist",table:"api/branchapi/academy/sectiontableList",add:"api/branchapi/academy/addsections",edit:"api/branchapi/academy/editsection",remove:"api/branchapi/academy/deletesection",show:"api/branchapi/academy/sectionShowdata",byClass:"api/branchapi/academy/sectionoftheClass"},subjects:{dropdown:"api/branchapi/Academy/getClassSubjectdropdown",byClassLabelValue:"api/branchapi/Academy/getSubjectsbyClassaslablevalue",table:"api/branchapi/academy/subjecttableList",add:"api/branchapi/academy/addsubjects",edit:"api/branchapi/academy/editsubject",remove:"api/branchapi/academy/deletesubject",show:"api/branchapi/academy/subjectShowdata"},holidays:{table:"api/branchapi/academy/holidayList",add:"api/branchapi/academy/addholidays",edit:"api/branchapi/academy/editholidays",remove:"api/branchapi/academy/deleteholiday",show:"api/branchapi/academy/getByIdholidays"}},assignSubjects:{assign:"api/branchapi/Academy/assignClassSubjects",list:"api/branchapi/academy/getSubjectsbyClass",update:"api/branchapi/academy/updateAssignSubject",editByClass:"api/branchapi/academy/editSubjectsbyClass"},assignByClass:{teacherDropdown:"api/branchapi/topics/getTeacherDropdown",classWithSection:"api/branchapi/academy/getClasswithSection",assignedSubjectsOfTeacher:"api/branchapi/academy/getassignedSubjectsofTeacher",subjectsOfTeacherByTeacherId:"api/branchapi/academy/getSubjectsofTeacherbyTeacherID",assignClassToTeacher:"api/branchapi/academy/assignClasstoTeacher",deleteTeacherSub:"api/branchapi/academy/deleteTeacherSub"},promoteStudents:{searchByClassSection:"api/branchapi/student/currentSessionStudentlist",sessionDropdown:"api/branchapi/generalSettings/sessiondropdown",promote:"api/branchapi/student/promotestudent"},timeGroup:{table:"api/branchapi/academy/getTimeGroupTable",add:"api/branchapi/academy/addTimeGroup",edit:"api/branchapi/academy/editTimeGroup",remove:"api/branchapi/academy/deleteTimeGroup",show:"api/branchapi/academy/getTimeGroupDataById",dropdown:"api/branchapi/academy/getTimeGroupDropDown"},assignTimeGroup:{classIdByTimeGroup:"api/branchapi/academy/getClassIdByTimeGroup",table:"api/branchapi/academy/getAssignedTimeGroupTable",show:"api/branchapi/academy/getAssignedTimeGroupDataById",assign:"api/branchapi/academy/assignTimeGroup"},timetable:{save:"api/timetable/save",byClassSection:"api/timetable/class",teacherTimetable:"api/timetable/teacher/",teachersBySubject:"api/branchapi/Academy/gettechersSubject"},notes:{table:"api/branchapi/Academy/getNotesTable",add:"api/branchapi/Academy/addNotes"},syllabus:{table:"api/branchapi/Academy/getsyllabusTable",add:"api/branchapi/Academy/addsyllabus",edit:"api/branchapi/Academy/editsyllabus",uploadFile:"api/SuperAdmin/uploadFile"},transferCertificate:{studentList:"api/branchapi/student/getstudenttransferCertificateList",addData:"api/branchapi/academy/addtransferCertificatedata",view:"api/branchapi/academy/gettransferCertificateUrl"},coscholastic:{table:"api/branchapi/academy/getcoscholastic",addSkill:"api/branchapi/academy/addCoscholasticSkill",deleteSkill:"api/branchapi/academy/deleteCoscholastic",categoryDropdown:"api/branchapi/academy/coscholasticCategoryDropdown",addCategory:"api/branchapi/academy/addCoscholasticCategory",deleteCategory:"api/branchapi/academy/coscholasticCategoryDelete"}},kS=()=>ku(Nt(),qe.uploadNotes),RS=()=>ku(Nt(),qe.syllabus.uploadFile),IS=async({baseUrl:t,page:a=1,perPage:n=10},r)=>{const o=t.includes("?")?"&":"?",l=`${t}${o}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(n))}`;return Y(l,qr(r))},Zt=async(t,a,n,{includeSession:r=!1}={})=>{const o=a instanceof FormData?a:new FormData;return r&&!o.has("session_id")&&o.append("session_id",Ru()),Ze(t,o,qr(n))},Ra=async(t,a,n,{includeSession:r=!1}={})=>{const o=a instanceof FormData?a:new FormData;return r&&!o.has("session_id")&&o.append("session_id",Ru()),ct(t,o,qr(n))},Ga=async(t,a,n)=>st(t,a,qr(n)),cr=qe.master.sections,bs=({baseUrl:t,page:a=1,perPage:n=10,token:r})=>q(r&&t?[t,a,n,r]:null,([l,d,c,h])=>IS({baseUrl:l,page:d,perPage:c},h)),PS=({token:t,page:a=1,perPage:n=10})=>bs({token:t,baseUrl:cr.table,page:a,perPage:n}),MS=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function ES({token:t}){const[a,n]=i.useState({page:1,perPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c]=s.Form.useForm(),{data:h,isLoading:f,mutate:p}=PS({token:t,page:a.page,perPage:a.perPage}),m=i.useMemo(()=>MS(h),[h]),v=i.useMemo(()=>h?.pagination?.total_rows??h?.pagination?.total??m.length??0,[h,m]),S=async R=>{R.preventDefault();const I=new FormData(R.target);try{await Zt(cr.add,I,t),D.success("Success! Added new item.",{duration:1e3}),R.target.reset(),p()}catch(A){D.error(A?.response?.data?.msg??A?.message??"Failed to add the new item.",{duration:1500})}},y=async R=>{try{await Ga(cr.remove,R,t),D.success("Success! Deleted item.",{duration:1e3}),p()}catch(I){D.error(I?.response?.data?.msg??I?.message??"Failed to delete the item.",{duration:1500})}},g=R=>{d(R),o(!0),c.setFieldsValue({section:R?.section??""})},b=async R=>{const I=new FormData;I.append("id",String(l?.id??"")),I.append("section",R.section??"");try{await Ra(cr.edit,I,t),D.success("Success! Updated item.",{duration:1e3}),o(!1),d(null),p()}catch(A){D.error(A?.response?.data?.msg??A?.message??"Failed to update the item.",{duration:1500})}},T=i.useMemo(()=>[{title:"Section",dataIndex:"section",key:"section"},{title:"Actions",key:"actions",width:120,render:(R,I)=>e.jsxs(s.Space,{children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>g(I)}),e.jsx(s.Popconfirm,{title:"Delete this section?",onConfirm:()=>y(I?.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})]})}],[c]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{title:"Edit Section",open:r,onClose:()=>{o(!1),d(null)},width:420,children:e.jsxs(s.Form,{form:c,layout:"vertical",onFinish:b,children:[e.jsx(s.Form.Item,{label:"Section Name",name:"section",rules:[{required:!0,message:"Section Name is required"}],children:e.jsx(s.Input,{placeholder:"Section Name"})}),e.jsxs(s.Space,{children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Section"}),children:e.jsx("form",{onSubmit:S,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(G,{type:"text",name:"section",label:"Section Name",required:!0}),e.jsx(de,{type:"submit",value:"Submit",color:"primary"})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Section List"}),extra:e.jsx(s.Space,{}),children:e.jsx(s.Table,{rowKey:R=>R.id,columns:T,dataSource:m,loading:f,pagination:{current:a.page,pageSize:a.perPage,total:v,showSizeChanger:!0,onChange:(R,I)=>n({page:R,perPage:I})}})})]})}function OS({token:t}){return e.jsx(ES,{token:t})}const es=qe.master.classes,$S=({token:t,page:a=1,perPage:n=10})=>bs({token:t,baseUrl:es.table,page:a,perPage:n}),FS=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},BS=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:[];function LS({token:t}){const[a,n]=i.useState({page:1,perPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c]=s.Form.useForm(),[h]=s.Form.useForm(),{data:f}=q(t?[qe.master.sections.list,t]:null,([j,M])=>Y(j,M)),p=i.useMemo(()=>BS(f),[f]),m=i.useMemo(()=>p.map(j=>({label:j.label??j.section??String(j.value??""),value:String(j.value??j.id??"")})),[p]),{data:v,isLoading:S,mutate:y}=$S({token:t,page:a.page,perPage:a.perPage}),g=i.useMemo(()=>FS(v),[v]),b=i.useMemo(()=>v?.pagination?.total_rows??v?.pagination?.total??g.length??0,[v,g]),{data:T}=q(t&&l?[`${es.show}?id=${encodeURIComponent(String(l))}`,t]:null,([j,M])=>Y(j,M)),R=i.useMemo(()=>{const j=T?.data??T;return Array.isArray(j)?j:Array.isArray(j?.data)?j.data:j?[j]:[]},[T]),I=j=>{const M=j?.id??j?.class_id;M&&(d(M),o(!0))};i.useEffect(()=>{if(!r||!R.length)return;const j=R[0],M=R.map(k=>k?.section_id??k?.fk_sectionId??k?.sectionId??k?.section).filter(k=>k!=null&&String(k).trim()!=="").map(k=>String(k)),O=Array.isArray(j?.section_ids)?j.section_ids.map(k=>String(k)):typeof j?.section_ids=="string"?j.section_ids.split(",").map(k=>k.trim()).filter(Boolean):Array.isArray(j?.section)?j.section.map(k=>String(k)):[],z=M.length?M:O;h.setFieldsValue({name:j?.class??j?.name??"",section:z})},[r,R,h]);const A=async j=>{const M=new FormData;M.append("name",j.name??""),(j.section??[]).forEach(O=>M.append("section[]",String(O)));try{await Zt(es.add,M,t),D.success("Success! Added new item.",{duration:1e3}),c.resetFields(),y()}catch(O){D.error(O?.response?.data?.msg??O?.message??"Failed to add the new item.",{duration:1500})}},_=async j=>{const M=new FormData;M.append("id",String(l??"")),M.append("name",j.name??""),(j.section??[]).forEach(O=>M.append("section[]",String(O)));try{await Ra(es.edit,M,t),D.success("Success! Updated item.",{duration:1e3}),o(!1),d(null),y()}catch(O){D.error(O?.response?.data?.msg??O?.message??"Failed to update the item.",{duration:1500})}},u=async j=>{try{await Ga(es.remove,j,t),D.success("Success! Deleted item.",{duration:1e3}),y()}catch(M){D.error(M?.response?.data?.msg??M?.message??"Failed to delete the item.",{duration:1500})}},x=i.useMemo(()=>[{title:"Class",dataIndex:"class",key:"class",render:(j,M)=>j??M?.name??""},{title:"Section",dataIndex:"sections",key:"sections",render:j=>j??""},{title:"Actions",key:"actions",width:120,render:(j,M)=>e.jsxs(s.Space,{children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>I(M)}),e.jsx(s.Popconfirm,{title:"Delete this class?",onConfirm:()=>u(M?.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{title:"Edit Class",open:r,onClose:()=>{o(!1),d(null)},width:520,children:e.jsxs(s.Form,{form:h,layout:"vertical",onFinish:_,children:[e.jsx(s.Form.Item,{label:"Class",name:"name",rules:[{required:!0,message:"Class is required"}],children:e.jsx(s.Input,{placeholder:"Class"})}),e.jsx(s.Form.Item,{label:"Sections",name:"section",rules:[{required:!0,message:"Please select at least one section"}],children:e.jsx(s.Checkbox.Group,{options:m})}),e.jsxs(s.Space,{children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Class"}),children:e.jsx(s.Form,{form:c,layout:"vertical",onFinish:A,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{name:"name",label:"Class",rules:[{required:!0,message:"Class is required"}],children:e.jsx(s.Input,{placeholder:"Class"})}),e.jsx(s.Form.Item,{name:"section",label:"Sections",rules:[{required:!0,message:"Select at least one section"}],children:e.jsx(s.Checkbox.Group,{options:m})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Class List"}),children:e.jsx(s.Table,{rowKey:j=>j.id,columns:x,dataSource:g,loading:S,pagination:{current:a.page,pageSize:a.perPage,total:b,showSizeChanger:!0,onChange:(j,M)=>n({page:j,perPage:M})}})})]})}function US({token:t}){return e.jsx(LS,{token:t})}const ts=qe.master.subjects,NS=({token:t,page:a=1,perPage:n=10})=>bs({token:t,baseUrl:ts.table,page:a,perPage:n}),zS=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Id=[{value:"Practical",label:"Practical"},{value:"Theory",label:"Theory"}],Pd=[{value:"Main",label:"Main"},{value:"Additional",label:"Minor/Additional"},{value:"extra_curricular_activities",label:"Extra Curricular Activities"}];function qS({token:t}){const[a,n]=i.useState({page:1,perPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c]=s.Form.useForm(),[h]=s.Form.useForm(),{data:f,isLoading:p,mutate:m}=NS({token:t,page:a.page,perPage:a.perPage}),v=i.useMemo(()=>zS(f),[f]),S=i.useMemo(()=>f?.pagination?.total_rows??f?.pagination?.total??v.length??0,[f,v]),{data:y,isLoading:g}=q(t&&l?[`${ts.show}?id=${encodeURIComponent(String(l))}`,t]:null,([u,x])=>Y(u,x)),b=i.useMemo(()=>{const u=y?.data??y;return Array.isArray(u)?u[0]:u??null},[y]);i.useEffect(()=>{if(!r||!b)return;const u=[];["yes","1","true"].includes(String(b?.is_practical??"").toLowerCase())&&u.push("Practical"),["yes","1","true"].includes(String(b?.is_theory??"").toLowerCase())&&u.push("Theory"),h.setFieldsValue({name:b?.name??"",subject_type:b?.subject_type??b?.type??"",subject_types:u,code:b?.code??""})},[r,b,h]);const T=async u=>{const x=u?.subject_type??u?.type??"",j=Array.isArray(u?.subject_types)?u.subject_types:[],M={name:u?.name??"",subject_type:x,subject_types:j,code:u?.code??"",is_practical:j.includes("Practical")?"yes":"no",is_theory:j.includes("Theory")?"yes":"no"};try{await m(Ze(ts.add,M,t)),D.success("Success! Added new item.",{duration:1e3}),c.resetFields()}catch(O){D.error(O?.response?.data?.msg??O?.message??"Failed to add the new item.",{duration:1500})}},R=async u=>{const x=new FormData,j=u?.subject_type??u?.type??"",M=Array.isArray(u?.subject_types)?u.subject_types:[];x.append("id",String(l??"")),x.append("name",u.name??""),x.append("subject_type",j),x.append("code",u.code??""),x.append("subject_types",M),x.append("is_practical",M.includes("Practical")?"yes":"no"),x.append("is_theory",M.includes("Theory")?"yes":"no");try{await m(Ra(ts.edit,x,t)),D.success("Success! Updated item.",{duration:1e3}),o(!1),d(null)}catch(O){D.error(O?.response?.data?.msg??O?.message??"Failed to update the item.",{duration:1500})}},I=async u=>{try{await m(Ga(ts.remove,u,t)),D.success("Success! Deleted item.",{duration:1e3})}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to delete the item.",{duration:1500})}},A=u=>{const x=u?.id;x&&(d(x),o(!0))},_=i.useMemo(()=>[{title:"Subject Name",dataIndex:"name",key:"name"},{title:"Subject",dataIndex:"subject_type",key:"subject_type"},{title:"Subject Code",dataIndex:"code",key:"code"},{title:"Subject Type",key:"subject_types",render:(u,x)=>{const j=[],M=x?.subject_types;Array.isArray(M)?M.forEach(C=>{const E=String(C??"").trim();if(!E)return;const P=E.toLowerCase();["yes","1","true"].includes(P)||j.push(E)}):typeof M=="string"&&M.split(",").map(C=>C.trim()).filter(Boolean).forEach(C=>{const E=C.toLowerCase();["yes","1","true"].includes(E)||j.push(C)});const O=["yes","1","true"].includes(String(x?.is_practical??"").toLowerCase()),z=["yes","1","true"].includes(String(x?.is_theory??"").toLowerCase());O&&j.push("Practical"),z&&j.push("Theory");const k=j.map(C=>String(C??"").trim()).filter(Boolean).map(C=>C.toLowerCase()==="practical"?"Practical":C.toLowerCase()==="theory"?"Theory":C),F=Array.from(new Set(k));return F.length?F.join(", "):"-"}},{title:"Actions",key:"actions",width:120,render:(u,x)=>e.jsxs(s.Space,{children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>A(x)}),e.jsx(s.Popconfirm,{title:"Delete this subject?",onConfirm:()=>I(x?.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{title:"Edit Subject",open:r,onClose:()=>{o(!1),d(null)},width:560,children:g?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(s.Spin,{size:"large"})}):e.jsxs(s.Form,{form:h,layout:"vertical",onFinish:R,children:[e.jsx(s.Form.Item,{label:"Subject Name",name:"name",rules:[{required:!0,message:"Subject Name is required"}],children:e.jsx(G,{placeholder:"Subject Name"})}),e.jsx(s.Form.Item,{label:"Subject",name:"subject_type",rules:[{required:!0,message:"Select subject category"}],children:e.jsx(s.Radio.Group,{options:Pd})}),e.jsx(s.Form.Item,{label:"Subject Type",name:"subject_types",rules:[{required:!0,type:"array",min:1,message:"Please choose at least one field"}],children:e.jsx(s.Checkbox.Group,{options:Id})}),e.jsx(s.Form.Item,{label:"Subject Code",name:"code",children:e.jsx(G,{placeholder:"Subject Code"})}),e.jsxs(s.Space,{children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Subject"}),children:e.jsx(s.Form,{form:c,layout:"vertical",onFinish:T,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{name:"name",label:"Subject Name",rules:[{required:!0,message:"Subject Name is required"}],children:e.jsx(G,{placeholder:"Subject Name"})}),e.jsx(s.Form.Item,{name:"subject_type",label:"Subject",rules:[{required:!0,message:"Select subject"}],children:e.jsx(s.Radio.Group,{options:Pd})}),e.jsx(s.Form.Item,{name:"subject_types",label:"Subject Type",rules:[{required:!0,type:"array",min:1,message:"Please choose at least one field"}],children:e.jsx(s.Checkbox.Group,{options:Id})}),e.jsx(s.Form.Item,{name:"code",label:"Subject Code",children:e.jsx(G,{placeholder:"Subject Code"})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Subject List"}),children:e.jsx(s.Table,{rowKey:u=>u.id,columns:_,dataSource:v,loading:p,pagination:{current:a.page,pageSize:a.perPage,total:S,showSizeChanger:!0,onChange:(u,x)=>n({page:u,perPage:x})}})})]})}function YS({token:t}){return e.jsx(qS,{token:t})}const as=qe.master.holidays,WS=({token:t,page:a=1,perPage:n=10})=>bs({token:t,baseUrl:as.table,page:a,perPage:n}),VS=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},Ys={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function HS({token:t}){const[a,n]=i.useState({page:1,perPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c]=s.Form.useForm(),[h]=s.Form.useForm(),{data:f,isLoading:p,mutate:m}=WS({token:t,page:a.page,perPage:a.perPage}),v=i.useMemo(()=>VS(f),[f]),S=i.useMemo(()=>f?.pagination?.total_rows??f?.pagination?.total??v.length??0,[f,v]),{data:y}=q(t&&l?[`${as.show}?id=${encodeURIComponent(String(l))}`,t]:null,([_,u])=>Y(_,u)),g=i.useMemo(()=>{const _=y?.data??y;return Array.isArray(_)?_[0]:_??null},[y]);i.useEffect(()=>{r&&g&&h.setFieldsValue({title:g?.holiday_title??"",description:g?.holiday_description??"",from:g?.start_date?ne(g.start_date):null,to:g?.end_date?ne(g.end_date):null})},[r,g,h]);const b=async _=>{const u=new FormData;u.append("title",_.title??""),u.append("description",_.description??""),u.append("from",_.from?ne(_.from).format("YYYY-MM-DD"):""),u.append("to",_.to?ne(_.to).format("YYYY-MM-DD"):"");try{await Zt(as.add,u,t,{includeSession:!0}),D.success("Success! Added new item.",{duration:1e3}),c.resetFields(),m()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to add the new item.",{duration:1500})}},T=async _=>{const u=new FormData;u.append("id",String(l??"")),u.append("title",_.title??""),u.append("description",_.description??""),u.append("from",_.from?ne(_.from).format("YYYY-MM-DD"):""),u.append("to",_.to?ne(_.to).format("YYYY-MM-DD"):"");try{await Ra(as.edit,u,t,{includeSession:!0}),D.success("Success! Updated item.",{duration:1e3}),o(!1),d(null),m()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to update the item.",{duration:1500})}},R=async _=>{try{await Ga(as.remove,_,t),D.success("Success! Deleted item.",{duration:1e3}),m()}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to delete the item.",{duration:1500})}},I=_=>{const u=_?.id;u&&(d(u),o(!0))},A=i.useMemo(()=>[{title:"Holiday Title",dataIndex:"holiday_title",key:"holiday_title"},{title:"Holiday Description",dataIndex:"holiday_description",key:"holiday_description"},{title:"Start From",dataIndex:"start_date",key:"start_date"},{title:"End At",dataIndex:"end_date",key:"end_date"},{title:"Actions",key:"actions",width:120,render:(_,u)=>e.jsxs(s.Space,{children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>I(u)}),e.jsx(s.Popconfirm,{title:"Delete this holiday?",onConfirm:()=>R(u?.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{title:"Edit Holiday",open:r,onClose:()=>{o(!1),d(null)},width:560,children:e.jsxs(s.Form,{form:h,layout:"vertical",onFinish:T,children:[e.jsx(s.Form.Item,{label:"Holiday Title",name:"title",rules:[{required:!0,message:"Holiday Title is required"}],children:e.jsx(G,{placeholder:"Holiday Title"})}),e.jsx(s.Form.Item,{label:"Holiday Description",name:"description",rules:[{required:!0,message:"Holiday Description is required"}],children:e.jsx(G,{placeholder:"Holiday Description"})}),e.jsx(s.Form.Item,{label:"Start From",name:"from",rules:[{required:!0,message:"Start date is required"}],children:e.jsx(s.DatePicker,{format:"YYYY-MM-DD",style:Ys})}),e.jsx(s.Form.Item,{label:"End At",name:"to",rules:[{required:!0,message:"End date is required"}],children:e.jsx(s.DatePicker,{format:"YYYY-MM-DD",style:Ys})}),e.jsxs(s.Space,{children:[e.jsx(de,{type:"submit",value:"Update",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Holidays"}),children:e.jsx(s.Form,{form:c,layout:"vertical",onFinish:b,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{name:"title",label:"Holiday Title",rules:[{required:!0,message:"Holiday Title is required"}],children:e.jsx(G,{placeholder:"Holiday Title"})}),e.jsx(s.Form.Item,{name:"description",label:"Holiday Description",rules:[{required:!0,message:"Holiday Description is required"}],children:e.jsx(kt,{placeholder:"Holiday Description"})}),e.jsx(s.Form.Item,{name:"from",label:"Start From",rules:[{required:!0,message:"Start date is required"}],children:e.jsx(s.DatePicker,{format:"YYYY-MM-DD",style:Ys})}),e.jsx(s.Form.Item,{name:"to",label:"End At",rules:[{required:!0,message:"End date is required"}],children:e.jsx(s.DatePicker,{format:"YYYY-MM-DD",style:Ys})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Holidays List"}),children:e.jsx(s.Table,{rowKey:_=>_.id,columns:A,dataSource:v,loading:p,pagination:{current:a.page,pageSize:a.perPage,total:S,showSizeChanger:!0,onChange:(_,u)=>n({page:_,perPage:u})}})})]})}function KS({token:t}){return e.jsx(HS,{token:t})}const ur=qe.assignSubjects,GS=({token:t,page:a=1,perPage:n=50})=>bs({token:t,baseUrl:ur.list,page:a,perPage:n}),Md=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[],JS=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function QS({token:t}){const[a,n]=i.useState({page:1,perPage:50}),[r,o]=i.useState(null),[l,d]=i.useState([]),[c,h]=i.useState(!1),[f,p]=i.useState(!1),[m,v]=i.useState(null),[S,y]=i.useState([]),{data:g}=q(t?[qe.master.classes.dropdown,t]:null,([C,E])=>Y(C,E)),{data:b}=q(t?[qe.master.subjects.dropdown,t]:null,([C,E])=>Y(C,E)),T=i.useMemo(()=>Md(g),[g]),R=i.useMemo(()=>Md(b),[b]),I=i.useMemo(()=>R.map(C=>({label:C.label??C.subject??String(C.value??""),value:C.value??C.id})),[R]),{data:A,isLoading:_,mutate:u}=GS({token:t,page:a.page,perPage:a.perPage}),x=i.useMemo(()=>JS(A),[A]),j=i.useMemo(()=>A?.pagination?.total_rows??A?.pagination?.total??x.length??0,[A,x]),{data:M}=q(t&&m?[`${ur.editByClass}?class_id=${encodeURIComponent(String(m))}`,t]:null,([C,E])=>Y(C,E));i.useEffect(()=>{if(!f)return;const C=M?.data??M,E=Array.isArray(C)?C:Array.isArray(C?.data)?C.data:[];y(E.map(P=>P.subject_id).filter(Boolean))},[f,M]);const O=async C=>{if(C.preventDefault(),!r?.value){D.error("Please select class",{duration:1200});return}if(!l.length){D.error("Please select subjects",{duration:1200});return}const E=new FormData;E.append("class_id",String(r.value)),l.forEach(P=>E.append("subject[]",String(P)));try{h(!0),await Ra(ur.assign,E,t),D.success("Success! Updated item.",{duration:1e3}),o(null),d([]),u()}catch(P){D.error(P?.response?.data?.msg??P?.message??"Failed to update the item.",{duration:1500})}finally{h(!1)}},z=C=>{C&&(v(C),p(!0))},k=async()=>{if(!m)return;if(!S.length){D.error("Please select subjects",{duration:1200});return}const C=new FormData;C.append("class_id",String(m)),S.forEach(E=>C.append("subject[]",String(E)));try{await Ra(ur.update,C,t),D.success("Success! Updated item.",{duration:1e3}),p(!1),v(null),u()}catch(E){D.error(E?.response?.data?.msg??E?.message??"Failed to update the item.",{duration:1500})}},F=i.useMemo(()=>[{title:"Class",dataIndex:"class",align:"center",width:"15%"},{title:"Subject",dataIndex:"subject_name",width:"70%",render:(C,E)=>e.jsx("div",{style:{paddingLeft:10,paddingRight:10,fontSize:14},children:(E?.subject_name??C??"").split(",").join(", ")})},{title:"Action",width:"10%",render:(C,E)=>e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>z(E?.class_id)})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{title:"Edit Assigned Subjects",open:f,onClose:()=>{p(!1),v(null)},width:520,extra:e.jsxs(s.Space,{children:[e.jsx(s.Button,{onClick:()=>p(!1),children:"Cancel"}),e.jsx(s.Button,{type:"primary",onClick:k,children:"Update"})]}),children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(ae,{options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,value:T.find(C=>String(C.value)===String(m))??null,onChange:()=>{},isDisabled:!0}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Subjects"}),e.jsx(s.Checkbox.Group,{options:I,value:S,onChange:y})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Assign Subject"}),children:e.jsx("form",{onSubmit:O,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:T,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",required:!0,allowSelectAll:!1,value:r,onChange:C=>o(C??null)}),e.jsxs("div",{style:{gridColumn:"1 / -1"},children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Subjects"}),e.jsx(s.Checkbox.Group,{options:I,value:l,onChange:d})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:c?"Please Wait..":"Save",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Assigned Subject List"}),children:e.jsx(s.Table,{rowKey:C=>C.id,columns:F,dataSource:x,loading:_,pagination:{current:a.page,pageSize:a.perPage,total:j,showSizeChanger:!0,onChange:(C,E)=>n({page:C,perPage:E})}})})]})}function XS({token:t}){return e.jsx(QS,{token:t})}const mn=qe.assignByClass,Iu=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(typeof t?.data?.Status=="string"&&Array.isArray(t?.data?.data))return t.data.data;if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Wn=t=>Iu(t),ZS=t=>Iu(t),Vn=t=>Array.isArray(t)?t:t==null||t===""?[]:[t];function ew({token:t}){const[a,n]=i.useState(null),[r,o]=i.useState(null),[l,d]=i.useState(null),[c,h]=i.useState("No"),[f,p]=i.useState([]),[m,v]=i.useState([]),[S,y]=i.useState(null),[g,b]=i.useState(null),[T,R]=i.useState(!1),[I,A]=i.useState(""),{data:_}=q(t?[mn.teacherDropdown,t]:null,([se,le])=>Y(se,le)),{data:u}=q(t?[qe.master.classes.dropdown,t]:null,([se,le])=>Y(se,le)),{data:x}=q(t&&g?[g,t]:null,([se,le])=>Y(se,le)),{data:j}=q(t&&S?[S,t]:null,([se,le])=>Y(se,le)),M=i.useMemo(()=>Wn(_),[_]),O=i.useMemo(()=>Wn(u),[u]),z=i.useMemo(()=>Wn(x),[x]),k=i.useMemo(()=>Wn(j),[j]),{data:F}=q(t&&a&&r&&l?[`${mn.subjectsOfTeacherByTeacherId}?teacher_id=${encodeURIComponent(String(a))}&class_id=${encodeURIComponent(String(r))}&section_id=${encodeURIComponent(String(l))}`,t]:null,([se,le])=>Y(se,le)),C=F?.data??F??null;i.useEffect(()=>{C&&(p(Array.isArray(C?.subject_ids)?C.subject_ids:[]),h(C?.isClassTeacher||"No"),v([]))},[C]);const{data:E}=q(t?[mn.classWithSection,t]:null,([se,le])=>Y(se,le)),P=i.useMemo(()=>Wn(E),[E]),[U,H]=i.useState(null),[W,L]=i.useState({page:1,perPage:25});i.useEffect(()=>{U||P?.[0]&&H(`${P[0].class_id}val${P[0].section_id}`)},[P,U]);const B=i.useMemo(()=>typeof window>"u"?"1":JSON.parse(localStorage.getItem("genrall_settings")??"null")?.session_id??"1",[]),$=i.useMemo(()=>{if(!U)return null;const[se,le]=String(U).split("val");if(!se||!le)return null;const Ce=W.page??1,Le=W.perPage??25;return`${mn.assignedSubjectsOfTeacher}?page=${encodeURIComponent(String(Ce))}&per_page=${encodeURIComponent(String(Le))}&session_id=${encodeURIComponent(String(B))}&class_id=${encodeURIComponent(String(se))}&section_id=${encodeURIComponent(String(le))}`},[U,W.page,W.perPage,B]),{data:N,isLoading:V,mutate:Q}=q(t&&$?[$,t]:null,([se,le])=>Y(se,le),{revalidateOnFocus:!1}),Z=i.useMemo(()=>ZS(N),[N]),J=i.useMemo(()=>{const se=N?.pagination??N?.data?.pagination??N?.data?.data?.pagination;return se?.total_rows??se?.total??Z.length??0},[N,Z]),K=async se=>{if(se.preventDefault(),A(""),!a||!r||!l){D.error("Please select Teacher, Class and Section",{duration:1200});return}if(!Array.isArray(f)||f.length===0){A("error"),D.error("Please Select Subject",{duration:1200});return}const le=new FormData;le.append("teacher_id",String(a)),le.append("class_id",String(r)),le.append("section_id",String(l)),le.append("isClassTeacher",String(c??"No")),Vn(f).forEach(Ce=>le.append("subject_ids[]",String(Ce))),Vn(m).forEach(Ce=>le.append("delete_subject[]",String(Ce)));try{await Zt(mn.assignClassToTeacher,le,t,{includeSession:!0}),D.success("Success! Added new item.",{duration:1e3}),A(""),Q()}catch(Ce){D.error(Ce?.response?.data?.msg??Ce?.message??"Failed to add the new item.",{duration:1500})}},X=async se=>{try{await Ga(mn.deleteTeacherSub,se,t),D.success("Success! Deleted item.",{duration:1e3}),Q(),window.location.reload()}catch(le){D.error(le?.response?.data?.msg??le?.message??"Failed to delete the item.",{duration:1500})}},ee=se=>{const le=Array.isArray(se?.child)?se.child:[],Ce=[{title:"Subject",dataIndex:"subject",key:"subject",align:"center"},{title:"Subject Code",dataIndex:"code",key:"code",align:"center"},{title:"Action",key:"action",align:"center",render:(Le,Re)=>e.jsx(s.Popconfirm,{title:"Delete this subject?",onConfirm:()=>X(Re?.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})}];return e.jsx("div",{style:{margin:12},children:e.jsx(s.Table,{columns:Ce,bordered:!0,size:"small",dataSource:le,pagination:!1,rowKey:Le=>Le.id})})},pe=[{title:"Teacher Name",dataIndex:"teacher_name",key:"teacher_name",align:"center",render:(se,le)=>e.jsxs("div",{children:[le.teacher_name,le.classTeacher==="Yes"?e.jsx("span",{style:{fontWeight:700},children:" (Class Teacher)"}):null]})}],te=i.useMemo(()=>(P??[]).map(se=>({label:se.label??`${se.class_name??""} ${se.section_name??""}`.trim(),key:`${se.class_id}val${se.section_id}`,children:e.jsx(s.Table,{size:"small",columns:pe,bordered:!0,dataSource:Array.isArray(Z)?Z:[],loading:V,rowKey:le=>le.id,expandable:{expandedRowRender:ee},pagination:{current:W.page,pageSize:W.perPage,total:J,showSizeChanger:!0,onChange:(le,Ce)=>L({page:le,perPage:Ce})}})})),[P,W.page,W.perPage,Z,V,J]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(320px, 380px) 1fr",gap:20},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Assign by Class"}),children:e.jsx("form",{onSubmit:K,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(ae,{options:M,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Teachers",name:"teacher_id",required:!0,allowSelectAll:!1,value:M.find(se=>String(se.value)===String(a))??null,onChange:se=>n(se?.value??null)}),e.jsx(ae,{options:O,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",required:!0,allowSelectAll:!1,value:O.find(se=>String(se.value)===String(r))??null,onChange:se=>{const le=se?.value??null;o(le),d(null),y(le?`${qe.master.subjects.byClassLabelValue}?class_id=${encodeURIComponent(String(le))}`:null),b(le?`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String(le))}`:null),R(Ce=>!Ce)}}),e.jsx(ae,{options:z,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",required:!0,allowSelectAll:!1,value:z.find(se=>String(se.value)===String(l))??null,onChange:se=>d(se?.value??null)},`section_${T}`),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Is Class Teacher?"}),(()=>{const se=[{label:"Yes",value:"Yes"},{label:"No",value:"No"}];return e.jsx(ae,{style:{width:"100%"},options:se,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:se.find(le=>String(le.value)===String(c??"No"))??se[1],onChange:le=>h(le?.value??"No")})})()]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Subject"}),e.jsx(ae,{isMulti:!0,style:{width:"100%"},placeholder:"select Subject",options:k,value:(k??[]).filter(se=>Vn(f).some(le=>String(le)===String(se.value))),onChange:(se,le)=>{const Le=(Array.isArray(se)?se:[]).map(Ue=>Ue?.value).filter(Ue=>Ue!=null&&Ue!=="");p(Le);const Re=Array.isArray(C?.subject_ids)?C.subject_ids.map(String):[],xe=le?.removedValue?.value,Te=le?.option?.value;(le?.action==="remove-value"||le?.action==="pop-value")&&xe!=null&&Re.includes(String(xe))&&v(Ue=>Array.from(new Set([...Vn(Ue).map(String),String(xe)]))),le?.action==="select-option"&&Te!=null&&Re.includes(String(Te))&&v(Ue=>Vn(Ue).filter(ye=>String(ye)!==String(Te)))}},`subjects_${T}`),I?e.jsx("div",{style:{color:"#ff4d4f",marginTop:6,fontSize:12},children:"Please select subject"}):null]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Submit",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Assign Teacher List"}),children:e.jsx(s.Tabs,{activeKey:U??void 0,onChange:se=>{H(se),L(le=>({...le,page:1}))},items:te,type:"card",size:"small"})})]})]})}function tw({token:t}){return e.jsx(ew,{token:t})}const Hn=qe.timeGroup,aw=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]},wa={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"};function Ws(t){if(!t)return null;const a=ne(String(t),["h:mm a","HH:mm:ss","HH:mm"],!0);return a.isValid()?a:null}function va(t){return t?ne(t).format("h:mm a"):""}function nw({token:t}){const[a,n]=i.useState({page:1,perPage:50}),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c]=s.Form.useForm(),[h]=s.Form.useForm(),f=`${Hn.table}?page=${encodeURIComponent(String(a.page))}&per_page=${encodeURIComponent(String(a.perPage))}`,{data:p,isLoading:m,mutate:v}=q(t?[f,t]:null,([x,j])=>Y(x,j)),S=i.useMemo(()=>aw(p),[p]),y=i.useMemo(()=>p?.pagination?.total_rows??p?.pagination?.total??S.length??0,[p,S]),{data:g,isLoading:b}=q(t&&l?[`${Hn.show}?id=${encodeURIComponent(String(l))}`,t]:null,([x,j])=>Y(x,j)),T=i.useMemo(()=>{const x=g?.data??g;return Array.isArray(x)?x[0]:x??null},[g]);i.useEffect(()=>{r&&T&&h.setFieldsValue({title:T?.title??"",start_time_from:Ws(T?.start_time_from),start_time_to:Ws(T?.start_time_to),end_time_from:Ws(T?.end_time_from),end_time_to:Ws(T?.end_time_to)})},[r,T,h]);const R=async x=>{const j=new FormData;j.append("title",x.title??""),j.append("start_time_from",va(x.start_time_from)),j.append("start_time_to",va(x.start_time_to)),j.append("end_time_from",va(x.end_time_from)),j.append("end_time_to",va(x.end_time_to));try{await Zt(Hn.add,j,t),D.success("Success! Added new item.",{duration:1e3}),c.resetFields(),v()}catch(M){D.error(M?.response?.data?.msg??M?.message??"Failed to add the new item.",{duration:1500})}},I=async x=>{const j=new FormData;j.append("id",String(l??"")),j.append("title",x.title??""),j.append("start_time_from",va(x.start_time_from)),j.append("start_time_to",va(x.start_time_to)),j.append("end_time_from",va(x.end_time_from)),j.append("end_time_to",va(x.end_time_to));try{await Ra(Hn.edit,j,t),D.success("Success! Updated item.",{duration:1e3}),o(!1),d(null),v()}catch(M){D.error(M?.response?.data?.msg??M?.message??"Failed to update the item.",{duration:1500})}},A=async x=>{try{await Ga(Hn.remove,x,t),D.success("Success! Deleted item.",{duration:1e3}),v()}catch(j){D.error(j?.response?.data?.msg??j?.message??"Failed to delete the item.",{duration:1500})}},_=x=>{x?.id&&(d(x.id),o(!0))},u=i.useMemo(()=>[{title:"Title",dataIndex:"title",align:"center"},{title:"Start Time From",dataIndex:"start_time_from",align:"center"},{title:"Start Time To",dataIndex:"start_time_to",align:"center"},{title:"End Time From",dataIndex:"end_time_from",align:"center"},{title:"End Time To",dataIndex:"end_time_to",align:"center"},{title:"Action",align:"center",width:120,render:(x,j)=>e.jsxs(s.Space,{children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>_(j)}),e.jsx(s.Popconfirm,{title:"Delete this time group?",onConfirm:()=>A(j?.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{title:"Edit Time Group",open:r,onClose:()=>{o(!1),d(null)},width:520,children:b?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(s.Spin,{size:"large"})}):e.jsxs(s.Form,{form:h,layout:"vertical",onFinish:I,children:[e.jsx(s.Form.Item,{name:"title",label:"Title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(G,{placeholder:"Title"})}),e.jsx(s.Form.Item,{name:"start_time_from",label:"Start Time From",rules:[{required:!0,message:"Start Time From is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsx(s.Form.Item,{name:"start_time_to",label:"Start Time To",rules:[{required:!0,message:"Start Time To is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsx(s.Form.Item,{name:"end_time_from",label:"End Time From",rules:[{required:!0,message:"End Time From is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsx(s.Form.Item,{name:"end_time_to",label:"End Time To",rules:[{required:!0,message:"End Time To is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsxs(s.Space,{children:[e.jsx(de,{type:"submit",value:"Submit",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>{o(!1),d(null)},children:"Cancel"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Create Time Group"}),children:e.jsx(s.Form,{form:c,layout:"vertical",onFinish:R,initialValues:{},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{name:"title",label:"Title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(G,{placeholder:"Title"})}),e.jsx(s.Form.Item,{name:"start_time_from",label:"Start Time From",rules:[{required:!0,message:"Start Time From is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsx(s.Form.Item,{name:"start_time_to",label:"Start Time To",rules:[{required:!0,message:"Start Time To is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsx(s.Form.Item,{name:"end_time_from",label:"End Time From",rules:[{required:!0,message:"End Time From is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsx(s.Form.Item,{name:"end_time_to",label:"End Time To",rules:[{required:!0,message:"End Time To is required"}],children:e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm a",style:wa})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Submit",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Time Group List"}),children:e.jsx(s.Table,{rowKey:x=>x.id,columns:u,dataSource:S,loading:m,pagination:{current:a.page,pageSize:a.perPage,total:y,showSizeChanger:!0,onChange:(x,j)=>n({page:x,perPage:j})}})})]})}function sw({token:t}){return e.jsx(nw,{token:t})}const Kn=qe.assignTimeGroup,rw=qe.timeGroup.dropdown,iw=qe.master.classes.dropdown,Ed=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[],ow=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:Array.isArray(a?.data)?a.data:[]};function lw({token:t}){const[a,n]=i.useState({page:1,perPage:50}),[r,o]=i.useState(null),[l,d]=i.useState([]),[c,h]=i.useState(""),[f,p]=i.useState(""),[m,v]=i.useState(null),[S,y]=i.useState(!1),[g,b]=i.useState(!1),[T,R]=i.useState(null),[I,A]=i.useState([]),[_,u]=i.useState(""),[x,j]=i.useState(""),{data:M}=q(t?[rw,t]:null,([J,K])=>Y(J,K)),{data:O}=q(t?[iw,t]:null,([J,K])=>Y(J,K)),z=i.useMemo(()=>Ed(M?.data??M),[M]),k=i.useMemo(()=>Ed(O),[O]),{data:F}=q(t&&m?[m,t]:null,([J,K])=>Y(J,K));i.useEffect(()=>{const J=Array.isArray(F?.data)?F.data.map(K=>K.fk_classId):[];J.length&&d(J)},[F]);const C=`${Kn.table}?page=${encodeURIComponent(String(a.page))}&per_page=${encodeURIComponent(String(a.perPage))}`,{data:E,isLoading:P,mutate:U}=q(t?[C,t]:null,([J,K])=>Y(J,K)),H=i.useMemo(()=>ow(E),[E]),W=i.useMemo(()=>E?.pagination?.total_rows??E?.pagination?.total??H.length??0,[E,H]),{data:L,isLoading:B}=q(t&&T?[`${Kn.show}?id=${encodeURIComponent(String(T))}`,t]:null,([J,K])=>Y(J,K)),$=L?.data??L??null;i.useEffect(()=>{if(!g||!$)return;const J=Array.isArray($?.class_ids)?$.class_ids:[];A(J);const K=Array.isArray(z)?z.find(X=>String(X.value)===String($?.timegroup_id)):null;K&&j(`${K.start_time_from} -> ${K.end_time_from}`)},[g,$,z]);const N=async J=>{if(J.preventDefault(),h(""),!r?.value){D.error("Select Time Group",{duration:1200});return}if(!l.length){h("error"),D.error("Please Select Classes",{duration:1200});return}const K=new FormData;K.append("timegroup_id",String(r.value)),l.forEach(X=>K.append("class_ids[]",String(X)));try{await Zt(Kn.assign,K,t),D.success("Success! Added new item.",{duration:1e3}),d([]),o(null),p(""),U()}catch(X){D.error(X?.response?.data?.msg??X?.message??"Failed to add the new item.",{duration:1500})}},V=async()=>{if(u(""),!T)return;if(!I.length){u("error"),D.error("Please Select Classes",{duration:1200});return}const J=new FormData;J.append("id",String(T)),J.append("timegroup_id",String($?.timegroup_id??"")),I.forEach(K=>J.append("class_ids[]",String(K)));try{await Ra(Kn.assign,J,t),D.success("Success! Updated item.",{duration:1e3}),b(!1),R(null),U()}catch(K){D.error(K?.response?.data?.msg??K?.message??"Failed to update the item.",{duration:1500})}},Q=J=>{J&&(R(J),b(!0))},Z=i.useMemo(()=>[{title:"Title",dataIndex:"title",align:"center"},{title:"Class Names",dataIndex:"class_names",align:"center"},{title:"Start Time From",dataIndex:"start_time_from",align:"center"},{title:"Start Time To",dataIndex:"start_time_to",align:"center"},{title:"End Time From",dataIndex:"end_time_from",align:"center"},{title:"End Time To",dataIndex:"end_time_to",align:"center"},{title:"Action",align:"center",width:90,render:(J,K)=>K?.class_names?e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>Q(K?.id)}):null}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Drawer,{title:"Edit Assigned Time Group",open:g,onClose:()=>{b(!1),R(null)},width:520,extra:e.jsxs(s.Space,{children:[e.jsx(s.Button,{onClick:()=>b(!1),children:"Cancel"}),e.jsx(s.Button,{type:"primary",onClick:V,children:"Submit"})]}),children:B?e.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:e.jsx(s.Spin,{size:"large"})}):e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(ae,{options:Array.isArray(z)?z:[],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Select Time Group",name:"timegroup_id",allowSelectAll:!1,value:z.find(J=>String(J.value)===String($?.timegroup_id))??null,onChange:()=>{},isDisabled:!0}),e.jsx("div",{style:{marginTop:4,fontSize:16},children:x}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Select Classes"}),e.jsx(s.Select,{mode:"multiple",style:{width:"100%"},status:_,value:I,placeholder:"Select Classes",onChange:J=>A(J),options:Array.isArray(k)?k:[]})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Assign Time Group"}),children:e.jsx("form",{onSubmit:N,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsxs("div",{children:[e.jsx(ae,{options:Array.isArray(z)?z:[],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Select Time Group",name:"timegroup_id",required:!0,allowSelectAll:!1,value:r,onChange:J=>{o(J??null),d([]),h(""),J?.value?(v(`${Kn.classIdByTimeGroup}?id=${encodeURIComponent(String(J.value))}`),p(`${J.start_time_from} -> ${J.end_time_from}`)):(v(null),p("")),y(K=>!K)}}),e.jsx("div",{style:{marginTop:6},children:f})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Select Classes"}),e.jsx(ae,{isMulti:!0,style:{width:"100%"},status:c,value:(k??[]).filter(J=>Array.isArray(l)&&l.some(K=>String(K)===String(J.value))),placeholder:"Select Classes",onChange:J=>{const K=Array.isArray(J)?J:[];d(K.map(X=>X?.value).filter(X=>X!=null&&X!==""))},options:Array.isArray(k)?k:[]},`class_${S}`)]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Assigned Time group List"}),children:e.jsx(s.Table,{rowKey:J=>J.id,columns:Z,dataSource:H,loading:P,pagination:{current:a.page,pageSize:a.perPage,total:W,showSizeChanger:!0,onChange:(J,K)=>n({page:J,perPage:K})}})})]})}function dw({token:t}){return e.jsx(lw,{token:t})}const Xi=qe.promoteStudents,cw=({token:t})=>q(t?[Xi.sessionDropdown,t]:null,([a,n])=>Y(a,n)),Vs=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},uw=(t,a)=>{const n=t?.pagination??t?.data?.pagination??t?.data?.data?.pagination,r=n?.total_rows??n?.total??n?.totalItems;return Number.isFinite(Number(r))?Number(r):a};function pw({token:t}){const[a]=s.Form.useForm(),[n,r]=i.useState({page:1,perPage:300}),[o,l]=i.useState({classId:null,sectionId:null}),[d,c]=i.useState({sessionId:null,classId:null}),[h,f]=i.useState(!1),[p,m]=i.useState([]),v=i.useMemo(()=>new Set(p),[p]),[S,y]=i.useState({}),[g,b]=i.useState({}),{data:T}=q(t?[qe.master.classes.dropdown,t]:null,([N,V])=>Y(N,V)),R=i.useMemo(()=>Vs(T),[T]),I=i.useMemo(()=>o.classId?`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String(o.classId))}`:null,[o.classId]),{data:A}=q(t&&I?[I,t]:null,([N,V])=>Y(N,V)),_=i.useMemo(()=>Vs(A),[A]),u=i.useMemo(()=>d.classId?`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String(d.classId))}`:null,[d.classId]),{data:x}=q(t&&u?[u,t]:null,([N,V])=>Y(N,V),{revalidateOnFocus:!1}),j=i.useMemo(()=>Vs(x),[x]),{data:M}=cw({token:t}),O=i.useMemo(()=>Vs(M),[M]),{trigger:z,data:k,isMutating:F}=it(t?Xi.searchByClassSection:null,(N,{arg:V})=>Da(N,{arg:V},t)),C=i.useMemo(()=>{const N=k?.data?.data??k?.data??k??[];return Array.isArray(N)?N:Array.isArray(N?.data)?N.data:[]},[k]),E=i.useMemo(()=>uw(k,C.length??0),[k,C.length]),P=i.useMemo(()=>{const N=new Map;return(Array.isArray(C)?C:[]).forEach(V=>{V?.id!==void 0&&V?.id!==null&&N.set(String(V.id),V)}),N},[C]),U=i.useCallback((N,V)=>{const Q=String(N);b(Z=>({...Z,[Q]:{...Z?.[Q]??{},...V}}))},[]),H=i.useCallback((N,V)=>{const Q=String(N),Z=V==="Leave";y(J=>({...J,[Q]:Z}))},[]),W=N=>{const V=N?.class_id?.value??N?.class_id??null,Q=N?.section_id?.value??N?.section_id??null;if(!V||!Q){D.error("Please select Class and Section",{duration:1200});return}r(Z=>({...Z,page:1})),l({classId:V,sectionId:Q}),m([]),y({}),b({})},L=async()=>{if(!d.sessionId||!d.classId){D.error("Please select Session and Class for promotion",{duration:1300});return}if(!Array.isArray(p)||p.length===0){D.error("Please select students to promote",{duration:1200});return}const N=p.map(J=>String(J)).map(J=>{const K=P.get(J)??{},X=!!S?.[J],ee=g?.[J]??{},pe=String(ee.current_result??"Pass");if(X){const le=String(ee.leave_date??"");return{student_id:J,current_result:pe,next_session_status:"Leave",leave_date:le}}const te=String(ee.roll_no??K?.roll_no??""),se=String(ee.section_id??"");return{student_id:J,roll_no:te,section_id:se,current_result:pe,next_session_status:"Continue"}});if(N.some(J=>J?.next_session_status==="Leave"&&!String(J?.leave_date??"").trim())){D.error("Leave date is required for Leave students.",{duration:1500});return}if(N.some(J=>J?.next_session_status==="Continue"&&!String(J?.section_id??"").trim())){D.error("Section is required for Continue students.",{duration:1500});return}const Z={class_id:String(d.classId),session_id:String(d.sessionId),students:N};try{const J=await ct(Xi.promote,Z,t);if(J?.Status&&String(J.Status)!=="success")throw new Error(J?.msg||"Failed to update");D.success("Success! Updated.",{duration:1e3});const K=Number(J?.success_count??0)+Number(J?.leave_count??0),X=n.page===Math.ceil((Number(E)||0)/n.perPage||1),ee=K>0&&K===C.length&&C.length===p.length,pe=X&&ee&&n.page>1?n.page-1:n.page;r(te=>({...te,page:pe})),z?.({cID:o.classId,sID:o.sectionId,page:pe,per_page:n.perPage}),m([]),y({}),b({})}catch(J){D.error(J?.response?.data?.msg??J?.message??"Failed to update",{duration:1500})}},B=i.useMemo(()=>[{title:"Admission No",dataIndex:"admission_no",key:"admission_no",width:140},{title:"Roll No",dataIndex:"roll_no",key:"roll_no",width:120,render:(N,V)=>{const Q=String(V?.id??""),Z=v.has(Q),J=!!S?.[Q],X=(g?.[Q]??{}).roll_no??(J?"":V?.roll_no??"");return e.jsx(s.Input,{value:Z?X:V?.roll_no,style:Z?{textAlign:"center"}:{textAlign:"center",border:"none",background:"transparent",cursor:"default"},disabled:!Z||J,onChange:ee=>U(Q,{roll_no:ee.target.value})})}},{title:"Name",dataIndex:"firstname",key:"name",render:(N,V)=>`${V?.firstname??""} ${V?.lastname??""}`.trim()},{title:"Section",dataIndex:"section",key:"section",width:160,render:(N,V)=>{const Q=String(V?.id??""),Z=v.has(Q),J=!!S?.[Q],X=(g?.[Q]??{}).section_id??"",ee=Array.isArray(j)?j:[];return e.jsx(s.Select,{options:ee,placeholder:Z&&!J?"Select Section":"Section",disabled:!Z||J,value:Z&&!J&&X||void 0,style:{width:"100%"},onChange:pe=>U(Q,{section_id:pe})},`section_${Q}_${h}_${J?"L":"C"}`)}},{title:"Current Result",dataIndex:"current_result",key:"current_result",width:160,render:(N,V)=>{const Q=String(V?.id??""),Z=v.has(Q),J=g?.[Q]??{},K=String(J.current_result??"Pass");return e.jsxs(s.Radio.Group,{value:K,disabled:!Z,buttonStyle:"solid",onChange:X=>U(Q,{current_result:X.target.value}),children:[e.jsx(s.Radio.Button,{value:"Pass",children:"Pass"}),e.jsx(s.Radio.Button,{value:"Fail",children:"Fail"})]})}},{title:"Next Session Status",dataIndex:"next_session_status",key:"next_session_status",width:220,render:(N,V)=>{const Q=String(V?.id??""),Z=v.has(Q),J=!!S?.[Q],K=g?.[Q]??{},X=String(K.leave_date??"");return e.jsxs("div",{style:{display:"grid",gap:6},children:[e.jsxs(s.Radio.Group,{value:J?"Leave":"Continue",disabled:!Z,buttonStyle:"solid",onChange:ee=>H(Q,ee.target.value),children:[e.jsx(s.Radio.Button,{value:"Continue",children:"Continue"}),e.jsx(s.Radio.Button,{value:"Leave",children:"Leave"})]}),Z&&J&&e.jsx(s.DatePicker,{style:{width:"100%"},value:X?ne(X):null,onChange:ee=>U(Q,{leave_date:ee?ee.format("YYYY-MM-DD"):""}),placeholder:"Leave date"})]})}}],[H,S,g,v,h,j,U]),$=i.useMemo(()=>({selectedRowKeys:p,onChange:N=>m((Array.isArray(N)?N:[]).map(V=>String(V)))}),[p]);return i.useEffect(()=>{!o.classId||!o.sectionId||z&&z({cID:o.classId,sID:o.sectionId,page:n.page,per_page:n.perPage})},[n.page,n.perPage,z,o.classId,o.sectionId]),e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Promote Students"}),children:e.jsx(s.Form,{form:a,layout:"vertical",onFinish:W,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{name:"class_id",label:"Class",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:N=>N,children:e.jsx(ae,{options:R,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:N=>{const V=N?.value??null;a.setFieldValue("section_id",null),l({classId:V,sectionId:null})}})}),e.jsx(s.Form.Item,{name:"section_id",label:"Section",rules:[{required:!0,message:"Section is required"}],getValueFromEvent:N=>N,children:e.jsx(ae,{options:_,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Promote Students In Next Session"}),extra:e.jsx(Ma,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsxs("div",{style:{display:"grid",gap:12},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs(s.Typography.Text,{children:["Selected: ",p.length]}),e.jsx(s.Typography.Text,{type:"secondary",children:"Select students → set Continue/Leave → Save"})]}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{label:"Session",options:O,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:O.find(N=>String(N.value)===String(d.sessionId))??null,onChange:N=>c(V=>({...V,sessionId:N?.value??null}))}),e.jsx(ae,{label:"Class",options:R,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:R.find(N=>String(N.value)===String(d.classId))??null,onChange:N=>{const V=N?.value??null;c(Q=>({...Q,classId:V})),f(Q=>!Q)}}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"button",value:"Save",color:"primary",onClick:L})})]}),e.jsx(s.Table,{rowKey:N=>String(N.id),rowSelection:$,columns:B,dataSource:C,loading:F,pagination:{current:n.page,pageSize:n.perPage,total:E,showSizeChanger:!0,onChange:(N,V)=>{r({page:N,perPage:V}),m([]),y({}),b({})}}})]})})]})}function mw({token:t}){return e.jsx(pw,{token:t})}const is=qe.coscholastic,hw=({token:t})=>q(t?[is.table,t]:null,([a,n])=>Y(a,n),{revalidateOnFocus:!1}),fw=({token:t})=>q(t?[is.categoryDropdown,t]:null,([a,n])=>Y(a,n),{revalidateOnFocus:!1}),Od=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]};function gw({token:t}){const[a,n]=i.useState(""),[r,o]=i.useState(null),[l,d]=i.useState(null),c=i.useRef(null),{data:h}=q(t?[qe.master.classes.dropdown,t]:null,([u,x])=>Y(u,x)),f=i.useMemo(()=>Od(h),[h]),{data:p,isLoading:m,mutate:v}=hw({token:t}),S=i.useMemo(()=>{const u=p?.data?.data??p?.data??p??[];return Array.isArray(u)?u:Array.isArray(u?.data)?u.data:[]},[p]),{data:y,mutate:g}=fw({token:t}),b=i.useMemo(()=>Od(y),[y]),T=i.useMemo(()=>(Array.isArray(b)?b:[]).map(u=>({value:u?.value??u?.id,label:u?.label??u?.title??""})),[b]),R=async()=>{const u=String(a??"").trim();if(!u){D.error("Please enter category title",{duration:1200});return}try{await Ze(is.addCategory,{title:u},t),D.success("Success! Added category.",{duration:1e3}),n(""),g()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to add category",{duration:1500})}},I=async u=>{if(u.preventDefault(),!r){D.error("Please select Category",{duration:1200});return}if(!l){D.error("Please select Class",{duration:1200});return}if(!u?.target?.skill?.value){D.error("Please enter Skill Name",{duration:1200});return}const j=new FormData(u.target);j.append("scholastic_catid",String(r)),j.append("class_id",String(l));try{await Zt(is.addSkill,j,t),D.success("Success! Added new item.",{duration:1e3}),u.target.reset(),d(null),v()}catch(M){D.error(M?.response?.data?.msg??M?.message??"Failed to add the new item.",{duration:1500})}},A=async u=>{try{await Ga(is.deleteSkill,u,t),D.success("Success! Deleted item.",{duration:1e3}),v()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to delete the item.",{duration:1500})}},_=i.useMemo(()=>[{title:"Skill Category",dataIndex:"title",key:"title"},{title:"Class",dataIndex:"class",key:"class"},{title:"Skill Name",dataIndex:"skill",key:"skill"},{title:"Action",key:"action",width:90,render:(u,x)=>e.jsx(s.Popconfirm,{title:"Delete this skill?",onConfirm:()=>A(x?.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Co Scholastic Area"}),children:e.jsx("form",{onSubmit:I,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Category"}),e.jsx(ae,{style:{width:"100%"},value:T.find(u=>String(u.value)===String(r))??null,placeholder:"Select Category",onChange:u=>o(u?.value??null),options:T}),e.jsxs("div",{style:{display:"flex",gap:10,alignItems:"center",marginTop:10},children:[e.jsx(G,{placeholder:"New category",ref:c,value:a,onChange:u=>n(u.target.value)}),e.jsx(s.Button,{type:"text",icon:e.jsx(re.PlusOutlined,{}),onClick:R})]})]}),e.jsx(ae,{label:"Class",options:f,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,value:f.find(u=>String(u.value)===String(l))??null,onChange:u=>d(u?.value??null)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,marginBottom:8},children:"Skill Name"}),e.jsx(G,{name:"skill",placeholder:"Skill Name"})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Co Scholastic Area List"}),extra:e.jsx(Ma,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx(s.Table,{rowKey:u=>u.id,columns:_,dataSource:S,loading:m,pagination:!1})})]})}function yw({token:t}){return e.jsx(gw,{token:t})}const xw=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",Pu=({token:t,value:a,onChange:n,action:r,filePath:o})=>{const l=i.useMemo(()=>{if(t)return{Authorization:t}},[t]),d=r??kS(),c=i.useMemo(()=>{if(!o)return d;const h=d.includes("?")?"&":"?";return`${d}${h}filepath=${encodeURIComponent(o)}`},[d,o]);return e.jsx(s.Upload,{maxCount:1,action:c,headers:l,onChange:h=>{if(h?.file?.status==="done"){const f=xw(h?.file?.response);f&&n?.(f)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})})},$d=qe.notes,bw=({token:t,url:a})=>q(t&&a?[a,t]:null,([n,r])=>Y(n,r),{revalidateOnFocus:!1}),Hs=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},jw=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r};function Sw({token:t}){const[a]=s.Form.useForm(),[n]=s.Form.useForm(),[r,o]=i.useState({page:1,perPage:50}),[l,d]=i.useState({classId:null,sectionId:null}),[c,h]=i.useState(!1),[f,p]=i.useState(""),{data:m}=q(t?[qe.master.classes.dropdown,t]:null,([$,N])=>Y($,N)),v=i.useMemo(()=>Hs(m),[m]),S=i.useMemo(()=>l.classId?`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String(l.classId))}`:null,[l.classId]),{data:y}=q(t&&S?[S,t]:null,([$,N])=>Y($,N)),g=i.useMemo(()=>Hs(y),[y]),b=i.useMemo(()=>!l.classId||!l.sectionId?null:`${$d.table}?class_id=${encodeURIComponent(String(l.classId))}&section_id=${encodeURIComponent(String(l.sectionId))}&page=${encodeURIComponent(String(r.page))}&per_page=${encodeURIComponent(String(r.perPage))}`,[l.classId,l.sectionId,r.page,r.perPage]),{data:T,isLoading:R,mutate:I}=bw({token:t,url:b}),A=i.useMemo(()=>{const $=T?.data?.data??T?.data??T??[];return Array.isArray($)?$:Array.isArray($?.data)?$.data:[]},[T]),_=i.useMemo(()=>T?.pagination?.total_rows??T?.pagination?.total??A.length??0,[T,A.length]),[u,x]=i.useState(null),[j,M]=i.useState(null),[O,z]=i.useState(null),[k,F]=i.useState(!1),{data:C}=q(t&&O?[O,t]:null,([$,N])=>Y($,N),{revalidateOnFocus:!1}),E=i.useMemo(()=>Hs(C),[C]),{data:P}=q(t&&j?[j,t]:null,([$,N])=>Y($,N)),U=i.useMemo(()=>Hs(P),[P]),H=$=>{const N=$?.class_id?.value??null,V=$?.section_id?.value??null;!N||!V||(o(Q=>({...Q,page:1})),d({classId:N,sectionId:V}))},W=()=>{p(""),h(!0),x(null),M(null),z(null),F($=>!$),n.resetFields()},L=async $=>{const N=$?.class_id?.value??null,V=$?.section_id?.value??null,Q=$?.sub_id?.value??null,Z=$?.status?.value??"publish",J=$?.title??"",K=$?.remark??"";if(!N||!V||!Q||!J||!K||!f){D.error("Please fill all fields",{duration:1200});return}const X=new FormData;X.append("class_id",String(N)),X.append("section_id",String(V)),X.append("sub_id",String(Q)),X.append("title",String(J)),X.append("remark",String(K)),X.append("status",String(Z)),X.append("file",String(f));try{await Zt($d.add,X,t),D.success("Success! Added new item.",{duration:1e3}),h(!1),I()}catch(ee){D.error(ee?.response?.data?.msg??ee?.message??"Failed to add the new item.",{duration:1500})}},B=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title",align:"center"},{title:"Remarks",dataIndex:"remark",key:"remark",align:"center"},{title:"Subject",dataIndex:"subject",key:"subject",align:"center"},{title:"Staff Name",dataIndex:"teacher_name",key:"teacher_name",align:"center"},{title:"Status",key:"status",align:"center",render:($,N)=>{const V=String(N?.status??"").toLowerCase();return e.jsx(s.Tag,{color:V==="publish"?"green":"red",children:N?.status??"-"})}},{title:"File",key:"file",align:"center",render:($,N)=>{const V=N?.file;if(!V)return"-";const Q=jw(ut(),`uploads/school_${N?.fk_branchID}/student/note/${V}`);return e.jsx("a",{href:Q,target:"_blank",rel:"noreferrer",children:"View File"})}},{title:"Date",dataIndex:"date",key:"date",align:"center"}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{title:"Add Note",open:c,onCancel:()=>h(!1),footer:null,width:820,destroyOnClose:!0,children:e.jsx(s.Form,{form:n,layout:"vertical",onFinish:L,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:$=>$,children:e.jsx(ae,{options:v,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:$=>{const N=$?.value??null;x(N),n.setFieldValue("section_id",null),n.setFieldValue("sub_id",null),z(N?`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String(N))}`:null),M(N?`${qe.master.subjects.dropdown}?class_id=${encodeURIComponent(String(N))}`:null),F(V=>!V)}},`class_${k}`)}),e.jsx(s.Form.Item,{label:"Section",name:"section_id",rules:[{required:!0,message:"Section is required"}],getValueFromEvent:$=>$,children:e.jsx(ae,{options:E,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`section_${k}_${u??"none"}`)}),e.jsx(s.Form.Item,{label:"Subject",name:"sub_id",rules:[{required:!0,message:"Subject is required"}],getValueFromEvent:$=>$,children:e.jsx(ae,{options:U,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`sub_${k}_${j??"none"}`)}),e.jsx(s.Form.Item,{label:"Title",name:"title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(G,{placeholder:"Title"})}),e.jsx(s.Form.Item,{label:"Remark",name:"remark",rules:[{required:!0,message:"Remark is required"}],children:e.jsx(G,{placeholder:"Remark"})}),e.jsx(s.Form.Item,{label:"Status",name:"status",initialValue:{label:"Publish",value:"publish"},getValueFromEvent:$=>$,children:e.jsx(ae,{options:[{label:"Publish",value:"publish"},{label:"Unpublish",value:"unpublish"}],closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx(s.Form.Item,{label:"File",required:!0,children:e.jsx(Pu,{token:t,value:f,onChange:p})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(de,{type:"submit",value:"Save",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>h(!1),children:"Cancel"})]})]})})}),e.jsx(s.Card,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Notes"}),e.jsx(Ma,{actions:["add","export","print","download","filter"],onAdd:W,onPrint:()=>window.print()})]}),children:e.jsx(s.Form,{form:a,layout:"vertical",onFinish:H,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:$=>$,children:e.jsx(ae,{options:v,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:$=>{const N=$?.value??null;a.setFieldValue("section_id",null),d({classId:N,sectionId:null})}})}),e.jsx(s.Form.Item,{label:"Section",name:"section_id",rules:[{required:!0,message:"Section is required"}],getValueFromEvent:$=>$,children:e.jsx(ae,{options:g,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Note List"}),children:e.jsx(s.Table,{rowKey:$=>$.id,columns:B,dataSource:A,loading:R,pagination:{current:r.page,pageSize:r.perPage,total:_,showSizeChanger:!0,onChange:($,N)=>o({page:$,perPage:N})}})})]})}function ww({token:t}){return e.jsx(Sw,{token:t})}const vw=({token:t})=>q(t?[qe.promoteStudents.sessionDropdown,t]:null,([a,n])=>Y(a,n),{revalidateOnFocus:!1}),Fd=qe.transferCertificate,Ai=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Cw={width:"100%",height:40,background:"transparent",border:"none",borderBottom:"1px solid #d9d9d9",borderRadius:0,boxShadow:"none"},_w=(t,a)=>t.inputtype==="Select"?null:t.inputtype==="date"?ne():"",Bd=t=>[{name:"ncc_details",inputtype:"text",label:"Ncc Details",required:!1},{name:"extra_curricular_activites",inputtype:"text",label:"Games played or extra-curricular activities in which the pupil usually took part",required:!1},{name:"generalConduct",inputtype:"text",label:"General conduct",required:!1},{name:"qualified_class",inputtype:"Select",label:"Qualified class",required:!1},{name:"application_date",inputtype:"date",label:"Date of application for certificate",required:!1},{name:"issue_date",inputtype:"date",label:"Date of issue of certificate",required:!1},{name:"reason_of_leaving",inputtype:"text",label:"Reason for leaving the school",required:!1},{name:"otherRemarks",inputtype:"text",label:"Any other remarks",required:!1},{name:"student_id",inputtype:"hidden",label:"",required:!1,value:t},{name:"qualified_for_promotion",inputtype:"radio",label:"Qualified for promotion",required:!1},{name:"failed",inputtype:"radio",label:"Failed",required:!1},{name:"nationality",inputtype:"text",label:"Nationality",required:!1},{name:"checked_by",inputtype:"text",label:"Checked By",required:!1},{name:"checked_by_designation",inputtype:"text",label:"Checked By Designation",required:!1}],Ld=t=>[{name:"change_of_school",inputtype:"text",label:"Change of School",required:!1},{name:"character_remark",inputtype:"text",label:"Character",required:!1},{name:"generalConduct",inputtype:"text",label:"General conduct",required:!1},{name:"application_date",inputtype:"date",label:"Date of application for certificate",required:!1},{name:"issue_date",inputtype:"date",label:"Date of issue of certificate",required:!1},{name:"last_attendance",inputtype:"date",label:"Last Class Attendence",required:!1},{name:"otherRemarks",inputtype:"text",label:"Any other remarks",required:!1},{name:"student_id",inputtype:"hidden",label:"",required:!1,value:t},{name:"qualified_for_promotion",inputtype:"radio",label:"Qualified for promotion",required:!1}];function Aw({token:t,transferCertificateViewPath:a="/AcademicsDashboard/TransferCertificateView",onOpenTransferCertificateView:n}){const[r]=s.Form.useForm(),[o]=s.Form.useForm(),[l,d]=i.useState({page:1,perPage:10}),[c,h]=i.useState({classId:null,sectionId:null,sessionId:null}),[f,p]=i.useState(null),[m,v]=i.useState(!1),{data:S}=q(t?[qe.master.classes.dropdown,t]:null,([B,$])=>Y(B,$)),y=i.useMemo(()=>Ai(S),[S]),{data:g}=q(t&&f?[f,t]:null,([B,$])=>Y(B,$)),b=i.useMemo(()=>Ai(g),[g]),{data:T}=vw({token:t}),R=i.useMemo(()=>Ai(T),[T]),I=i.useMemo(()=>!c.classId||!c.sectionId||!c.sessionId?null:`${Fd.studentList}?class_id=${encodeURIComponent(String(c.classId))}&section_id=${encodeURIComponent(String(c.sectionId))}&session_id=${encodeURIComponent(String(c.sessionId))}&page=${encodeURIComponent(String(l.page))}&per_page=${encodeURIComponent(String(l.perPage))}`,[c.classId,c.sectionId,c.sessionId,l.page,l.perPage]),{data:A,isLoading:_,mutate:u}=q(t&&I?[I,t]:null,([B,$])=>Y(B,$),{revalidateOnFocus:!1,onSuccess:B=>{const $=B?.data?.data??B?.data??[];Array.isArray($)&&$[0]?.transefer_certificate_id&&C(String($[0].transefer_certificate_id))}}),x=i.useMemo(()=>{const B=A?.data?.data??A?.data??A??[];return Array.isArray(B)?B:Array.isArray(B?.data)?B.data:[]},[A]),j=i.useMemo(()=>A?.pagination?.total_rows??A?.pagination?.total??x.length??0,[A,x.length]),[M,O]=i.useState(!1),[z,k]=i.useState(null),[F,C]=i.useState("1"),E=B=>{k(B);const $=F==="1"?Bd(B):Ld(B),N={};$.forEach(V=>{N[V.name]=V.value??_w(V)}),o.setFieldsValue(N),O(!0)},P=async B=>{if(!B)return;if(typeof n=="function")return n(B);const $=`${a}?id=${encodeURIComponent(String(B))}`;window.location.href=$},U=B=>{const $=B?.class_id?.value??null,N=B?.section_id?.value??null,V=B?.session_id?.value??null;if(!$||!N||!V){D.error("Please select Class, Section and Session",{duration:1200});return}d(Q=>({...Q,page:1})),h({classId:$,sectionId:N,sessionId:V})},H=async B=>{const $=new FormData;Object.entries(B??{}).forEach(([N,V])=>{if(V!=null){if(ne.isDayjs(V)){$.append(N,V.format("YYYY-MM-DD"));return}$.append(N,String(V))}});try{await Zt(Fd.addData,$,t),D.success("Success! Added new item.",{duration:1e3}),O(!1),k(null),u()}catch(N){D.error(N?.response?.data?.msg??N?.message??"Failed to add the new item.",{duration:1500})}},W=i.useMemo(()=>F==="1"?Bd(z):Ld(z),[F,z]),L=i.useMemo(()=>[{title:"Admission no",dataIndex:"admission_no",key:"admission_no",align:"center"},{title:"Roll NO",dataIndex:"roll_no",key:"roll_no",align:"center"},{title:"Name",dataIndex:"full_name",key:"full_name",align:"center"},{title:"Class",dataIndex:"class",key:"class",align:"center"},{title:"Section",dataIndex:"section",key:"section",align:"center"},{title:"Guardian Name",dataIndex:"guardian_name",key:"guardian_name",align:"center"},{title:"Mobile No",dataIndex:"mobileno",key:"mobileno",align:"center"},{title:"Action",key:"action",align:"center",width:80,render:(B,$)=>e.jsx(s.Button,{type:"text",icon:$?.transfer_certificate_data==="not_present"?e.jsx(re.EyeOutlined,{}):e.jsx(re.CheckOutlined,{}),onClick:()=>{$?.transfer_certificate_data==="not_present"?E($?.id):P($?.id)}})}],[F]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{title:"Transfer Certificate",open:M,onCancel:()=>O(!1),footer:null,width:820,destroyOnClose:!0,children:e.jsxs(s.Form,{form:o,layout:"vertical",onFinish:H,children:[e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:16},children:W.map(B=>B.inputtype==="hidden"?e.jsx(s.Form.Item,{name:B.name,initialValue:B.value??"",style:{display:"none"},children:e.jsx("input",{type:"hidden"})},B.name):B.inputtype==="date"?e.jsx(s.Form.Item,{label:B.label,name:B.name,children:e.jsx(s.DatePicker,{format:"YYYY-MM-DD",style:Cw})},B.name):B.inputtype==="radio"?e.jsx(s.Form.Item,{label:B.label,name:B.name,children:e.jsx(s.Radio.Group,{options:[{label:"Yes",value:"Yes"},{label:"No",value:"No"}]})},B.name):B.inputtype==="Select"?e.jsx(s.Form.Item,{label:B.label,name:B.name,getValueFromEvent:$=>$,children:e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})},B.name):e.jsx(s.Form.Item,{label:B.label,name:B.name,children:e.jsx(G,{placeholder:B.label})},B.name))}),e.jsxs(s.Space,{style:{width:"100%",justifyContent:"flex-end"},children:[e.jsx(de,{type:"submit",value:"Submit",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>O(!1),children:"Cancel"})]})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Student History"}),children:e.jsx(s.Form,{form:r,layout:"vertical",onFinish:U,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:B=>B,children:e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:B=>{const $=B?.value??null;p($?`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String($))}`:null),v(N=>!N),r.setFieldValue("section_id",null)}})}),e.jsx(s.Form.Item,{label:"Section",name:"section_id",getValueFromEvent:B=>B,children:e.jsx(ae,{options:b,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`section_${m}`)}),e.jsx(s.Form.Item,{label:"Session",name:"session_id",rules:[{required:!0,message:"Session is required"}],getValueFromEvent:B=>B,children:e.jsx(ae,{options:R,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Student List"}),extra:e.jsx(Ma,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx(s.Table,{rowKey:B=>B.id,columns:L,dataSource:x,loading:_,pagination:{current:l.page,pageSize:l.perPage,total:j,showSizeChanger:!0,onChange:(B,$)=>d({page:B,perPage:$})}})})]})}function Dw({token:t,transferCertificateViewPath:a,onOpenTransferCertificateView:n}){return e.jsx(Aw,{token:t,transferCertificateViewPath:a,onOpenTransferCertificateView:n})}const Tw=({token:t,url:a})=>q(t&&a?[a,t]:null,([n,r])=>Y(n,r),{revalidateOnFocus:!1}),Di=qe.syllabus,Ud=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},kw=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r};function Rw({token:t}){const[a]=s.Form.useForm(),[n]=s.Form.useForm(),[r,o]=i.useState({page:1,perPage:50}),[l,d]=i.useState({classId:null}),[c,h]=i.useState(!1),[f,p]=i.useState(null),[m,v]=i.useState(""),{data:S}=q(t?[qe.master.classes.dropdown,t]:null,([P,U])=>Y(P,U)),y=i.useMemo(()=>Ud(S),[S]),g=i.useMemo(()=>l.classId?`${Di.table}?class_id=${encodeURIComponent(String(l.classId))}&page=${encodeURIComponent(String(r.page))}&per_page=${encodeURIComponent(String(r.perPage))}`:null,[l.classId,r.page,r.perPage]),{data:b,isLoading:T,mutate:R}=Tw({token:t,url:g}),I=i.useMemo(()=>{const P=b?.data?.data??b?.data??b??[];return Array.isArray(P)?P:Array.isArray(P?.data)?P.data:[]},[b]),A=i.useMemo(()=>b?.pagination?.total_rows??b?.pagination?.total??I.length??0,[b,I.length]),[_,u]=i.useState(null),[x,j]=i.useState(!1),{data:M}=q(t&&_?[_,t]:null,([P,U])=>Y(P,U),{revalidateOnFocus:!1}),O=i.useMemo(()=>Ud(M),[M]),z=P=>{const U=P?.class_id?.value??null;U&&(o(H=>({...H,page:1})),d({classId:U}))},k=()=>{p(null),v(""),u(null),j(P=>!P),n.resetFields(),h(!0)},F=P=>{p(P),v(P?.attchement??"");const U=P?.class_id;u(U?`${qe.master.subjects.dropdown}?class_id=${encodeURIComponent(String(U))}`:null),j(H=>!H),n.setFieldsValue({class_id:y.find(H=>String(H.value)===String(U))??null,sub_id:O.find(H=>String(H.value)===String(P?.sub_id??P?.subject_id))??(P?.sub_id||P?.subject_id?{label:P?.subject_title??"Subject",value:P?.sub_id??P?.subject_id}:null),title:P?.title??"",description:P?.description??""}),h(!0)},C=async P=>{const U=P?.class_id?.value??null,H=P?.sub_id?.value??null,W=P?.title??"",L=P?.description??"";if(!U||!H||!W||!L||!m){D.error("Please fill all fields",{duration:1200});return}const B=new FormData;B.append("class_id",String(U)),B.append("sub_id",String(H)),B.append("title",String(W)),B.append("description",String(L)),B.append("file",String(m));try{f?.id?(B.append("id",String(f.id)),await Zt(Di.edit,B,t),D.success("Success! Updated item.",{duration:1e3})):(await Zt(Di.add,B,t),D.success("Success! Added new item.",{duration:1e3})),h(!1),p(null),R()}catch($){D.error($?.response?.data?.msg??$?.message??"Failed to save",{duration:1500})}},E=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title",align:"center"},{title:"Description",dataIndex:"description",key:"description",align:"center"},{title:"Subject",dataIndex:"subject_title",key:"subject_title",align:"center"},{title:"File",key:"file",align:"center",render:(P,U)=>{const H=U?.attchement;if(!H)return"-";const W=kw(ut(),`uploads/school_${U?.fk_branchID}/student/syllabus/${H}`);return e.jsx("a",{href:W,target:"_blank",rel:"noreferrer",children:"View File"})}},{title:"Action",key:"action",width:80,align:"center",render:(P,U)=>e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>F(U)})}],[O,y]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Modal,{title:f?"Edit Syllabus":"Add Syllabus",open:c,onCancel:()=>{h(!1),p(null),v("")},footer:null,width:820,destroyOnClose:!0,children:e.jsx(s.Form,{form:n,layout:"vertical",onFinish:C,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:P=>P,children:e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1,onChange:P=>{const U=P?.value??null;n.setFieldValue("sub_id",null),u(U?`${qe.master.subjects.dropdown}?class_id=${encodeURIComponent(String(U))}`:null),j(H=>!H)}},`class_${f?.id??"add"}_${x}`)}),e.jsx(s.Form.Item,{label:"Subject",name:"sub_id",rules:[{required:!0,message:"Subject is required"}],getValueFromEvent:P=>P,children:e.jsx(ae,{options:O,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1},`sub_${f?.id??"add"}_${x}_${_??"none"}`)}),e.jsx(s.Form.Item,{label:"Title",name:"title",rules:[{required:!0,message:"Title is required"}],children:e.jsx(G,{placeholder:"Title"})}),e.jsx(s.Form.Item,{label:"Description",name:"description",rules:[{required:!0,message:"Description is required"}],children:e.jsx(kt,{placeholder:"Description"})}),e.jsx(s.Form.Item,{label:"File",required:!0,children:e.jsx(Pu,{token:t,value:m,onChange:v,action:RS(),filePath:"student/syllabus"})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(de,{type:"submit",value:"Save",color:"primary"}),e.jsx(s.Button,{type:"text",onClick:()=>h(!1),children:"Cancel"})]})]})})}),e.jsx(s.Card,{title:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Syllabus"}),e.jsx(Ma,{actions:["add","export","print","download","filter"],onAdd:k,onPrint:()=>window.print()})]}),children:e.jsx(s.Form,{form:a,layout:"vertical",onFinish:z,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{label:"Class",name:"class_id",rules:[{required:!0,message:"Class is required"}],getValueFromEvent:P=>P,children:e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,allowSelectAll:!1})}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Syllabus List"}),children:e.jsx(s.Table,{rowKey:P=>P.id,columns:E,dataSource:I,loading:T,pagination:{current:r.page,pageSize:r.perPage,total:A,showSizeChanger:!0,onChange:(P,U)=>o({page:P,perPage:U})}})})]})}function Iw({token:t}){return e.jsx(Rw,{token:t})}const Yr=qe.timetable,Nd=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},zd=t=>{if(!t)return"";const a=ne(t,"HH:mm:ss");return a.isValid()?a.format("h:mm a"):String(t)},Pw=t=>{const a=String(t).trim().toLowerCase();if(!a)return"default";let n=0;for(let o=0;o<a.length;o+=1)n=(n*31+a.charCodeAt(o))%1e5;const r=["magenta","red","volcano","orange","gold","lime","green","cyan","blue","geekblue","purple"];return r[n%r.length]},qd=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],Mw=t=>{const a=String(t||"");return a?a.charAt(0).toUpperCase()+a.slice(1):"-"};function Ew({token:t}){const[a,n]=i.useState(null),[r,o]=i.useState(!1),[l,d]=i.useState(null),[c,h]=i.useState(""),[f,p]=i.useState(""),{data:m}=q(t?[qe.master.classes.dropdown,t]:null,([u,x])=>Y(u,x)),v=i.useMemo(()=>Nd(m),[m]),{data:S}=q(t&&a?[a,t]:null,([u,x])=>Y(u,x)),y=i.useMemo(()=>Nd(S),[S]),{data:g,isLoading:b}=q(t&&l?[l,t]:null,([u,x])=>Y(u,x),{revalidateOnFocus:!1}),T=i.useMemo(()=>g?.days??g?.data?.days??g?.data?.data?.days??{},[g]),{dataSource:R,daySpanByFirstKey:I}=i.useMemo(()=>{const u=Object.entries(T||{}).slice().sort((M,O)=>qd.indexOf(String(M[0]).toLowerCase())-qd.indexOf(String(O[0]).toLowerCase())),x=new Map,j=[];for(const[M,O]of u){const z=(Array.isArray(O)?O:[]).slice().sort((F,C)=>Number(F?.order_no||0)-Number(C?.order_no||0)),k=z.length;for(let F=0;F<k;F+=1){const C=z[F],E=C?.id||`${M}-${C?.order_no}-${F}`;F===0&&x.set(E,k),j.push({key:E,_dayKey:M,...C})}}return{dataSource:j,daySpanByFirstKey:x}},[T]),A=i.useMemo(()=>[{title:"Day",dataIndex:"_dayKey",key:"_dayKey",width:140,render:(u,x)=>{const j=I.get(x.key);return j===void 0?{children:null,props:{rowSpan:0}}:{children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(re.CalendarOutlined,{style:{color:"#5080f8"}}),e.jsx(s.Tag,{color:"geekblue",style:{margin:0,fontWeight:500},children:Mw(u)})]}),props:{rowSpan:j}}}},{title:"Period",dataIndex:"order_no",key:"order_no",width:90,render:u=>e.jsx(s.Tag,{color:"#5080f8",style:{fontWeight:500},children:u})},{title:"Time",key:"time",width:180,render:(u,x)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(re.ClockCircleOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsxs(s.Typography.Text,{children:[zd(x?.time_from)," - ",zd(x?.time_to)]})]})},{title:"Subject",key:"subject",render:(u,x)=>{if(String(x?.is_break)==="1")return e.jsx(s.Tag,{color:"orange",style:{fontWeight:500},children:"Tiffin Break"});const M=x?.subject_name||"-";return e.jsx(s.Tag,{color:Pw(M),style:{fontWeight:500},children:M})}},{title:"Teacher",key:"teacher",render:(u,x)=>{const j=String(x?.is_break)==="1";return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(re.UserOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsx(s.Typography.Text,{children:j?"-":x?.teacher_full_name||"-"})]})}},{title:"Room",key:"room_no",width:120,render:(u,x)=>{const j=String(x?.is_break)==="1";return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(re.HomeOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsx(s.Typography.Text,{children:j?"-":x?.room_no||"-"})]})}}],[I]),_=u=>{u.preventDefault();const x=u.target.class_id?.value,j=u.target.section_id?.value;if(!x||!j)return;const M=v.find(F=>String(F.value)===String(x)),O=y.find(F=>String(F.value)===String(j));h(M?.label||""),p(O?.label||"");const k=`${Yr.byClassSection}/${x}/section/${j}`;d(k)};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Class / Section Wise Timetable"}),extra:e.jsx(Ma,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx("form",{onSubmit:_,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:v,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",allowSelectAll:!1,required:!0,onChange:u=>{n(`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String(u?.value??""))}`),o(x=>!x)}}),e.jsx(ae,{options:y,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",allowSelectAll:!1,required:!0},`section_${r}`),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:c||f?`Timetable: ${c} ${f}`:"Timetable"}),children:e.jsx(s.Table,{size:"middle",bordered:!1,pagination:!1,dataSource:R,columns:A,rowKey:"key",loading:b,scroll:{x:"max-content"}})})]})}const Ow=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},Yd=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],$w=t=>{const a=String(t||"");return a?a.charAt(0).toUpperCase()+a.slice(1):"-"},Wd=t=>{if(!t)return"";const a=ne(t,"HH:mm:ss");return a.isValid()?a.format("h:mm a"):String(t)},Fw=t=>{const a=String(t).trim().toLowerCase();if(!a)return"default";let n=0;for(let o=0;o<a.length;o+=1)n=(n*31+a.charCodeAt(o))%1e5;const r=["magenta","red","volcano","orange","gold","lime","green","cyan","blue","geekblue","purple"];return r[n%r.length]};function Bw({token:t}){const[a,n]=i.useState(null),[r,o]=i.useState(null),{data:l}=q(t?[qe.assignByClass.teacherDropdown,t]:null,([S,y])=>Y(S,y)),d=i.useMemo(()=>Ow(l),[l]),{data:c,isLoading:h}=q(t&&r?[r,t]:null,([S,y])=>Y(S,y),{revalidateOnFocus:!1}),{dataSource:f,daySpanByFirstKey:p}=i.useMemo(()=>{const y=(Array.isArray(c?.data)&&c.data||Array.isArray(c?.data?.data)&&c.data.data||[]).slice().sort((R,I)=>{const A=Yd.indexOf(String(R?.day_name||"").toLowerCase()),_=Yd.indexOf(String(I?.day_name||"").toLowerCase());if(A!==_)return A-_;const u=Number(R?.order_no||0),x=Number(I?.order_no||0);return u!==x?u-x:String(R?.time_from||"").localeCompare(String(I?.time_from||""))}),g=new Map,b=[];let T=0;for(;T<y.length;){const R=String(y[T]?.day_name||"").toLowerCase();let I=T;for(;I<y.length&&String(y[I]?.day_name||"").toLowerCase()===R;)I+=1;const A=I-T;for(let _=T;_<I;_+=1){const u=y[_],x=u?.id||`${R}-${u?.order_no}-${_}`;_===T&&g.set(x,A),b.push({key:x,_dayKey:R,...u})}T=I}return{dataSource:b,daySpanByFirstKey:g}},[c]),m=i.useMemo(()=>[{title:"Day",dataIndex:"_dayKey",key:"_dayKey",width:140,render:(S,y)=>{const g=p.get(y.key);return g===void 0?{children:null,props:{rowSpan:0}}:{children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(re.CalendarOutlined,{style:{color:"#5080f8"}}),e.jsx(s.Tag,{color:"geekblue",style:{margin:0,fontWeight:500},children:$w(S)})]}),props:{rowSpan:g}}}},{title:"Period",dataIndex:"order_no",key:"order_no",width:90,render:S=>e.jsx(s.Tag,{color:"#5080f8",style:{fontWeight:500},children:S})},{title:"Time",key:"time",width:180,render:(S,y)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(re.ClockCircleOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsxs(s.Typography.Text,{children:[Wd(y?.time_from)," - ",Wd(y?.time_to)]})]})},{title:"Subject",key:"subject",render:(S,y)=>{if(String(y?.is_break)==="1")return e.jsx(s.Tag,{color:"orange",style:{fontWeight:500},children:"Tiffin Break"});const b=y?.subject_name||"-";return e.jsx(s.Tag,{color:Fw(b),style:{fontWeight:500},children:b})}},{title:"Class",key:"class",width:160,render:(S,y)=>e.jsxs(s.Tag,{color:"purple",style:{fontWeight:500},children:[y?.class_name||y?.class_id||"-"," ",y?.section_name?`(${y.section_name})`:""]})},{title:"Room",key:"room_no",width:120,render:(S,y)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(re.HomeOutlined,{style:{color:"#5080f8",fontSize:14}}),e.jsx(s.Typography.Text,{children:y?.room_no||"-"})]})}],[p]),v=S=>{S.preventDefault();const y=S.target.teacher_id?.value;if(!y)return;n(y);const b=`${Yr.teacherTimetable}${encodeURIComponent(String(y))}`;o(b)};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Teacher Wise Timetable"}),extra:e.jsx(Ma,{actions:["export","print"],onExport:()=>{},onPrint:()=>window.print()}),children:e.jsx("form",{onSubmit:v,children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(ae,{options:d,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Teacher",name:"teacher_id",allowSelectAll:!1,required:!0}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Timetable"}),children:e.jsx(s.Table,{size:"middle",bordered:!1,pagination:!1,dataSource:f,columns:m,rowKey:"key",loading:h,scroll:{x:"max-content"}})})]})}function Vd(t){if(!t)return null;const a=String(t).trim().replaceAll(".",":");if(!a)return null;const n=a.toLowerCase(),r=n.includes("am")||n.includes("pm");let o=0,l=0,d=0;if(r){const h=n.replace(/\s+/g," ").match(/^(\d{1,2})\s*:\s*(\d{1,2})(?:\s*:\s*(\d{1,2}))?\s*(am|pm)$/i);if(!h)return null;o=Number.parseInt(h[1],10),l=Number.parseInt(h[2],10),d=Number.parseInt(h[3]||"0",10);const f=h[4].toLowerCase();f==="pm"&&o<12&&(o+=12),f==="am"&&o===12&&(o=0)}else{const c=a.split(":").map(h=>h.trim());if(c.length<2)return null;o=Number.parseInt(c[0],10),l=Number.parseInt(c[1],10),d=Number.parseInt(c[2]||"0",10)}return![o,l,d].every(c=>Number.isFinite(c))||o<0||o>23||l<0||l>59||d<0||d>59?null:ne().hour(o).minute(l).second(d).millisecond(0)}function Gn(t,a){const n=Number.parseInt(a,10);return!Number.isFinite(n)||n<=0||!t||!t.isValid?.()?null:t.add(n,"minute")}const pr=t=>{if(Array.isArray(t))return t;if(t&&typeof t=="object"){if(typeof t?.Status=="string"){if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}if(Array.isArray(t?.data))return t.data;if(Array.isArray(t?.data?.data))return t.data.data}return[]},ns={0:"sunday",1:"monday",2:"tuesday",3:"wednesday",4:"thursday",5:"friday",6:"saturday"},Lw=t=>{const a=ns[String(t)];return a?a.charAt(0).toUpperCase()+a.slice(1):String(t)},Uw=({token:t,classId:a,sectionId:n,subjectId:r,value:o,onChange:l,disabled:d})=>{const c=t&&a&&n&&r?`${Yr.teachersBySubject}?subject_id=${encodeURIComponent(String(r))}&class_id=${encodeURIComponent(String(a))}&section_id=${encodeURIComponent(String(n))}`:null,{data:h,isLoading:f}=q(c?[c,t]:null,([m,v])=>Y(m,v),{revalidateOnFocus:!1}),p=i.useMemo(()=>pr(h?.data??h).map(v=>({value:v?.value??v?.id,label:v?.label??v?.name??v?.teacher_name??""})),[h]);return e.jsx(s.Select,{placeholder:d?"-":"Select Teacher",loading:f,disabled:d,style:{width:"100%"},options:p,value:o?String(o):void 0,onChange:m=>l?.(m),showSearch:!0,optionFilterProp:"label"})};function Nw({token:t}){const[a]=s.Form.useForm(),[n,r]=i.useState({classId:null,sectionId:null,dayKey:"1",daysEnabled:{0:!1,1:!0,2:!0,3:!0,4:!0,5:!0,6:!0}}),[o,l]=i.useState({startTime:null,endTime:null,duration:40,interval:0,roomNo:"",tiffinEnabled:!1,tiffinAfterPeriod:3,tiffinDuration:20}),[d,c]=i.useState({0:[],1:[],2:[],3:[],4:[],5:[],6:[]}),[h,f]=i.useState(!1),p=i.useMemo(()=>t?qe.master.classes.dropdown:null,[t]),{data:m}=q(p?[p,t]:null,([k,F])=>Y(k,F)),v=i.useMemo(()=>pr(m).map(k=>({value:k?.value??k?.id,label:k?.label??k?.title??""})),[m]),S=i.useMemo(()=>!t||!n.classId?null:`${qe.master.sections.byClass}?class_id=${encodeURIComponent(String(n.classId))}`,[n.classId,t]),{data:y}=q(S?[S,t]:null,([k,F])=>Y(k,F)),g=i.useMemo(()=>pr(y).map(k=>({value:k?.value??k?.id,label:k?.label??k?.title??""})),[y]),b=i.useMemo(()=>!t||!n.classId?null:`${qe.master.subjects.byClassLabelValue}?class_id=${encodeURIComponent(String(n.classId))}`,[n.classId,t]),{data:T}=q(b?[b,t]:null,([k,F])=>Y(k,F)),R=i.useMemo(()=>pr(T).map(k=>({value:k?.value??k?.id,label:k?.label??k?.title??""})),[T]),I=i.useMemo(()=>Array.isArray(d?.[n.dayKey])?d[n.dayKey]:[],[n.dayKey,d]),A=i.useCallback((k,F,C)=>{c(E=>{const P={...E},U=Array.isArray(P[k])?P[k].slice():[];return U[F]={...U[F]??{},...C},P[k]=U,P})},[]),_=i.useCallback((k,F)=>{c(C=>{const E={...C},P=Array.isArray(E[k])?E[k].slice():[];return P.splice(F,1),E[k]=P.map((U,H)=>({...U,order_no:H+1})),E})},[]),u=i.useCallback(k=>{c(F=>{const C={...F},E=Array.isArray(C[k])?C[k].slice():[];let P=null,U=null;const H=E[E.length-1];if(H?.time_to){const W=Vd(H.time_to),L=Number.parseInt(o.interval,10)||0,B=Number.parseInt(o.duration,10)||0,$=Gn(W,L),N=B>0?Gn($,B):null;P=$?.isValid?.()?$.format("HH:mm:ss"):null,U=N?.isValid?.()?N.format("HH:mm:ss"):null}return E.push({order_no:E.length+1,subject_id:"",teacher_id:"",room_no:o.roomNo??"",time_from:P,time_to:U,is_break:!1}),C[k]=E,C})},[o.duration,o.interval,o.roomNo]),x=i.useCallback(()=>{const k=o.startTime,F=o.endTime,C=Number.parseInt(o.duration,10),E=Number.parseInt(o.interval,10);if(!k||!k.isValid?.()){D.error("Start time is required",{duration:1500});return}if(!F||!F.isValid?.()){D.error("End time is required",{duration:1500});return}if(!F.isAfter(k)){D.error("End time must be after start time",{duration:1500});return}if(!Number.isFinite(C)||C<=0){D.error("Duration must be a positive number",{duration:1500});return}if(!Number.isFinite(E)||E<0){D.error("Interval must be 0 or more",{duration:1500});return}const P=()=>{const U=[];let H=k;for(let W=0;W<50;W+=1){const L=Gn(H,C);if(!L||!L.isValid?.()||L.isAfter(F))break;U.push({order_no:U.length+1,subject_id:"",teacher_id:"",room_no:o.roomNo??"",time_from:H.format("HH:mm:ss"),time_to:L.format("HH:mm:ss"),is_break:!1});const B=Gn(L,E);if(!B||!B.isValid?.()||B.isAfter(F)||B.isSame(F))break;H=B}if(o.tiffinEnabled){const W=Math.max(0,Number.parseInt(o.tiffinAfterPeriod,10)||0),L=Math.max(0,Number.parseInt(o.tiffinDuration,10)||0),B=Math.min(W,U.length);if(B>0&&L>0){const $=U[B-1],N=$?.time_to?Vd($.time_to):null,V=N?Gn(N,L):null;N?.isValid?.()&&V?.isValid?.()&&!V.isAfter(F)&&U.splice(B,0,{order_no:B+1,subject_id:"",teacher_id:"",room_no:o.roomNo??"",time_from:N.format("HH:mm:ss"),time_to:V.format("HH:mm:ss"),is_break:!0})}}return U.map((W,L)=>({...W,order_no:L+1}))};c(U=>{const H={...U};return Object.keys(ns).forEach(W=>{n.daysEnabled?.[W]&&(H[W]=P())}),H}),D.success("Generated schedule",{duration:1e3})},[o,n.daysEnabled]),j=i.useCallback(()=>{const k=localStorage.getItem("genrall_settings"),C=(k?JSON.parse(k):{})?.session_id??"1",E=n.classId,P=n.sectionId,U=Object.keys(ns).map(H=>{const W=(Array.isArray(d?.[H])?d[H]:[]).map((L,B)=>({order_no:B+1,subject_id:L?.is_break?0:L?.subject_id??null,teacher_id:L?.is_break?0:L?.teacher_id??null,room_no:L?.room_no??"",time_from:L?.time_from??null,time_to:L?.time_to??null,is_break:L?.is_break?1:0}));return{day:ns[H],class_id:E,section_id:P,session_id:C,args:W}});return{class_id:E,section_id:P,session_id:C,days:U}},[n.classId,n.sectionId,d]),M=i.useCallback(async()=>{if(!n.classId||!n.sectionId){D.error("Please select Class and Section",{duration:1500});return}const k=j(),F=Array.isArray(k?.days)?k.days:[];if(!F.some(P=>Array.isArray(P?.args)&&P.args.length>0)){D.error("No timetable rows to submit",{duration:1500});return}const E=P=>{const U=P?.is_break;return U===1||U==="1"||U===!0?!0:String(U??"").toLowerCase()==="true"};F.some(P=>(Array.isArray(P?.args)?P.args:[]).some(U=>String(U?.time_from??"").trim()&&String(U?.time_to??"").trim()?E(U)?!1:!String(U?.subject_id??"").trim()||!String(U?.teacher_id??"").trim():!0)),f(!0);try{const P=Yr.save,U=P==="api/timetable/save"?"timetable/save":null,H=async B=>{const $=await hs(B,k,t);if($&&typeof $=="object")return $;throw new Error("No response from server")};let W;try{W=await H(P)}catch{W=await H(U)}const L=String(W?.msg??"");if(String(W?.Status)==="Success"){if(Array.isArray(W?.data)&&W.data.length===0&&L){D.error(L,{duration:3e3});return}D.success(L||"Weekly Time Table added successfully!",{duration:1200});return}D.error(L||"Failed to add time table",{duration:3e3})}catch(P){D.error(P?.response?.data?.msg??P?.message??"Failed to add time table",{duration:3e3})}finally{f(!1)}},[j,n.classId,n.sectionId,t]),O=i.useMemo(()=>[{title:"Period",dataIndex:"order_no",key:"order_no",width:80},{title:"Time From",dataIndex:"time_from",key:"time_from",width:120,render:k=>k?ne(k,"HH:mm:ss").format("h:mm a"):"-"},{title:"Time To",dataIndex:"time_to",key:"time_to",width:120,render:k=>k?ne(k,"HH:mm:ss").format("h:mm a"):"-"},{title:"Break",dataIndex:"is_break",key:"is_break",width:90,render:(k,F,C)=>e.jsx(s.Switch,{checked:!!F?.is_break,onChange:E=>{A(n.dayKey,C,{is_break:E,subject_id:E?"":F?.subject_id??"",teacher_id:E?"":F?.teacher_id??""})}})},{title:"Subject",dataIndex:"subject_id",key:"subject_id",width:220,render:(k,F,C)=>e.jsx(s.Select,{placeholder:F?.is_break?"-":"Select Subject",disabled:!!F?.is_break,style:{width:"100%"},options:R,value:F?.subject_id?String(F.subject_id):void 0,onChange:E=>A(n.dayKey,C,{subject_id:E,teacher_id:""}),showSearch:!0,optionFilterProp:"label"})},{title:"Teacher",dataIndex:"teacher_id",key:"teacher_id",width:240,render:(k,F,C)=>e.jsx(Uw,{token:t,classId:n.classId,sectionId:n.sectionId,subjectId:F?.subject_id,disabled:!!F?.is_break||!F?.subject_id,value:F?.teacher_id,onChange:E=>A(n.dayKey,C,{teacher_id:E})})},{title:"Room",dataIndex:"room_no",key:"room_no",width:140,render:(k,F,C)=>e.jsx(s.Input,{value:F?.room_no??"",onChange:E=>A(n.dayKey,C,{room_no:E.target.value})})},{title:"Action",key:"action",width:90,render:(k,F,C)=>e.jsx(s.Popconfirm,{title:"Delete this row?",onConfirm:()=>_(n.dayKey,C),children:e.jsx(s.Button,{danger:!0,type:"text",children:"Delete"})})}],[n.classId,n.dayKey,n.sectionId,_,R,t,A]),z=e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Create Time Table"}),children:e.jsx(s.Form,{form:a,layout:"vertical",initialValues:{duration:o.duration,interval:o.interval,roomNo:o.roomNo,tiffinEnabled:o.tiffinEnabled,tiffinAfterPeriod:o.tiffinAfterPeriod,tiffinDuration:o.tiffinDuration},children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsx(s.Form.Item,{label:"Class",required:!0,children:e.jsx(s.Select,{placeholder:"Select Class",options:v,value:n.classId?String(n.classId):void 0,onChange:k=>{r(F=>({...F,classId:k,sectionId:null})),c({0:[],1:[],2:[],3:[],4:[],5:[],6:[]})},showSearch:!0,optionFilterProp:"label"})}),e.jsx(s.Form.Item,{label:"Section",required:!0,children:e.jsx(s.Select,{placeholder:"Select Section",options:g,value:n.sectionId?String(n.sectionId):void 0,onChange:k=>r(F=>({...F,sectionId:k})),disabled:!n.classId,showSearch:!0,optionFilterProp:"label"})}),e.jsx(s.Form.Item,{label:"Start Time",required:!0,children:e.jsx(s.TimePicker,{value:o.startTime,onChange:k=>l(F=>({...F,startTime:k})),use12Hours:!0,format:"h:mm a",style:{width:"100%"}})}),e.jsx(s.Form.Item,{label:"End Time",required:!0,children:e.jsx(s.TimePicker,{value:o.endTime,onChange:k=>l(F=>({...F,endTime:k})),use12Hours:!0,format:"h:mm a",style:{width:"100%"}})}),e.jsx(s.Form.Item,{label:"Duration (min)",required:!0,children:e.jsx(s.InputNumber,{min:1,value:o.duration,onChange:k=>l(F=>({...F,duration:k})),style:{width:"100%"}})}),e.jsx(s.Form.Item,{label:"Interval (min)",children:e.jsx(s.InputNumber,{min:0,value:o.interval,onChange:k=>l(F=>({...F,interval:k})),style:{width:"100%"}})}),e.jsx(s.Form.Item,{label:"Room No",children:e.jsx(s.Input,{value:o.roomNo,onChange:k=>l(F=>({...F,roomNo:k.target.value}))})}),e.jsx(s.Form.Item,{label:"Tiffin Break",children:e.jsxs(s.Space,{children:[e.jsx(s.Switch,{checked:o.tiffinEnabled,onChange:k=>l(F=>({...F,tiffinEnabled:k}))}),e.jsx(s.Typography.Text,{type:"secondary",children:o.tiffinEnabled?"Enabled":"Disabled"})]})}),e.jsx(s.Form.Item,{label:"After Period",tooltip:"Insert break row after this period",style:{marginBottom:0},children:e.jsx(s.InputNumber,{min:1,value:o.tiffinAfterPeriod,onChange:k=>l(F=>({...F,tiffinAfterPeriod:k})),style:{width:"100%"},disabled:!o.tiffinEnabled})}),e.jsx(s.Form.Item,{label:"Break Duration (min)",style:{marginBottom:0},children:e.jsx(s.InputNumber,{min:1,value:o.tiffinDuration,onChange:k=>l(F=>({...F,tiffinDuration:k})),style:{width:"100%"},disabled:!o.tiffinEnabled})}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(s.Button,{onClick:x,children:"Generate"}),e.jsx(s.Button,{type:"primary",loading:h,onClick:M,children:"Save"})]})]})})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Edit Week"}),extra:e.jsxs(s.Space,{children:[e.jsx(s.Typography.Text,{type:"secondary",children:"Day"}),e.jsx(s.Select,{style:{width:160},value:n.dayKey,onChange:k=>r(F=>({...F,dayKey:k})),options:Object.keys(ns).map(k=>({value:String(k),label:Lw(k)}))}),e.jsx(s.Button,{onClick:()=>u(n.dayKey),children:"Add Row"})]}),children:e.jsx(s.Table,{rowKey:(k,F)=>`${n.dayKey}_${F}`,columns:O,dataSource:I,pagination:!1,size:"middle",scroll:{x:"max-content"}})})]});return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(s.Typography.Title,{level:4,style:{margin:0},children:"Time Table"}),e.jsx(s.Tabs,{type:"card",items:[{key:"create",label:"Create",children:z},{key:"routine",label:"Routine",children:e.jsx(Ew,{token:t})},{key:"teacher",label:"Teacher Wise",children:e.jsx(Bw,{token:t})}]})]})}function zw({token:t}){return e.jsx(Nw,{token:t})}function qw(){return null}const Ja=t=>t??localStorage.getItem("authToken")??"",Yw=(t,a)=>{const n=String(t??""),r=String(a);return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},lt={organization:{get:"api/branchapi/generalSettings/getorganizationsettingsData",save:"api/branchapi/generalSettings/addorganizationSetting",currencyDropdown:"api/branchapi/generalSettings/currencyDropdown",countryCodeDropdown:"api/branchapi/generalSettings/contrycodeDropdown",timezoneDropdown:"api/branchapi/generalSettings/timezoneDropdown",boardsDropdown:"api/branchapi/generalSettings/getAffliatedBoardsDropDown",uploadLogo:"api/superAdmin/upload_logo",uploadSignature:"api/branchapi/generalSettings/upload_signature",uploadFirebaseJson:"api/branchapi/generalSettings/firebaseJsonUpload"},academicYear:{table:"api/branchapi/generalSettings/sessiontable",add:"api/branchapi/generalSettings/addsession",setActive:"api/branchapi/generalSettings/setsession",remove:"api/branchapi/generalSettings/deletesession"},feeReceiptSetting:{get:"api/branchapi/generalSettings/feesReceiptSettingData",save:"api/branchapi/generalSettings/feesReceiptSetting"},marksheetSetting:{templateTypes:"api/branchapi/GeneralSettings/getmarkssheetTemplate",classDropdown:"api/exam/exam/getClassforAssignMarksSheetType",assignedTable:"api/branchapi/GeneralSettings/getassign_templete",assign:"api/branchapi/GeneralSettings/assign_templete",remove:"api/branchapi/GeneralSettings/deleteTemplate"},legalPages:{get:"api/branchapi/generalSettings/getlegalpage",termsSave:"api/branchapi/generalSettings/terms",privacySave:"api/branchapi/generalSettings/privacy",aboutSave:"api/branchapi/generalSettings/about_us"},feesInfo:{get:"api/branchapi/generalSettings/getFeesInfo",save:"api/branchapi/generalSettings/addFeesInfo",statesDropdown:"api/superAdmin/states"},payrollSettings:{table:"api/branchapi/GeneralSettings/getsetting_allowances_dedection",add:"api/branchapi/GeneralSettings/addsetting_allowances_dedection",edit:"api/branchapi/GeneralSettings/updatesetting_allowances_dedection",remove:"api/branchapi/GeneralSettings/deletesetting_allowances_dedection",byId:"api/branchapi/GeneralSettings/getsetting_allowances_dedectionById"},paymentGateway:{get:"api/payment_gateway/PaymentProcess/getPaymentGatewayList",save:"api/payment_gateway/PaymentProcess"},smsGateway:{get:"api/branchapi/generalSettings/smsalertsettingData",save:"api/branchapi/generalSettings/addsmsalertsetting"},smsDetails:{get:"api/branchapi/generalSettings/smsdetailsData",save:"api/branchapi/generalSettings/addsmsdetails"},smsTemplates:{table:"api/branchapi/communication/Sms/templatetableList",add:"api/branchapi/communication/Sms/addtemplate",edit:"api/branchapi/communication/Sms/edittemplate",delete:"api/branchapi/communication/Sms/deletetemplate",changeStatus:"api/branchapi/communication/Sms/changetemplatestatus",templateDropdown:"api/branchapi/communication/Sms/templatedropdown"},smsCompose:{templateDropdown:"api/branchapi/communication/Sms/templatedropdown",classDropdown:"api/branchapi/academy/classdropdownlist",sectionByClass:"api/branchapi/academy/sectionoftheClass",roleDropdown:"api/Branch/getRoledropdownforBranch",staffSearch:"api/branchapi/staff/staffsearchbyKeywords",studentDropdown:"api/branchapi/student/studentDropdown",sendMessage:"api/branchapi/communication/Message"},chat:{whatsappBaseUrl:"",groupList:"api/branchapi/communication/Message/whatappgroupList",groupCreate:"api/branchapi/communication/Message/createWhatsappGroup",teacherDropdown:"api/branchapi/topics/getTeacherDropdown",classDropdown:"api/branchapi/academy/classdropdownlist",sectionByClass:"api/branchapi/academy/sectionoftheClass",roleDropdown:"api/Branch/getRoledropdownforBranch"},getMessages:t=>`${String(t??"")}/api/messages`,getSendMessages:t=>`${String(t??"")}/api/messages/send`},Ww=t=>Yw(Nt(),t),Vw=async({baseUrl:t,page:a=1,perPage:n=10},r)=>{const o=t.includes("?")?"&":"?",l=`${t}${o}page=${encodeURIComponent(String(a))}&per_page=${encodeURIComponent(String(n))}`;return Y(l,Ja(r))},Hw=async(t,a)=>Y(t,Ja(a)),js=async(t,a,n)=>Ze(t,a,Ja(n)),Mu=async(t,a,n)=>ct(t,a,Ja(n)),xo=async(t,a,n)=>st(t,a,Ja(n)),Kw=async(t,a,n)=>hs(t,{arg:a},Ja(n)),Eu=async(t,a,n)=>gn(t,{arg:a},Ja(n)),Ou=({baseUrl:t,page:a=1,perPage:n=10,token:r})=>q(r&&t?[t,a,n,r]:null,([l,d,c,h])=>Vw({baseUrl:l,page:d,perPage:c},h)),qt=({url:t,token:a})=>q(a&&t?[t,a]:null,([r,o])=>Hw(r,o)),Gw={border:"1px solid #d9d9d9",borderRadius:8,padding:12,minHeight:320,background:"#fff"};function Jw({value:t,onChange:a,placeholder:n}){const[r,o]=i.useState(t??""),l=i.useMemo(()=>typeof t=="string"?t:r,[r,t]);return e.jsx("div",{style:Gw,children:e.jsx(nu,{html:l||"",onChange:d=>{const c=d?.target?.value??"";o(c),a?.(c)},style:{outline:"none",minHeight:280},placeholder:n})})}function Ea({title:t,actions:a,children:n,headerExtra:r}){return e.jsx("div",{style:{display:"grid",gap:20},children:n})}const Qw=t=>t?Array.isArray(t?.data)?t.data[0]??null:Array.isArray(t?.data?.data)?t.data.data[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null:null;function bo({token:t,title:a,fetchUrl:n,saveUrl:r,fieldName:o,initialHtmlFieldName:l}){const d=i.useRef(null),c=qt({url:n,token:t}),f=i.useMemo(()=>Qw(c.data),[c.data])?.[l??o]??"",[p,m]=i.useState("");i.useEffect(()=>{m(typeof f=="string"?f:"")},[f]);const v=()=>m(typeof f=="string"?f:""),S=()=>{const b=new Blob([String(p??"")],{type:"text/html"}),T=URL.createObjectURL(b),R=document.createElement("a");R.href=T,R.download=`${String(a??"legal").toLowerCase().replaceAll(" ","-")}.html`,R.click(),URL.revokeObjectURL(T)},y=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(re.SaveOutlined,{}),onClick:()=>d.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(re.SyncOutlined,{}),onClick:()=>d.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:v},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:S,disabled:!p}],[p,f]),g=async b=>{b.preventDefault();try{(await Eu(r,{[o]:p??""},t))?.Status==="Success"?D.success("Updated successfully.",{duration:1e3}):D.success("Updated.",{duration:1e3}),c.mutate?.()}catch(T){D.error(T?.response?.data?.msg??T?.message??"Failed to update.",{duration:1500})}};return c.isLoading&&!c.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:a,actions:y,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Editor"}),children:e.jsxs("form",{ref:d,onSubmit:g,children:[e.jsx(Jw,{value:p,onChange:m,placeholder:`Enter ${a} content...`}),e.jsx(s.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Update"})})]})})})]})}const Xw=t=>t?typeof t=="string"?t:typeof t?.data=="string"?t.data:typeof t?.filename=="string"?t.filename:typeof t?.file=="string"?t.file:"":"",Zw=t=>/^https?:\/\//i.test(String(t??""))||String(t??"").startsWith("data:");function ss({token:t,value:a,onChange:n,action:r,accept:o,maxCount:l=1,previewUrl:d,data:c}){const h=i.useMemo(()=>{if(t)return{Authorization:t}},[t]),f=i.useMemo(()=>a?d||(Zw(a)?a:""):"",[d,a]);return e.jsxs("div",{style:{display:"grid",gap:8},children:[f?e.jsx("img",{src:f,alt:"upload-preview",style:{width:88,height:88,objectFit:"cover",borderRadius:8,border:"1px solid #d9d9d9",background:"#fafafa"}}):null,e.jsx(s.Upload,{maxCount:l,action:r,data:c,accept:o,headers:h,onChange:p=>{if(p?.file?.status==="removed"&&n?.(""),p?.file?.status==="done"){const m=Xw(p?.file?.response);m&&n?.(m)}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:a?"Change":"Upload"})})]})}const Qa=lt.organization,ev=()=>Ww(Qa.uploadFirebaseJson),tv=t=>t?Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t?.data?.data?.data)?t.data.data.data:[]:[],av=({token:t})=>qt({url:Qa.get,token:t}),nv=({token:t})=>qt({url:Qa.currencyDropdown,token:t}),sv=({token:t})=>qt({url:Qa.countryCodeDropdown,token:t}),rv=({token:t})=>qt({url:Qa.timezoneDropdown,token:t}),iv=({token:t})=>qt({url:Qa.boardsDropdown,token:t}),Ks=t=>tv(t?.data),ov=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},$u=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},lv=(t,a)=>{const n=`${t||""}`.trim();if(!n)return"";if(/^https?:\/\//i.test(n))return n;const r=$u(a),o=n.startsWith("/")?n.slice(1):n;return ov(ut(),`uploads/school_${r}/schoolFile/${o}`)},Hd={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},dv=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"].map(t=>({value:t,label:t})),Kd=[{value:"Yes",label:"Yes"},{value:"No",label:"No"}],Gd=[{value:"yes",label:"Yes"},{value:"no",label:"No"}],cv=t=>{const a=t?.data;return Array.isArray(a?.data)?a.data[0]??null:Array.isArray(a)?a[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null},uv=t=>t?.data?.inout_setting?.[0]??t?.inout_setting?.[0]??null,pv=t=>t?.data?.notification_settings?.[0]??t?.notification_settings?.[0]??null;function mv({token:t}){const a=i.useRef(null),n=av({token:t}),r=nv({token:t}),o=sv({token:t}),l=rv({token:t}),d=iv({token:t}),c=i.useMemo(()=>cv(n.data),[n.data]),h=i.useMemo(()=>uv(n.data),[n.data]),f=i.useMemo(()=>pv(n.data),[n.data]),p=i.useMemo(()=>Ks(r),[r.data]),m=i.useMemo(()=>Ks(o),[o.data]),v=i.useMemo(()=>Ks(l),[l.data]),S=i.useMemo(()=>Ks(d),[d.data]),[y,g]=i.useState(null),[b,T]=i.useState(null),[R,I]=i.useState(null),[A,_]=i.useState(null),[u,x]=i.useState([]),[j,M]=i.useState("No"),[O,z]=i.useState("yes"),[k,F]=i.useState("no"),[C,E]=i.useState("Yes"),[P,U]=i.useState(""),[H,W]=i.useState(""),[L,B]=i.useState(!1),[$,N]=i.useState(""),[V,Q]=i.useState(null),[Z,J]=i.useState(null),[K,X]=i.useState(null),[ee,pe]=i.useState(null),te=()=>{const xe=(()=>{try{const Te=c?.weekly_off;if(!Te)return[];const Ue=Array.isArray(Te)?Te:JSON.parse(Te);return Array.isArray(Ue)?Ue.filter(Boolean).map(ye=>({value:ye,label:ye})):[]}catch{return[]}})();x(xe),g(p.find(Te=>Te?.value===c?.currency)??null),T(m.find(Te=>Te?.value===c?.country_code)??null),I(v.find(Te=>Te?.value===c?.time_zone)??null),_(S.find(Te=>Te?.value===c?.affliated_board_id)??null),U(c?.logo??""),W(c?.json_file??""),M(c?.attendance_salary_calculation??"No"),z(c?.salary_period??"yes"),F(c?.multiple_shift??"no"),E(c?.readmission_charges??"Yes"),Q(h?.in_from?ne(h.in_from,"h:mm A"):null),J(h?.in_to?ne(h.in_to,"h:mm A"):null),X(h?.out_from?ne(h.out_from,"h:mm A"):null),pe(h?.out_to?ne(h.out_to,"h:mm A"):null)};i.useEffect(()=>{c&&te()},[c,p,m,v,S]);const se=()=>{a.current?.reset?.(),te()},le=()=>{const xe=new FormData(a.current??void 0),Te=Object.fromEntries(xe.entries());Te.weekly_off_day=u.map(Pe=>Pe?.value).filter(Boolean);const Ue=new Blob([JSON.stringify(Te,null,2)],{type:"application/json"}),ye=URL.createObjectURL(Ue),me=document.createElement("a");me.href=ye,me.download="organization-setting.json",me.click(),URL.revokeObjectURL(ye)},Ce=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(re.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(re.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:se},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:le,disabled:!c}],[c,u]),Le=async xe=>{xe.preventDefault();try{const Te=new FormData(xe.target);Te.set("currency",y?.value??""),Te.set("code",b?.value??""),Te.set("time_zone",R?.value??""),Te.set("affliated_board_id",A?.value??""),Te.set("board_name",A?.label??""),Te.set("attendance_salary_calculation",j),Te.set("salary_period",O),Te.set("multiple_shift",k),Te.set("readmission_charges",C),u.forEach(me=>{me?.value&&Te.append("weekly_off_day[]",me.value)}),Te.set("logo",P??""),Te.set("json_file",H??""),Te.set("server_key",f?.server_key??""),Te.set("in_time_start",V?ne(V).format("h:mm A"):""),Te.set("in_time_end",Z?ne(Z).format("h:mm A"):""),Te.set("out_time_start",K?ne(K).format("h:mm A"):""),Te.set("out_time_end",ee?ne(ee).format("h:mm A"):""),await js(Qa.save,Te,t);const ye={...JSON.parse(localStorage.getItem("genrall_settings")??"null")??{},logo:P||c?.logo||"",affliated_board_id:A?.value??c?.affliated_board_id??"",board_name:A?.label??c?.board_name??"",multiple_shift:k??c?.multiple_shift??""};localStorage.setItem("genrall_settings",JSON.stringify(ye)),D.success("Organization settings saved.",{duration:1e3}),n.mutate?.()}catch(Te){D.error(Te?.response?.data?.msg??Te?.message??"Failed to save settings.",{duration:1500})}},Re=j==="Yes";return n.isLoading&&!n.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:"Organization",actions:Ce,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Organization Details"}),children:e.jsxs("form",{ref:a,onSubmit:Le,children:[e.jsxs("div",{style:Hd,children:[e.jsx(G,{type:"text",name:"name",label:"Organization Name*",required:!0,defaultValue:c?.name??""}),e.jsxs("div",{children:[e.jsx(ae,{label:"Currency*",options:p,value:y,onChange:xe=>g(xe)}),e.jsx("input",{type:"hidden",name:"currency",value:y?.value??""})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Default Country Code*",options:m,value:b,onChange:xe=>T(xe)}),e.jsx("input",{type:"hidden",name:"code",value:b?.value??""})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Time Zone*",options:v,value:R,onChange:xe=>I(xe)}),e.jsx("input",{type:"hidden",name:"time_zone",value:R?.value??""})]}),e.jsx(G,{type:"text",name:"admission_prefix",label:"Receipt Prefix*",required:!0,defaultValue:c?.admission_prefix??""}),e.jsx(G,{type:"number",name:"admission_start_number",label:"Admission Start Number*",required:!0,defaultValue:c?.admission_no_prefix??c?.admission_start_number??""}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Re-admission Charges"}),e.jsx(s.Radio.Group,{options:Kd,optionType:"button",buttonStyle:"solid",value:C,onChange:xe=>E(xe.target.value)}),e.jsx("input",{type:"hidden",name:"readmission_charges",value:C})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Weekly off Day",options:dv,isMulti:!0,value:u,onChange:xe=>x(xe??[])}),u.map(xe=>e.jsx("input",{type:"hidden",name:"weekly_off_day[]",value:xe.value},xe.value))]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"In Time Start*"}),e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm A",value:V,onChange:xe=>Q(xe),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time_start",value:V?ne(V).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"In Time End*"}),e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm A",value:Z,onChange:xe=>J(xe),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"in_time_end",value:Z?ne(Z).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Out Time Start*"}),e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm A",value:K,onChange:xe=>X(xe),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"out_time_start",value:K?ne(K).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Out Time End*"}),e.jsx(s.TimePicker,{use12Hours:!0,format:"h:mm A",value:ee,onChange:xe=>pe(xe),style:{width:"100%"}}),e.jsx("input",{type:"hidden",name:"out_time_end",value:ee?ne(ee).format("h:mm A"):""})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Salary Period"}),e.jsx(s.Radio.Group,{options:Gd,optionType:"button",buttonStyle:"solid",value:O,onChange:xe=>z(xe.target.value)}),e.jsx("input",{type:"hidden",name:"salary_period",value:O})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Salary Deduction"}),e.jsx(s.Radio.Group,{options:Kd,optionType:"button",buttonStyle:"solid",value:j,onChange:xe=>M(xe.target.value)}),e.jsx("input",{type:"hidden",name:"attendance_salary_calculation",value:j})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Multiple Shift"}),e.jsx(s.Radio.Group,{options:Gd,optionType:"button",buttonStyle:"solid",value:k,onChange:xe=>F(xe.target.value)}),e.jsx("input",{type:"hidden",name:"multiple_shift",value:k})]}),Re?e.jsx(G,{type:"number",name:"late_absent_day",label:"No of Late",defaultValue:c?.late_absent_day??""}):e.jsx("input",{type:"hidden",name:"late_absent_day",value:""})]}),e.jsx(s.Divider,{}),e.jsxs("div",{style:Hd,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Logo Upload"}),e.jsx(s.Upload,{action:`${ut()}/uploadfile.php`,name:"file",data:{filepath:`uploads/school_${$u(t)}/schoolFile`},headers:{Authorization:t},maxCount:1,accept:"image/*",onChange:xe=>{if(xe.file.status==="removed"&&U(""),xe.file.status==="done"){const Te=xe.file.response?.data??xe.file.response?.file??"";U(String(Te??""))}},children:e.jsx("div",{style:{cursor:"pointer",fontSize:12,color:"#1677ff"},children:P?"Change":"Upload"})}),P&&e.jsxs("div",{style:{marginTop:8,display:"flex",alignItems:"center",gap:8},children:[e.jsx("a",{style:{fontSize:12,color:"#1677ff",textDecoration:"underline",cursor:"pointer"},onClick:()=>{N(lv(P,t)),B(!0)},children:"View existing logo"}),e.jsx("a",{style:{fontSize:12,color:"#1677ff",textDecoration:"underline",cursor:"pointer"},onClick:()=>U(""),children:"Remove"})]}),e.jsx("input",{type:"hidden",name:"logo",value:P??""})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Select Affiliated Board",options:S,value:A,onChange:xe=>_(xe)}),e.jsx("input",{type:"hidden",name:"affliated_board_id",value:A?.value??""}),e.jsx("input",{type:"hidden",name:"board_name",value:A?.label??""})]}),e.jsx(kt,{label:"Address",name:"address",rows:3,defaultValue:c?.location_name??c?.address??""}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Json for Notification"}),e.jsx(ss,{token:t,action:ev(),value:H,accept:".json",onChange:xe=>W(xe)}),e.jsx("input",{type:"hidden",name:"json_file",value:H??""})]})]}),e.jsx(s.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})]})})}),e.jsx(s.Modal,{open:L,onCancel:()=>{B(!1),N("")},footer:null,width:500,closable:!0,children:$?e.jsx("img",{src:$,alt:"Organization Logo",style:{width:"100%",maxHeight:"70vh",objectFit:"contain"}}):e.jsx(he,{children:"No logo found"})})]})}function hv({token:t}){return e.jsx(mv,{token:t})}const mr=lt.academicYear,fv=({token:t,page:a=1,perPage:n=10})=>Ou({baseUrl:mr.table,token:t,page:a,perPage:n}),gv={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},yv=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t?.data?.data?.data)?t.data.data.data:[],xv=(t,a=0)=>t?.pagination?.total_rows??t?.data?.pagination?.total_rows??t?.data?.data?.pagination?.total_rows??a;function bv({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:10}),[r,o]=i.useState(!1),[l,d]=i.useState(()=>{const u=ne(),x=ne().add(1,"year");return`${u.format("YYYY")}-${x.format("YYYY")}`}),[c,h]=i.useState(ne()),[f,p]=i.useState(ne().add(1,"year")),{isLoading:m,data:v,mutate:S}=fv({token:t,page:a.page,perPage:a.rowsPerPage}),y=i.useMemo(()=>yv(v),[v]),g=i.useMemo(()=>xv(v,y.length),[v,y.length]),b=async()=>{if(!l){D.error("Session name is required.");return}if(f&&c&&ne(f).isBefore(c)){D.error("End date must be after start date.");return}try{const u=new FormData;u.set("name",l),u.set("start_date",c?ne(c).format("YYYY-MM-DD"):""),u.set("end_date",f?ne(f).format("YYYY-MM-DD"):""),await js(mr.add,u,t),D.success("Academic year added.",{duration:1e3}),o(!1),S?.()}catch(u){D.error(u?.response?.data?.msg??u?.message??"Failed to add academic year.",{duration:1500})}},T=async u=>{try{const x=new FormData;x.set("session",String(u)),await Mu(mr.setActive,x,t);const j=JSON.parse(localStorage.getItem("genrall_settings")??"null")??{};localStorage.setItem("genrall_settings",JSON.stringify({...j,session_id:String(u)})),D.success("Academic year activated.",{duration:1e3}),S?.()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to activate academic year.",{duration:1500})}},R=async u=>{try{await S(xo(mr.remove,u,t)),D.success("Academic year deleted.",{duration:1e3})}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to delete academic year.",{duration:1500})}},I=()=>{const u=new Blob([JSON.stringify(y,null,2)],{type:"application/json"}),x=URL.createObjectURL(u),j=document.createElement("a");j.href=x,j.download="academic-years.json",j.click(),URL.revokeObjectURL(x)},A=i.useMemo(()=>[{key:"add",label:"Add",icon:e.jsx(re.PlusOutlined,{}),onClick:()=>o(!0)},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:()=>S?.()},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:I,disabled:y.length===0}],[y.length,S]),_=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name"},{title:"Start Date",dataIndex:"start_date",key:"start_date"},{title:"End Date",dataIndex:"end_date",key:"end_date"},{title:"Active",key:"active",render:(u,x)=>{const j=x.status==="Active";return e.jsxs("span",{children:[e.jsx(s.Popconfirm,{title:j?"Deactivate Academic Year?":"Activate Academic Year?",description:j?"Deactivate is not allowed. Activate another session to switch.":"This will set this year as the current academic session.",onConfirm:()=>{j?D.error("Deactivate is not allowed. Activate another session to switch."):T(x.id)},okText:"Yes",cancelText:"No",children:e.jsx(s.Switch,{checked:j})}),j&&e.jsx(s.Tag,{color:"green",style:{marginLeft:8},children:"Active"})]})}},{title:"Action",key:"action",render:(u,x)=>e.jsx(s.Popconfirm,{title:"Delete academic year?",description:"This will remove the session.",onConfirm:()=>R(x.id),okText:"Yes",cancelText:"No",children:e.jsx(s.Button,{type:"link",danger:!0,children:"Delete"})})}],[t,y.length]);return e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:"Academic Year",actions:A,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Sessions"}),children:e.jsx(s.Table,{rowKey:"id",dataSource:y,columns:_,loading:m,pagination:{current:a.page,pageSize:a.rowsPerPage,total:g,showSizeChanger:!0,onChange:(u,x)=>n({page:u,rowsPerPage:Number(x)})}})})}),e.jsx(s.Modal,{open:r,onCancel:()=>o(!1),footer:null,title:"Add Academic Year",children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:gv,children:[e.jsx(G,{label:"Session Name*",value:l,onChange:u=>d(u.target.value)}),e.jsxs("div",{children:[e.jsx(Ge,{Desplay:"Start Date*",value:c,onChange:u=>h(u),format:"YYYY-MM-DD"}),e.jsx("input",{type:"hidden",value:c?ne(c).format("YYYY-MM-DD"):""})]}),e.jsxs("div",{children:[e.jsx(Ge,{Desplay:"End Date*",value:f,onChange:u=>p(u),format:"YYYY-MM-DD"}),e.jsx("input",{type:"hidden",value:f?ne(f).format("YYYY-MM-DD"):""})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:10},children:[e.jsx(de,{value:"Submit",type:"button",onClick:b}),e.jsx(s.Button,{onClick:()=>o(!1),children:"Cancel"})]})]})})]})}function jv({token:t}){return e.jsx(bv,{token:t})}const Fu=lt.feeReceiptSetting,Sv=({token:t})=>qt({url:Fu.get,token:t}),Ti={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(260px, 1fr))",gap:16,alignItems:"start"},wv=t=>t?Array.isArray(t?.data)?t.data[0]??null:Array.isArray(t?.data?.data)?t.data.data[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null:null;function vv({token:t}){const a=i.useRef(null),n=Sv({token:t}),r=i.useMemo(()=>wv(n.data),[n.data]),[o,l]=i.useState(""),[d,c]=i.useState(!1),[h,f]=i.useState(!1),[p,m]=i.useState(!1),[v,S]=i.useState("0"),[y,g]=i.useState("0"),[b,T]=i.useState("0"),[R,I]=i.useState(!1),[A,_]=i.useState(!1),[u,x]=i.useState(""),[j,M]=i.useState("0"),[O,z]=i.useState("0"),[k,F]=i.useState("0"),[C,E]=i.useState(""),[P,U]=i.useState(!1),H=()=>{l(r?.number_of_receipt??""),c(String(r?.roll_number??"0")==="1"),f(String(r?.address??"0")==="1"),m(String(r?.gardian_name??"0")==="1"),S(String(r?.authorized_signatory??"0")),g(String(r?.parent_signatory??"0")),T(String(r?.dynamic_qr_code_device??"0")),I(String(r?.sequence_payment??"0")==="1"),_(String(r?.previois_fees??"0")==="1"),x(r?.title??""),M(String(r?.class_id??"0")),z(String(r?.discount??"0")),F(String(r?.sections??"0")),E(r?.upfront_payment_months??"")};i.useEffect(()=>{r&&H()},[r]);const W=()=>{a.current?.reset?.(),H()},L=()=>{const N={number_of_receipt:o,rollnumber:d?1:0,address:h?1:0,gardianname:p?1:0,authorizedsignatory:v,parentsignatory:y,dynamic_qr_code_device:b,sequence_payment:R?1:0,previois_fees:A?1:0,upfront_payment_months:C,title:u,class_id:j,discount:O,sections:k},V=new Blob([JSON.stringify(N,null,2)],{type:"application/json"}),Q=URL.createObjectURL(V),Z=document.createElement("a");Z.href=Q,Z.download="fee-receipt-setting.json",Z.click(),URL.revokeObjectURL(Q)},B=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(re.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(re.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:W},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:L,disabled:!r}],[r,o,d,h,p,v,y,b,R,A,C,u,j,O,k]),$=async N=>{N.preventDefault(),U(!0);try{const V=new FormData;V.set("number_of_receipt",String(o??"")),V.set("rollnumber",d?"1":"0"),V.set("address",h?"1":"0"),V.set("gardianname",p?"1":"0"),V.set("authorizedsignatory",String(v??"0")),V.set("parentsignatory",String(y??"0")),V.set("dynamic_qr_code_device",String(b??"0")),V.set("sequence_payment",R?"1":"0"),V.set("previois_fees",A?"1":"0"),V.set("upfront_payment_months",String(C??"")),V.set("title",String(u??"")),V.set("class_id",String(j??"0")),V.set("discount",String(O??"0")),V.set("sections",String(k??"0")),await js(Fu.save,V,t),D.success("Fee receipt settings updated.",{duration:1e3}),n.mutate?.()}catch(V){D.error(V?.response?.data?.msg??V?.message??"Failed to update settings.",{duration:1500})}finally{U(!1)}};return n.isLoading&&!n.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:"Fee Receipt Setting",actions:B,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Settings Form"}),children:e.jsxs("form",{ref:a,onSubmit:$,children:[e.jsxs("div",{style:Ti,children:[e.jsx(G,{type:"number",name:"number_of_receipt",label:"Number Of Receipt",value:o,onChange:N=>l(N.target.value)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Roll Number"}),e.jsx(s.Checkbox,{checked:d,onChange:N=>c(N.target.checked),children:"Show Roll Number in Fees Receipt"})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Address"}),e.jsx(s.Checkbox,{checked:h,onChange:N=>f(N.target.checked),children:"Show address in Fees Receipt"})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Guardian Name"}),e.jsx(s.Checkbox,{checked:p,onChange:N=>m(N.target.checked),children:"Show Guardian Name in Fees Receipt"})]})]}),e.jsx(s.Divider,{}),e.jsxs("div",{style:Ti,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Authorized Signatory"}),e.jsxs(s.Radio.Group,{value:v,onChange:N=>S(N.target.value),children:[e.jsx(s.Radio,{value:"1",children:"Enable"}),e.jsx(s.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Parent Signatory"}),e.jsxs(s.Radio.Group,{value:y,onChange:N=>g(N.target.value),children:[e.jsx(s.Radio,{value:"1",children:"Enable"}),e.jsx(s.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Dynamic QR Code Device"}),e.jsxs(s.Radio.Group,{value:b,onChange:N=>T(N.target.value),children:[e.jsx(s.Radio,{value:"1",children:"Enable"}),e.jsx(s.Radio,{value:"0",children:"Disable"})]})]})]}),e.jsx(s.Divider,{}),e.jsxs("div",{style:Ti,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Sequence Payment"}),e.jsx(s.Checkbox,{checked:R,onChange:N=>I(N.target.checked),children:"Student can pay in sequence"})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Previous Fees"}),e.jsx(s.Checkbox,{checked:A,onChange:N=>_(N.target.checked),children:"Previous Fees Carry Over to Next Year"})]}),e.jsx(G,{type:"text",name:"title",label:"Title",value:u,onChange:N=>x(N.target.value)}),e.jsxs("div",{style:{display:"none"},children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Class"}),e.jsxs(s.Radio.Group,{value:j,onChange:N=>M(N.target.value),children:[e.jsx(s.Radio,{value:"1",children:"Enable"}),e.jsx(s.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Discount"}),e.jsxs(s.Radio.Group,{value:O,onChange:N=>z(N.target.value),children:[e.jsx(s.Radio,{value:"1",children:"Enable"}),e.jsx(s.Radio,{value:"0",children:"Disable"})]})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Sections"}),e.jsxs(s.Radio.Group,{value:k,onChange:N=>F(N.target.value),children:[e.jsx(s.Radio,{value:"1",children:"Enable"}),e.jsx(s.Radio,{value:"0",children:"Disable"})]})]}),e.jsx(G,{type:"number",name:"upfront_payment_months",label:"Max Advance Payment (Months)",value:C,onChange:N=>E(N.target.value)})]}),e.jsx(s.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:P?"Updating...":"Done",disabled:P})})]})})})]})}function Cv({token:t}){return e.jsx(vv,{token:t})}const ls=lt.marksheetSetting,_v=({token:t})=>qt({url:ls.templateTypes,token:t}),Av=({token:t})=>qt({url:ls.classDropdown,token:t}),Dv=({token:t})=>qt({url:ls.assignedTable,token:t}),Tv={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(260px, 1fr))",gap:20,alignItems:"end"},Jd=t=>t?Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t?.data?.data?.data)?t.data.data.data:[]:[],kv=Array.from({length:12},(t,a)=>({value:String(a+1),label:`Design ${a+1}`})),Rv=t=>t?Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:Array.isArray(t)?t:[]:[];function Iv({token:t}){const a=i.useRef(null),n=_v({token:t}),r=Av({token:t}),o=Dv({token:t}),l=i.useMemo(()=>Jd(n.data),[n.data]),d=i.useMemo(()=>Jd(r.data),[r.data]),c=i.useMemo(()=>Rv(o.data),[o.data]),[h,f]=i.useState(null),[p,m]=i.useState(null),[v,S]=i.useState([]),y=()=>{a.current?.reset?.(),f(null),m(null),S([])},g=()=>{const A=new Blob([JSON.stringify(c,null,2)],{type:"application/json"}),_=URL.createObjectURL(A),u=document.createElement("a");u.href=_,u.download="marksheet-templates.json",u.click(),URL.revokeObjectURL(_)},b=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(re.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:y},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:g,disabled:c.length===0}],[c.length]),T=async A=>{if(A.preventDefault(),!h?.value){D.error("Select marksheet type.",{duration:1200});return}if(!p?.value){D.error("Select design.",{duration:1200});return}if(!v?.length){D.error("Select at least one class.",{duration:1200});return}try{const _=new FormData;_.set("temp_id",String(h.value)),_.set("ui_id",String(p.value)),v.forEach(u=>_.append("class_id[]",String(u))),await js(ls.assign,_,t),D.success("Marksheet template assigned.",{duration:1e3}),o.mutate?.(),y()}catch(_){D.error(_?.response?.data?.msg??_?.message??"Failed to assign template.",{duration:1500})}},R=async A=>{try{await xo(ls.remove,A,t),D.success("Template removed.",{duration:1e3}),o.mutate?.()}catch(_){D.error(_?.response?.data?.msg??_?.message??"Failed to remove template.",{duration:1500})}},I=i.useMemo(()=>[{title:"Class",dataIndex:"class",key:"class"},{title:"Template Name",dataIndex:"name",key:"name"},{title:"Template Design",dataIndex:"ui_id",key:"ui_id"},{title:"Action",key:"action",render:(A,_)=>e.jsx(At,{id:_?.id,funcName:R})}],[t]);return e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:"Marksheet Setting",actions:b,children:e.jsxs("div",{style:{display:"grid",gap:20,gridTemplateColumns:"repeat(auto-fit, minmax(320px, 1fr))"},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Assign Template"}),children:e.jsxs("form",{ref:a,onSubmit:T,children:[e.jsxs("div",{style:Tv,children:[e.jsxs("div",{children:[e.jsx(ae,{label:"Select Marksheet Type",options:l,value:h,onChange:A=>f(A)}),e.jsx("input",{type:"hidden",name:"temp_id",value:h?.value??""})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Select Design",options:kv,value:p,onChange:A=>m(A)}),e.jsx("input",{type:"hidden",name:"ui_id",value:p?.value??""})]})]}),e.jsx(s.Divider,{}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:8},children:"Class"}),e.jsx(s.Checkbox.Group,{options:d,value:v,onChange:A=>S(A)})]}),e.jsx(s.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save"})})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Marksheet List"}),children:e.jsx(s.Table,{size:"small",rowKey:"id",columns:I,dataSource:c,pagination:!1})})]})})]})}function Pv({token:t}){return e.jsx(Iv,{token:t})}const ki={fetch:`${lt.legalPages.get}?page_name=terms`,save:lt.legalPages.termsSave,fieldName:"terms_data"};function Mv({token:t}){return e.jsx(bo,{token:t,title:"Terms",fetchUrl:ki.fetch,saveUrl:ki.save,fieldName:ki.fieldName})}function Ev({token:t}){return e.jsx(Mv,{token:t})}const Ri={fetch:`${lt.legalPages.get}?page_name=privacy`,save:lt.legalPages.privacySave,fieldName:"privacy_data"};function Ov({token:t}){return e.jsx(bo,{token:t,title:"Privacy",fetchUrl:Ri.fetch,saveUrl:Ri.save,fieldName:Ri.fieldName})}function $v({token:t}){return e.jsx(Ov,{token:t})}const Ii={fetch:`${lt.legalPages.get}?page_name=about_us`,save:lt.legalPages.aboutSave,fieldName:"about_data"};function Fv({token:t}){return e.jsx(bo,{token:t,title:"About",fetchUrl:Ii.fetch,saveUrl:Ii.save,fieldName:Ii.fieldName})}function Bv({token:t}){return e.jsx(Fv,{token:t})}const jo=lt.feesInfo,Lv=({token:t})=>qt({url:jo.get,token:t}),Uv=({token:t})=>qt({url:jo.statesDropdown,token:t}),Nv=(t,a)=>{const n=String(t??""),r=String(a??"");return n?r?n.endsWith("/")&&r.startsWith("/")?`${n}${r.slice(1)}`:!n.endsWith("/")&&!r.startsWith("/")?`${n}/${r}`:`${n}${r}`:n:r},rs=t=>{const a=ya(t);if(a)return a;try{return JSON.parse(localStorage.getItem("genrall_settings")??"null")?.fk_branchID??JSON.parse(localStorage.getItem("Userdata")??"null")?.branch_id??""}catch{return""}},Bu=(t,a,n)=>{const r=`${t||""}`.trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;const o=rs(a),l=r.startsWith("/")?r.slice(1):r;return Nv(ut(),`uploads/school_${o}/${n}/${l}`)},Pi={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},zv=t=>t?Array.isArray(t?.data)?t.data[0]??null:Array.isArray(t?.data?.data)?t.data.data[0]??null:Array.isArray(t)?t[0]??null:t?.data?.data?.[0]??null:null,qv=t=>t?Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[]:[],Yv=(t,a)=>t?Bu(t,a,"schoolFile"):"",Mi=(t,a)=>t?Bu(t,a,"schoolFile"):"";function Wv({token:t}){const a=i.useRef(null),n=Lv({token:t}),r=Uv({token:t}),o=i.useMemo(()=>zv(n.data),[n.data]),l=i.useMemo(()=>qv(r.data),[r.data]),[d,c]=i.useState(null),[h,f]=i.useState(""),[p,m]=i.useState(""),[v,S]=i.useState(""),[y,g]=i.useState(""),b=u=>{const x=new FormData(u),j=Object.fromEntries(x.entries());return j.state_id=d?.value??"",j.fees_receipt_logo=h,j.manager_signature=p,j.principal_signature=v,j.stamp=y,j},T=()=>{c(l.find(u=>String(u?.value)===String(o?.fk_state_id??o?.state_id??o?.country_code??""))??null),f(o?.logo??o?.fees_receipt_logo??""),m(o?.manager_signature??""),S(o?.principal_signature??""),g(o?.stamp??"")};i.useEffect(()=>{o&&T()},[o,l]);const R=()=>{a.current?.reset?.(),T()},I=()=>{const u=b(a.current),x=new Blob([JSON.stringify(u,null,2)],{type:"application/json"}),j=URL.createObjectURL(x),M=document.createElement("a");M.href=j,M.download="fees-info.json",M.click(),URL.revokeObjectURL(j)},A=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(re.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(re.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:R},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:I,disabled:!o}],[o,d,h,p,v,y]),_=async u=>{u.preventDefault();try{const x=b(u.target);await Kw(jo.save,x,t),D.success("Fees info saved.",{duration:1e3}),n.mutate?.()}catch(x){D.error(x?.response?.data?.msg??x?.message??"Failed to save fees info.",{duration:1500})}};return n.isLoading&&!n.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:"Fees Info",actions:A,children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"School Information"}),children:e.jsxs("form",{ref:a,onSubmit:_,children:[e.jsxs("div",{style:Pi,children:[e.jsx(G,{name:"Bussiness_name",label:"Business Name*",defaultValue:o?.name??"",required:!0}),e.jsx(G,{name:"cin",label:"Sub Heading",defaultValue:o?.cin??""}),e.jsx(G,{name:"school_no",type:"number",label:"School Number",defaultValue:o?.school_no??""}),e.jsx(G,{name:"website",label:"Website",defaultValue:o?.website??""}),e.jsx(G,{name:"school_Code",label:"School Code",defaultValue:o?.school_Code??""}),e.jsx(G,{name:"offical_number",label:"Official Number",defaultValue:o?.offical_number??""}),e.jsx(G,{name:"email_id",label:"Email",defaultValue:o?.email_id??""}),e.jsx(G,{name:"receipt_prefix",label:"Receipt Prefix",defaultValue:o?.admission_prefix??o?.receipt_prefix??""}),e.jsx(G,{name:"recipt_start_number",type:"number",label:"Receipt Start Number",defaultValue:o?.admission_no_prefix??o?.admission_start_number??o?.recipt_start_number??""}),e.jsxs("div",{children:[e.jsx(ae,{label:"State",options:l,value:d,onChange:c}),e.jsx("input",{type:"hidden",name:"state_id",value:d?.value??""})]}),e.jsx(G,{name:"affiliation_no",label:"Affiliation Number",defaultValue:o?.affiliation_no??""}),e.jsx(G,{name:"affiliation_desc",label:"Affiliation Description",defaultValue:o?.affiliation_desc??o?.affliated_description??""}),e.jsx(G,{name:"udise_code",label:"UDISE Code",defaultValue:o?.udise_code??""}),e.jsx(G,{name:"color_code",label:"Primary Color",defaultValue:o?.color_code??""}),e.jsx(G,{name:"fontcolor_code",label:"Font Color",defaultValue:o?.fontcolor_code??""})]}),e.jsx(s.Divider,{}),e.jsxs("div",{style:Pi,children:[e.jsx(kt,{name:"Bussiness_address",rows:3,label:"Business Address",defaultValue:o?.Bussiness_address??o?.bussiness_address??o?.address??o?.location_name??""}),e.jsx(kt,{name:"note",rows:3,label:"Note",defaultValue:o?.note??""})]}),e.jsx(s.Divider,{}),e.jsxs("div",{style:Pi,children:[e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Fees Receipt Logo"}),e.jsx(ss,{token:t,action:`${ut()}/uploadfile.php`,data:{filepath:`uploads/school_${rs(t)}/schoolFile`},value:h,previewUrl:Yv(h,t),accept:"image/*",onChange:f}),e.jsx("input",{type:"hidden",name:"fees_receipt_logo",value:h})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Manager Signature"}),e.jsx(ss,{token:t,action:`${ut()}/uploadfile.php`,data:{filepath:`uploads/school_${rs(t)}/schoolFile`},value:p,previewUrl:Mi(p,t),accept:"image/*",onChange:m}),e.jsx("input",{type:"hidden",name:"manager_signature",value:p})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Principal Signature"}),e.jsx(ss,{token:t,action:`${ut()}/uploadfile.php`,data:{filepath:`uploads/school_${rs(t)}/schoolFile`},value:v,previewUrl:Mi(v,t),accept:"image/*",onChange:S}),e.jsx("input",{type:"hidden",name:"principal_signature",value:v})]}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:"Stamp"}),e.jsx(ss,{token:t,action:`${ut()}/uploadfile.php`,data:{filepath:`uploads/school_${rs(t)}/schoolFile`},value:y,previewUrl:Mi(y,t),accept:"image/*",onChange:g}),e.jsx("input",{type:"hidden",name:"stamp",value:y})]})]}),e.jsx(s.Divider,{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save"})})]})})})]})}function Vv({token:t}){return e.jsx(Wv,{token:t})}const hr=lt.payrollSettings,Hv=({token:t,page:a=1,perPage:n=10})=>Ou({baseUrl:hr.table,token:t,page:a,perPage:n}),Kv={display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},Jn=[{value:"Allowances",label:"Allowances"},{value:"Dedection",label:"Dedection"}],Ei=[{value:"Flat",label:"Flat"},{value:"Percentage",label:"Percentage"}],Gv=t=>Array.isArray(t)?t:Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.data)?t.data.data:[],Jv=(t,a=0)=>t?.pagination?.total_rows??t?.data?.pagination?.total_rows??t?.data?.data?.pagination?.total_rows??a;function Qv({token:t}){const a=i.useRef(null),n=i.useRef(null),[r,o]=i.useState({page:1,rowsPerPage:10}),[l,d]=i.useState(!1),[c,h]=i.useState(null),[f,p]=i.useState(Jn[0]),[m,v]=i.useState(null),[S,y]=i.useState(null),[g,b]=i.useState(null),[T,R]=i.useState(!1),[I,A]=i.useState(!1),_=Hv({token:t,page:r.page,perPage:r.rowsPerPage}),u=i.useMemo(()=>Gv(_.data),[_.data]),x=i.useMemo(()=>Jv(_.data,u.length),[_.data,u.length]),j=async E=>{E.preventDefault(),A(!0);try{const P=new FormData(E.target);P.set("type",f?.value??""),P.set("amount_type",m?.value??""),await js(hr.add,P,t),D.success("Payroll setting added.",{duration:1e3}),_.mutate?.(),E.target.reset(),v(null),p(Jn[0])}catch(P){D.error(P?.response?.data?.msg??P?.message??"Failed to add payroll setting.",{duration:1500})}finally{A(!1)}},M=E=>{h(E),y(Jn.find(P=>P.value===E?.type)??null),b(Ei.find(P=>P.value===E?.amount_type)??null),d(!0)},O=async E=>{E.preventDefault(),R(!0);try{const P=new FormData(E.target);P.set("id",String(c?.id??"")),P.set("type",S?.value??""),P.set("amount_type",g?.value??""),await Mu(hr.edit,P,t),D.success("Payroll setting updated.",{duration:1e3}),d(!1),_.mutate?.()}catch(P){D.error(P?.response?.data?.msg??P?.message??"Failed to update payroll setting.",{duration:1500})}finally{R(!1)}},z=async E=>{try{await xo(hr.remove,E,t),D.success("Payroll setting deleted.",{duration:1e3}),_.mutate?.()}catch(P){D.error(P?.response?.data?.msg??P?.message??"Failed to delete payroll setting.",{duration:1500})}},k=()=>{const E=new Blob([JSON.stringify(u,null,2)],{type:"application/json"}),P=URL.createObjectURL(E),U=document.createElement("a");U.href=P,U.download="payroll-settings.json",U.click(),URL.revokeObjectURL(P)},F=i.useMemo(()=>[{key:"add",label:"Add",icon:e.jsx(re.PlusOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:()=>_.mutate?.()},{key:"save",label:"Save",icon:e.jsx(re.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:k,disabled:u.length===0}],[u.length]),C=i.useMemo(()=>[{title:"Title",dataIndex:"title",key:"title"},{title:"Type",dataIndex:"type",key:"type"},{title:"Amount Type",dataIndex:"amount_type",key:"amount_type"},{title:"Amount",dataIndex:"Amount",key:"Amount"},{title:"Action",key:"action",render:(E,P)=>e.jsxs("div",{style:{display:"flex",gap:8},children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>M(P)}),e.jsx(s.Popconfirm,{title:"Delete payroll setting?",onConfirm:()=>z(P.id),children:e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{})})})]})}],[t]);return e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:"Payroll Settings",actions:F,children:e.jsxs("div",{style:{display:"grid",gap:20,gridTemplateColumns:"minmax(320px, 420px) 1fr"},children:[e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Add Allowances / Deductions"}),children:e.jsxs("form",{ref:a,onSubmit:j,children:[e.jsxs("div",{style:Kv,children:[e.jsx(G,{name:"title",label:"Title",required:!0}),e.jsxs("div",{children:[e.jsx(ae,{label:"Type",options:Jn,value:f,onChange:p}),e.jsx("input",{type:"hidden",name:"type",value:f?.value??""})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Amount Type",options:Ei,value:m,onChange:v}),e.jsx("input",{type:"hidden",name:"amount_type",value:m?.value??""})]}),e.jsx(G,{name:"Amount",type:"number",label:"Amount",required:!0})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:20},children:e.jsx(de,{type:"submit",value:I?"Adding...":"Submit",disabled:I,loading:I})})]})}),e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Payroll Settings List"}),children:e.jsx(s.Table,{rowKey:"id",columns:C,dataSource:u,loading:_.isLoading,pagination:{current:r.page,pageSize:r.rowsPerPage,total:x,showSizeChanger:!0,onChange:(E,P)=>o({page:E,rowsPerPage:Number(P)})}})})]})}),e.jsx(s.Drawer,{open:l,onClose:()=>d(!1),title:"Edit Payroll Setting",width:420,destroyOnClose:!0,footer:e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[e.jsx(s.Button,{onClick:()=>d(!1),disabled:T,children:"Cancel"}),e.jsx(de,{type:"submit",value:T?"Updating...":"Update",disabled:T,loading:T,form:"payroll-edit-form"})]}),children:e.jsx(s.Spin,{spinning:T,tip:"Updating...",children:e.jsx("form",{id:"payroll-edit-form",ref:n,onSubmit:O,children:e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(G,{name:"title",label:"Title",required:!0,defaultValue:c?.title??""}),e.jsxs("div",{children:[e.jsx(ae,{label:"Type",options:Jn,value:S,onChange:y}),e.jsx("input",{type:"hidden",name:"type",value:S?.value??""})]}),e.jsxs("div",{children:[e.jsx(ae,{label:"Amount Type",options:Ei,value:g,onChange:b}),e.jsx("input",{type:"hidden",name:"amount_type",value:g?.value??""})]}),e.jsx(G,{name:"Amount",type:"number",label:"Amount",required:!0,defaultValue:c?.Amount??""})]})},c?.id??"new")})})]})}function Xv({token:t}){return e.jsx(Qv,{token:t})}const Lu=lt.paymentGateway,Zv=({token:t})=>qt({url:Lu.get,token:t}),e0=[{id:"Razorpay",title:"Razorpay",fields:["keyId","keySecret"]},{id:"PhonePe",title:"Pine Labs",fields:["merchantId","saltKey","saltIndex"]},{id:"Paytm",title:"HDFC",fields:["merchantId","merchantKey"]},{id:"SabPaisa",title:"SabPaisa",fields:["clientCode","transUserName","transUserPassword","authKey","authIV"]}],Na={Razorpay:{keyId:"",keySecret:"",isActive:!0},PhonePe:{merchantId:"",saltKey:"",saltIndex:"1",isActive:!1},Paytm:{merchantId:"",merchantKey:"",isActive:!1},SabPaisa:{clientCode:"",transUserName:"",transUserPassword:"",authKey:"",authIV:"",isActive:!1}},Qd=t=>{const a=Array.isArray(t?.data)&&t.data[0]||Array.isArray(t?.data?.data)&&t.data.data[0]||Array.isArray(t)&&t[0]||null;if(!a?.data)return Na;try{const n=JSON.parse(a.data||"{}"),r=n?.data&&typeof n.data=="object"?n.data:n;return{Razorpay:{...Na.Razorpay,...r?.Razorpay??{}},PhonePe:{...Na.PhonePe,...r?.PhonePe??r?.PineLab??r?.PineLabs??{}},Paytm:{...Na.Paytm,...r?.Paytm??r?.HDFC??{}},SabPaisa:{...Na.SabPaisa,...r?.SabPaisa??{}}}}catch{return Na}};function t0({token:t}){const a=i.useRef(null),n=Zv({token:t}),[r,o]=i.useState(Na);i.useEffect(()=>{n.data&&o(Qd(n.data))},[n.data]);const l=(p,m,v)=>{o(S=>({...S,[p]:{...S[p],[m]:v}}))},d=()=>o(Qd(n.data)),c=()=>{const p=new Blob([JSON.stringify(r,null,2)],{type:"application/json"}),m=URL.createObjectURL(p),v=document.createElement("a");v.href=m,v.download="payment-gateway-settings.json",v.click(),URL.revokeObjectURL(m)},h=i.useMemo(()=>[{key:"save",label:"Save",icon:e.jsx(re.SaveOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"update",label:"Update",icon:e.jsx(re.SyncOutlined,{}),onClick:()=>a.current?.requestSubmit?.()},{key:"reset",label:"Reset",icon:e.jsx(re.ReloadOutlined,{}),onClick:d},{key:"export",label:"Export",icon:e.jsx(re.ExportOutlined,{}),onClick:c}],[r,n.data]),f=async p=>{p.preventDefault();try{await Eu(Lu.save,{data:r},t),D.success("Payment gateway settings saved.",{duration:1e3}),n.mutate?.()}catch(m){D.error(m?.response?.data?.msg??m?.message??"Failed to save gateway settings.",{duration:1500})}};return n.isLoading&&!n.data?e.jsx("div",{children:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(Ea,{title:"Payment Gateway",actions:h,children:e.jsxs("form",{ref:a,onSubmit:f,style:{display:"grid",gap:20},children:[e0.map(p=>{const m=r[p.id]??{};return e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:p.title}),children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("span",{style:{fontSize:14,fontWeight:500},children:["Enable ",p.title]}),e.jsx(s.Switch,{checked:!!m.isActive,onChange:v=>l(p.id,"isActive",v)})]}),e.jsx(s.Divider,{style:{margin:0}}),e.jsx("div",{style:{display:"grid",gap:16,gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))"},children:p.fields.map(v=>e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:14,fontWeight:500,color:"#222",marginBottom:6},children:v}),e.jsx(s.Input,{value:m[v]??"",type:v.toLowerCase().includes("secret")||v.toLowerCase().includes("password")?"password":"text",onChange:S=>l(p.id,v,S.target.value)})]},v))})]})},p.id)}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(de,{type:"submit",value:"Save"})})]})})]})}function a0({token:t}){return e.jsx(t0,{token:t})}const n0="{{student_name}} {{parent_name}} {{amount}} {{date}} {{time}} {{id}} {{school_name}} {{date_time}}",hn=t=>{const a=t?.data?.data??t?.data??t??[];return Array.isArray(a)?a:[]};function s0({token:t}){const[a,n]=i.useState("1"),[r,o]=i.useState(""),[l,d]=i.useState(""),[c,h]=i.useState(""),[f,p]=i.useState(""),[m,v]=i.useState(""),[S,y]=i.useState([]),[g,b]=i.useState(""),[T,R]=i.useState(""),[I,A]=i.useState(""),[_,u]=i.useState([]),[x,j]=i.useState({label:"",value:""}),[M,O]=i.useState(!1),[z,k]=i.useState(""),[F,C]=i.useState([]),[E,P]=i.useState([]),[U,H]=i.useState(!1),{data:W}=q(t?[lt.smsCompose.templateDropdown,t]:null,([ye,me])=>Y(ye,me)),L=i.useMemo(()=>hn(W).map(me=>({label:me.name??me.title??"",value:String(me.id??me.value??""),template_body:me.template_body??me.body??""})),[W]),{data:B}=q(t?[lt.smsCompose.roleDropdown,t]:null,([ye,me])=>Y(ye,me)),$=i.useMemo(()=>hn(B).map(me=>({label:me.role_name??me.name??me.label??"",value:String(me.id??me.role_id??me.value??"")})),[B]),N=i.useMemo(()=>[{label:"Student",value:"Student"},...$],[$]),{data:V}=q(t?[lt.smsCompose.classDropdown,t]:null,([ye,me])=>Y(ye,me)),Q=i.useMemo(()=>hn(V).map(me=>({label:me.class_name??me.name??me.label??"",value:String(me.id??me.class_id??me.value??""),...me})),[V]),Z=i.useMemo(()=>z?`${lt.smsCompose.sectionByClass}?class_id=${encodeURIComponent(z)}`:null,[z]),{data:J}=q(t&&Z?[Z,t]:null,([ye,me])=>Y(ye,me)),K=i.useMemo(()=>hn(J).map(me=>({label:me.section_name??me.name??me.label??"",value:String(me.id??me.section_id??me.value??""),...me})),[J]),X=ye=>{const me=Q.find(Pe=>Pe.value===ye)||{label:"",value:ye};j({label:me.label,value:me.value}),k(me.value),O(Pe=>!Pe),C([])},ee=()=>{if(!x.value||F.length===0)return;const ye=E.find(Pe=>Pe.kind==="class"&&Pe.class_id===x.value),me=F;if(ye){const Pe=Array.from(new Set([...ye.section_ids,...me]));P(Ye=>Ye.map(ze=>ze.kind==="class"&&ze.class_id===x.value?{...ze,section_ids:Pe}:ze))}else P(Pe=>[...Pe,{kind:"class",label:`Class: ${x.label}`,class_id:x.value,class_label:x.label,section_ids:me}]);C([])},pe=async ye=>{if(v(ye),!ye){y([]);return}try{const me=`${lt.smsCompose.staffSearch}?name=${encodeURIComponent(ye)}&role=${encodeURIComponent(f)}`,Pe=await Y(me,t),Ye=hn(Pe);y(Ye.map(ze=>({label:ze.staff_name??ze.name??ze.full_name??"",value:String(ze.id??ze.staff_id??ze.employee_id??ze.value??""),...ze})))}catch{y([])}},te=(ye,me)=>{E.find(Ye=>Ye.kind==="staff"&&Ye.value===me.value)||P(Ye=>[...Ye,{kind:"staff",label:me.label,value:me.value,type:c}])},se=async ye=>{if(A(ye),!ye){u([]);return}try{const me=`${lt.smsCompose.studentDropdown}?class=${encodeURIComponent(g)}&section=${encodeURIComponent(T)}&name=${encodeURIComponent(ye)}`,Pe=await Y(me,t),Ye=hn(Pe);u(Ye.map(ze=>({label:ze.student_name??ze.name??"",value:String(ze.roll_no??ze.roll??ze.value??""),id:String(ze.id??ze.student_id??ze.value??""),...ze})))}catch{u([])}},le=(ye,me)=>{E.find(Ye=>Ye.kind==="student"&&Ye.id===me.id)||P(Ye=>[...Ye,{kind:"student",label:me.label,value:me.value,id:me.id}])},Ce=ye=>{P(me=>me.filter((Pe,Ye)=>Ye!==ye))},Le=i.useMemo(()=>{if(!l)return[];const me=(l.match(/\{\{\s*[^{}]+\s*\}\}/g)||[]).map(Pe=>Pe.replace(/\s+/g,""));return Array.from(new Set(me))},[l]),Re=async()=>{if(!r||E.length===0)return;const ye=new FormData;ye.append("is_individual",a==="1"?"1":"0"),ye.append("is_class",a==="2"?"1":"0"),ye.append("message",l),ye.append("template_id",r),E.forEach((me,Pe)=>{me.kind==="staff"?ye.append("staff_ids[]",me.value):me.kind==="student"?ye.append("student_ids[]",me.id):me.kind==="class"&&(ye.append(`classArr[${Pe}][class_id]`,me.class_id),me.section_ids.forEach(Ye=>ye.append(`classArr[${Pe}][section_ids][]`,Ye)))}),H(!0);try{const me=await bn(lt.smsCompose.sendMessage,ye,t);me?.Status==="Success"?(s.message.success("SMS sent successfully!"),P([]),O(!1),j({label:"",value:""}),C([])):s.message.error(me?.msg??"Failed to send SMS")}catch(me){s.message.error(me?.message??"Failed to send SMS")}finally{H(!1)}},xe=E.length,Te=[{title:"Recipient",key:"label",render:(ye,me)=>me.kind==="student"?e.jsxs(e.Fragment,{children:[e.jsx(s.Tag,{color:"blue",children:"Student"}),me.label]}):me.kind==="class"?e.jsxs(e.Fragment,{children:[e.jsx(s.Tag,{color:"purple",children:"Class"}),me.label," — ",me.section_ids.length," section(s)"]}):e.jsxs(e.Fragment,{children:[e.jsx(s.Tag,{color:"green",children:me.type||"Staff"}),me.label]})},{title:"Actions",key:"actions",render:(ye,me,Pe)=>e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{}),onClick:()=>Ce(Pe)})}],Ue=ye=>{n(ye),P([]),h(""),p(""),v(""),y([]),b(""),R(""),A(""),u([]),j({label:"",value:""}),O(!1),C([])};return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:e.jsxs(s.Space,{children:[e.jsx(re.MailOutlined,{}),e.jsx("span",{children:"SMS Campaign Composer"})]})}),children:[e.jsx("div",{style:{marginBottom:16},children:e.jsxs(s.Typography.Text,{type:"secondary",children:["Available placeholders: ",e.jsx("code",{children:n0})]})}),e.jsx(s.Tabs,{size:"small",type:"card",value:a,onChange:Ue,items:[{key:"1",label:"Individual"},{key:"2",label:"Class"}]}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:24},children:[e.jsx(s.Card,{size:"small",title:"Message Details",children:e.jsxs(s.Space,{direction:"vertical",size:16,style:{width:"100%"},children:[e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Choose Template*"}),e.jsx(s.Select,{style:{width:"100%"},placeholder:"Select a template",value:r||void 0,onChange:ye=>{o(ye);const me=L.find(Pe=>Pe.value===ye);d(me?.template_body??"")},options:L,showSearch:!0,optionFilterProp:"label"}),L.length===0&&e.jsx(s.Typography.Text,{type:"secondary",style:{display:"block",marginTop:6},children:"No active templates available. Add one in SMS Alert Setting."})]}),e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Message*"}),e.jsx(s.Input.TextArea,{rows:5,value:l,readOnly:!0,placeholder:"Select a template to preview the message"})]}),Le.length>0&&e.jsxs("div",{children:[e.jsx(s.Typography.Text,{strong:!0,style:{display:"block",marginBottom:8},children:"Available placeholders"}),e.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:Le.map(ye=>e.jsx(s.Tag,{color:"blue",children:ye},ye))}),e.jsx(s.Typography.Text,{type:"secondary",style:{display:"block",marginTop:6},children:"The server replaces these placeholders per recipient."})]})]})}),e.jsx(s.Card,{size:"small",title:"Recipient Selection",children:e.jsxs(s.Space,{direction:"vertical",size:16,style:{width:"100%"},children:[a==="1"&&e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Message To*"}),e.jsx(s.Select,{style:{width:"100%"},placeholder:"Select recipient type",value:c||void 0,onChange:ye=>{h(ye),p(ye==="Student"?"Student":""),v(""),y([]),A(""),u([]),b(""),R("")},options:N}),c&&c!=="Student"&&e.jsx("div",{style:{marginTop:16},children:e.jsx(s.AutoComplete,{style:{width:"100%"},value:m,placeholder:`Search ${c} by name`,options:S,onSearch:pe,onSelect:te,notFoundContent:m?"No staff found":""})}),c==="Student"&&e.jsxs("div",{style:{marginTop:16,display:"grid",gap:12},children:[e.jsx(s.Select,{placeholder:"Class",value:g||void 0,onChange:ye=>{b(ye),k(ye),R(""),A(""),u([])},options:Q,showSearch:!0,optionFilterProp:"label"}),g&&e.jsx(s.Select,{placeholder:"Section",value:T||void 0,onChange:ye=>{R(ye),A(""),u([])},options:K}),g&&T&&e.jsx(s.AutoComplete,{placeholder:"Search student",value:I,options:_,onSearch:se,onSelect:le,notFoundContent:I?"No student found":""})]})]}),a==="2"&&e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Class*"}),e.jsx(s.Select,{style:{width:"100%"},placeholder:"Select class",value:x.value||void 0,onChange:X,options:Q,showSearch:!0,optionFilterProp:"label"}),x.value&&K.length>0&&e.jsxs("div",{style:{marginTop:16},children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Sections"}),e.jsx(s.Select,{style:{width:"100%"},mode:"multiple",placeholder:"Select sections",value:F,onChange:C,options:K.map(ye=>({label:ye.label,value:ye.value}))}),e.jsx(s.Button,{type:"primary",size:"small",style:{marginTop:8},onClick:ee,disabled:F.length===0,children:"Add Class Recipients"})]})]}),e.jsxs("div",{children:[e.jsxs(s.Typography.Text,{strong:!0,style:{display:"block",marginBottom:10},children:["Selected Recipients (",xe,")"]}),e.jsx(s.Table,{bordered:!0,size:"small",columns:Te,dataSource:E,rowKey:(ye,me)=>`${ye.kind}-${me}`,pagination:!1,scroll:{y:200},locale:{emptyText:"No recipients selected"}})]})]})})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12,alignItems:"center"},children:[e.jsxs(s.Typography.Text,{type:"secondary",children:["Mode: ",a==="1"?"Individual":"Class"," | ",xe," recipients selected"]}),e.jsx(de,{type:"button",value:U?"Sending...":"Send SMS",color:"primary",onClick:Re,disabled:U||!r||xe===0})]})]})]})}const Qn=lt.smsTemplates,r0=lt.smsGateway,i0="{{student_name}} {{parent_name}} {{amount}} {{date}} {{time}} {{id}} {{school_name}} {{date_time}}";function o0({token:t}){const[a,n]=i.useState(!1),[r,o]=i.useState(""),[l,d]=i.useState(!1),[c,h]=i.useState(""),[f,p]=i.useState(!1),[m,v]=i.useState(!1),[S,y]=i.useState([]),[g,b]=i.useState(!0),[T,R]=i.useState(1),[I]=i.useState(10),[A,_]=i.useState(""),[u,x]=i.useState(""),[j,M]=i.useState(""),[O,z]=i.useState({current_page:1,total_pages:1,total_rows:0}),[k,F]=i.useState(null),[C,E]=i.useState({name:!1,template_body:!1}),[P,U]=i.useState(!1),H=async()=>{try{const K=await Y(r0.get,t);if(K?.Status==="Success"){const X=K?.data?.[0]??K?.data??null;if(!X)return;o(X.header??X.header_key??""),h(X.api_key??""),n(!0)}}catch(K){console.log(K)}},W=async K=>{const X={},ee={page:X.page??T,perPage:X.perPage??I,search:X.search??u,status:X.status??j},pe=new URLSearchParams;pe.set("page",ee.page),pe.set("per_page",ee.perPage),ee.search&&pe.set("search",ee.search),ee.status&&pe.set("status",ee.status),b(!0);try{const te=await Y(`${Qn.table}?${pe.toString()}`,t);te?.Status==="Success"?(y(Array.isArray(te.data)?te.data:[]),z({current_page:te?.pagination?.current_page??1,total_pages:te?.pagination?.total_pages??1,total_rows:te?.pagination?.total_rows??(Array.isArray(te.data)?te.data.length:0)})):(y([]),z({current_page:1,total_pages:1,total_rows:0}),te?.msg==="Invalid page number"&&Number(ee.page)>1?R(1):te?.msg&&te.msg!=="No data found."&&D.error(te.msg,{duration:1500}))}catch(te){console.log(te),y([]),z({current_page:1,total_pages:1,total_rows:0}),D.error(te?.message??"Failed to load templates",{duration:1500})}finally{b(!1)}};i.useEffect(()=>{H()},[]),i.useEffect(()=>{W()},[T,I,u,j]);const L=()=>{F({name:"",template_body:"",status:"Active"}),E({name:!1,template_body:!1})},B=K=>{F({id:K.id,name:K.name,template_body:K.template_body,status:K.status}),E({name:!1,template_body:!1})},$=()=>{F(null),E({name:!1,template_body:!1})},N=()=>{const K={name:!k?.name?.trim(),template_body:!k?.template_body?.trim()};return E(K),!K.name&&!K.template_body},V=async()=>{if(!(!k||!N())){U(!0);try{const K={name:k.name.trim(),template_body:k.template_body,status:k.status||"Active"},X=k.id?Qn.edit:Qn.add;await bn(X,{id:k.id??"",...K},t),D.success(k.id?"Template updated!":"Template added!",{duration:1e3}),$(),W()}catch(K){D.error(K?.message??"Failed to save template",{duration:1500})}finally{U(!1)}}},Q=async K=>{const X=K.status==="Active"?"Deactive":"Active";try{const ee=await bn(Qn.changeStatus,{id:K.id,status:X},t);ee?.Status==="Success"?(D.success(`Template ${X}`,{duration:1e3}),W()):D.error(ee?.msg??"Failed to update status",{duration:1500})}catch(ee){D.error(ee?.message??"Failed to update status",{duration:1500})}},Z=async K=>{if(window.confirm(`Delete template "${K.name}"?`))try{const X=await st(Qn.delete,K.id,t);X?.Status==="Success"?(D.success("Template deleted",{duration:1e3}),W()):D.error(X?.msg??"Failed to delete template",{duration:1500})}catch(X){D.error(X?.message??"Failed to delete template",{duration:1500})}},J=i.useMemo(()=>[{title:"Name",dataIndex:"name",key:"name",ellipsis:!0},{title:"Template Body",dataIndex:"template_body",key:"template_body",ellipsis:!0},{title:"Status",key:"status",width:140,render:(K,X)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(s.Tag,{color:X?.status==="Active"?"green":"red",children:X?.status??""}),e.jsx(s.Switch,{size:"small",checked:X?.status==="Active",onChange:()=>Q(X)})]})},{title:"Actions",key:"actions",width:120,render:(K,X)=>e.jsxs("div",{style:{display:"flex",gap:8},children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),onClick:()=>B(X)}),e.jsx(s.Button,{type:"text",danger:!0,icon:e.jsx(re.DeleteOutlined,{}),onClick:()=>Z(X)})]})}],[]);return e.jsxs("div",{style:{display:"grid",gap:20},children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"SMS Templates"}),children:[e.jsx("div",{style:{marginBottom:16},children:e.jsxs("div",{style:{fontSize:14,color:"#666",marginBottom:8},children:["Available placeholders: ",e.jsx("code",{children:i0})]})}),k?e.jsxs(s.Card,{style:{borderRadius:8,border:"1px solid #B7D4FF",backgroundColor:"#F7FBFF",padding:16,marginBottom:16},children:[e.jsx(s.Typography.Title,{level:7,style:{margin:0,marginBottom:16},children:k.id?`Edit Template #${k.id}`:"New Template"}),e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Template Name*"}),e.jsx(s.Input,{maxLength:45,value:k.name,onChange:K=>F(X=>({...X,name:K.target.value})),status:C.name?"error":"",placeholder:"Template name"}),C.name&&e.jsx("div",{style:{color:"red",fontSize:12,marginTop:4},children:"Required field"})]}),e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Template Body*"}),e.jsx(s.Input.TextArea,{rows:4,value:k.template_body,onChange:K=>F(X=>({...X,template_body:K.target.value})),status:C.template_body?"error":"",placeholder:"Template body"}),C.template_body&&e.jsx("div",{style:{color:"red",fontSize:12,marginTop:4},children:"Required field"})]}),e.jsxs("div",{style:{display:"flex",gap:12,justifyContent:"flex-end"},children:[e.jsx(s.Button,{size:"small",onClick:$,disabled:P,children:"Cancel"}),e.jsx(s.Button,{size:"small",type:"primary",loading:P,onClick:V,children:P?"Saving...":"Save"})]})]})]}):e.jsx(s.Button,{icon:e.jsx(re.PlusOutlined,{}),type:"primary",style:{marginBottom:16},onClick:L,children:"Add Template"}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[e.jsxs("div",{style:{display:"flex",gap:12},children:[e.jsx(s.Input,{placeholder:"Search by name or body",value:A,onChange:K=>_(K.target.value),onKeyDown:K=>{K.key==="Enter"&&(R(1),x(A.trim()))},style:{width:280}}),e.jsxs("select",{value:j,onChange:K=>{R(1),M(K.target.value)},style:{padding:"6px 12px",borderRadius:6,border:"1px solid #d9d9d9"},children:[e.jsx("option",{value:"",children:"All statuses"}),e.jsx("option",{value:"Active",children:"Active"}),e.jsx("option",{value:"Deactive",children:"Deactive"})]})]}),e.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[e.jsxs("span",{style:{fontSize:13,color:"#666"},children:["Page ",O.current_page," of ",Math.max(O.total_pages,1)," - ",O.total_rows," total"]}),e.jsx(s.Button,{size:"small",onClick:()=>R(K=>Math.max(1,K-1)),disabled:O.current_page<=1||g,children:"Prev"}),e.jsx(s.Button,{size:"small",onClick:()=>R(K=>K+1),disabled:O.current_page>=O.total_pages||g,children:"Next"})]})]}),e.jsx(s.Table,{bordered:!0,size:"small",columns:J,dataSource:S,loading:g,rowKey:K=>K.id,pagination:!1,scroll:{x:"max-content"}})]})]})}const Xd=lt.smsDetails,Zd=t=>{try{const a=new URL(t.trim());return(a.protocol==="http:"||a.protocol==="https:")&&!!a.hostname}catch{return!1}};function l0({token:t}){const[a,n]=i.useState(!1),[r,o]=i.useState(!1),[l,d]=i.useState({api_key:!1,url:!1}),[c,h]=i.useState(!1),[f,p]=i.useState({api_key:"",url:"",header_key:""}),[m,v]=i.useState("");i.useEffect(()=>{S()},[]);const S=async()=>{try{const T=await bn(Xd.get,{},t);if(T?.Status==="Success"){const R=T?.data?.[0]??T?.data??null;if(!R){n(!1);return}p({api_key:"",url:R.url||"",header_key:R.header_key||""}),v(R.api_key||""),n(!0)}}catch(T){console.error("SMS settings fetch error:",T)}},y=T=>{const{name:R,value:I}=T.target;p(A=>({...A,[R]:I})),l[R]&&d(A=>({...A,[R]:!1}))},g=()=>{n(!1),p(T=>({...T,api_key:""})),h(!1)},b=async()=>{const T={api_key:!f.api_key.trim(),url:!f.url.trim()||!Zd(f.url)};if(d(T),!Object.values(T).some(Boolean)){o(!0);try{const I={api_key:f.api_key.trim(),url:f.url.trim(),header_key:f.header_key.trim()},A=await bn(Xd.save,I,t);A?.Status==="Success"?(s.message.success("Data Updated successfully!"),await S()):s.message.error(A?.msg??"Failed to update SMS settings")}catch(I){console.error("SMS settings save error:",I),s.message.error("Failed to update SMS settings.")}finally{o(!1)}}};return e.jsx("div",{style:{display:"grid",gap:20},children:e.jsx(s.Card,{title:e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"SMS Details Setting"}),children:e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:20,alignItems:"end"},children:[e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"API Key"}),e.jsxs("div",{style:{position:"relative",display:"flex",alignItems:"flex-end"},children:[e.jsx(s.Input,{name:"api_key",value:a?"*****":f.api_key,onChange:y,disabled:a,status:l.api_key?"error":"",placeholder:"Enter API key",style:{paddingRight:a?40:0}}),a&&e.jsx(s.Button,{type:"text",icon:e.jsx(re.EyeOutlined,{}),size:"small",style:{position:"absolute",right:4,padding:0,height:"auto"},onClick:()=>h(!c)})]}),a&&c&&e.jsx("div",{style:{marginTop:4,fontSize:12,wordBreak:"break-all"},children:m||"No key saved"}),l.api_key&&e.jsx("div",{style:{color:"red",fontSize:12,marginTop:4},children:"Required field"})]}),e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"URL"}),e.jsx(s.Input,{name:"url",value:f.url,onChange:y,onBlur:()=>{f.url&&!Zd(f.url)&&d(T=>({...T,url:!0}))},disabled:a,status:l.url?"error":"",placeholder:"https://example.com"}),l.url&&e.jsx("div",{style:{color:"red",fontSize:12,marginTop:4},children:"Please enter a valid URL (e.g. https://example.com)"})]}),e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Header Key"}),e.jsx(s.Input,{name:"header_key",value:f.header_key,onChange:y,disabled:a,placeholder:"Enter header key"})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:a?e.jsx(s.Button,{type:"primary",onClick:g,children:"Edit"}):e.jsx(de,{type:"button",value:r?"Saving...":"Save",color:"primary",onClick:b,disabled:r})})]})})})}const La=lt.chat,d0=t=>lt.getMessages(t),c0=t=>lt.getSendMessages(t),ec=t=>{try{return t?JSON.parse(t):null}catch{return null}},u0=t=>/\.(jpg|jpeg|png|gif|webp|bmp|svg)$/i.test(t);function tc(t,a){if(!t)return"";try{const n=new URL(a),r=new URL(t,a);return(r.hostname==="localhost"||r.hostname==="127.0.0.1")&&(r.protocol=n.protocol,r.host=n.host),r.toString()}catch{return t}}function p0(t){if(!t)return"";const a=new Date(t);return Number.isNaN(a.getTime())?"":a.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function m0(t){return t?.fromMe?"You":t?.senderName??t?.contactName??t?.senderJid??t?.chatJid??"Unknown"}function ac(t){return{phone:t?.phone??t?.mobile??t?.mobileno??t?.whatsapp_number??"",jid:t?.jid??t?.chatJid??t?.whatsapp_jid??t?.whatsapp_group_id??""}}const h0=["😀","😃","😄","😅","😂","😊","😍","😎","😢","🙏","👍","❤️","🔥","🎉"],nc={people:["😀","😁","😂","🤣","🙂","🙃","😉","😊","😌","😍","🥰","😘","😋","😛","😝","😜","🤪","🤓","😎","🤩","🥳","😏","😒","😞","😔","😟"],nature:["😺","😻","🐶","🐱","🐭","🐹","🐰","🦊","🐻","🐼","🐨","🐯","🦁","🐮","🐷","🐸"],food:["🍔","🍕","🌭","🍿","🧁","🍰","🎂","🍪","🍪","🍫","🍬","🍩","🍓","🍎","🍌"],activities:["⚽","🏀","🏈","⚾","🎾","🏐","🏉","🎱","🏓","🏸","🥅","🏒","🏑","🎯","🎯"],travel:["✈️","🚗","🚕","🚌","🚆","🚗","🏍️","🚲","🛳️","🚢","🚁","🚂"],objects:["📱","💻","📺","🔊","🎧","📷","📹","💾","💿","📠","📠","🖨️"],symbols:["⭐","🌟","✅","❌","❓","❔","🔴","🟢","🔵","⚪","⚫","🔶"],flags:["🏁","🚩","🎌","🏴","🏳️"]},f0={people:"People",nature:"Nature",food:"Food & Drink",activities:"Activities",travel:"Travel",objects:"Objects",symbols:"Symbols",flags:"Flags"};function Uu({token:t}){const a=i.useMemo(()=>ec(localStorage.getItem("Userdata"))||{},[]),n=i.useMemo(()=>ec(localStorage.getItem("genrall_settings"))||{},[]),r=i.useMemo(()=>a?.branch_id??"",[a?.branch_id]),o=i.useMemo(()=>n?.session_id??"1",[n?.session_id]),l=La.whatsappBaseUrl,[d,c]=i.useState("teacher"),[h,f]=i.useState({}),[p,m]=i.useState(""),[v,S]=i.useState(""),[y,g]=i.useState([]),[b,T]=i.useState(!1),[R,I]=i.useState("people"),[A,_]=i.useState(""),[u,x]=i.useState(!1),[j,M]=i.useState(0),[O,z]=i.useState(!1),[k,F]=i.useState(!1),[C,E]=i.useState("Staff"),[P,U]=i.useState([]),[H,W]=i.useState([]),[L,B]=i.useState(""),[$,N]=i.useState(null),V=i.useRef(null),Q=i.useRef(null),Z=i.useRef(null),J=i.useRef(new Set),K=i.useRef(new Set),X=i.useRef(""),[ee,pe]=i.useState({}),{data:te}=q(t?[La.teacherDropdown,t]:null,([oe,ge])=>Y(oe,ge)),se=i.useMemo(()=>{const oe=te?.data?.data??te?.data??te??[];return Array.isArray(oe)?oe.map(ge=>({label:ge.staff_name??ge.name??ge.full_name??"",value:String(ge.id??ge.staff_id??ge.employee_id??ge.value??""),...ge})):[]},[te]),{data:le}=q(t?[La.classDropdown,t]:null,([oe,ge])=>Y(oe,ge)),Ce=i.useMemo(()=>{const oe=le?.data?.data??le?.data??le??[];return Array.isArray(oe)?oe.map(ge=>({label:ge.class_name??ge.name??ge.label??"",value:String(ge.id??ge.class_id??ge.value??""),...ge})):[]},[le]),{data:Le}=q($?[$,t]:null,([oe,ge])=>Y(oe,ge)),Re=i.useMemo(()=>{const oe=Le?.data?.data??Le?.data??Le??[];return Array.isArray(oe)?oe.map(ge=>({label:ge.section_name??ge.name??ge.label??"",value:String(ge.id??ge.section_id??ge.value??""),...ge})):[]},[Le]),{data:xe}=q(t?[`${La.groupList}?type=staff`,t]:null,([oe,ge])=>Y(oe,ge)),{data:Te}=q(t?[`${La.groupList}?type=student`,t]:null,([oe,ge])=>Y(oe,ge)),Ue=d==="teacher"?Array.isArray(xe?.data)?xe.data:[]:Array.isArray(Te?.data)?Te.data:[];i.useEffect(()=>{if(!Ue||Ue.length===0){m("");return}Ue.some(oe=>oe.id===p)||m(Ue[0].id)},[Ue,p]);const ye=Ue.find(oe=>oe.id===p)??Ue[0]??null,me=ye?.id??null,Pe=ye?h[ye.id]??[]:[],Ye=async oe=>{const{jid:ge}=ac(oe);if(ge)try{const $e=`${d0(l)}?schoolCode=${encodeURIComponent(r)}&chatJid=${encodeURIComponent(ge)}`,Ne=await dt.get($e),ht=Array.isArray(Ne?.data?.messages)?Ne.data.messages:[];f(yt=>({...yt,[oe.id]:ht.map(Dt=>({...Dt,fromMe:Dt.direction==="outbound",text:Dt.body||""}))}))}catch($e){const Ne=$e?.response?.data?.message||$e?.message||"Failed to load messages.";message.error(Ne)}};i.useEffect(()=>{!me||h[me]||Ye(ye)},[h,ye,me]);const ze=oe=>{f(ge=>{const $e={...ge},Ne=$e[p]??[];return $e[p]=[...Ne,{id:Date.now(),fromMe:!0,text:oe}],$e})},we=(oe="smooth")=>{if(typeof Z.current?.scrollIntoView=="function"){Z.current.scrollIntoView({behavior:oe,block:"end"});return}Q.current&&(Q.current.scrollTop=Q.current.scrollHeight)},ke=()=>{const oe=Q.current;return oe?oe.scrollHeight-oe.scrollTop-oe.clientHeight:0},De=()=>{const oe=ke()<100;x(!oe),oe&&M(0)};i.useEffect(()=>{X.current="",x(!1),M(0);const oe=globalThis.setTimeout(()=>{we("auto"),De()},0);return()=>globalThis.clearTimeout(oe)},[me]),i.useEffect(()=>{const oe=Pe[Pe.length-1];if(!oe)return;const ge=`${oe.id}-${oe.createdAt||""}-${Pe.length}`,$e=X.current,Ne=ke()<100;if(!$e||Ne||oe.fromMe){const ht=globalThis.setTimeout(()=>{we($e?"smooth":"auto"),De()},0);return X.current=ge,()=>globalThis.clearTimeout(ht)}$e!==ge&&!oe.fromMe&&(x(!0),M(ht=>ht+1)),X.current=ge},[Pe]);const[ce,ve]=i.useState({});i.useEffect(()=>{const oe=Pe.filter(Ne=>Ne?.messageType==="image"&&Ne?.mediaUrl&&!ee[Ne.id]&&!ce[Ne.id]);if(oe.length===0)return;let ge=!1;return(async()=>{for(const Ne of oe){const ht=tc(Ne.mediaUrl,l);try{const yt=await dt.get(ht,{responseType:"blob"}),Dt=URL.createObjectURL(yt.data);K.current.add(Dt),ge||pe(be=>({...be,[Ne.id]:Dt}))}catch{ge||ve(yt=>({...yt,[Ne.id]:ht}))}}})(),()=>{ge=!0}},[Pe,ee,ce,l]);const _e=()=>{g(oe=>(oe.forEach(ge=>{ge?.previewUrl&&(URL.revokeObjectURL(ge.previewUrl),J.current.delete(ge.previewUrl))}),[]))},Ve=oe=>{g(ge=>{const $e=[...ge],[Ne]=$e.splice(oe,1);return Ne?.previewUrl&&(URL.revokeObjectURL(Ne.previewUrl),J.current.delete(Ne.previewUrl)),$e})};i.useEffect(()=>()=>{J.current.forEach(oe=>URL.revokeObjectURL(oe)),J.current.clear(),K.current.forEach(oe=>URL.revokeObjectURL(oe)),K.current.clear()},[]);const He=oe=>{if(!oe||oe.length===0)return;const ge=oe.filter(Boolean).filter($e=>$e.type?.startsWith("image/")||$e.type==="application/pdf").map($e=>{const Ne=$e.type?.startsWith("image/")?URL.createObjectURL($e):"";return Ne&&J.current.add(Ne),{file:$e,name:$e.name||"Attachment",previewUrl:Ne,type:$e.type||""}});g($e=>[...$e,...ge])},je=({url:oe,trimmedMessage:ge,attachments:$e,schoolCode:Ne,sessionId:ht,phone:yt,jid:Dt})=>{if($e.length>0){const Ie=new FormData;return Ie.append(Ne?"schoolCode":"sessionId",Ne||ht),Ie.append(yt?"phone":"jid",yt||Dt),Ie.append("queue","false"),ge&&Ie.append("text",ge),$e.forEach(at=>{Ie.append("file",at.file)}),dt.post(oe,Ie,{headers:{"Content-Type":"multipart/form-data"}})}const be={text:ge,queue:!1,[Ne?"schoolCode":"sessionId"]:Ne||ht,[yt?"phone":"jid"]:yt||Dt};return dt.post(oe,be,{headers:{"Content-Type":"application/json"}})},Me=({selectedItem:oe,trimmedMessage:ge,attachments:$e,schoolCode:Ne,sessionId:ht,phone:yt,jid:Dt})=>!ge&&$e.length===0||!oe?{shouldProceed:!1,message:""}:!Ne&&!ht?{shouldProceed:!1,message:"School code or session id is required."}:!yt&&!Dt?{shouldProceed:!1,message:"Phone or jid is required for the selected chat."}:{shouldProceed:!0,message:""},rt=async()=>{const oe=v.trim(),{phone:ge,jid:$e}=ac(ye),Ne=Me({selectedItem:ye,trimmedMessage:oe,attachments:y,schoolCode:r,sessionId:o,phone:ge,jid:$e});if(!Ne.shouldProceed){Ne.message&&message.error(Ne.message);return}try{await je({url:`${c0(l)}`,trimmedMessage:oe,attachments:y,schoolCode:r,sessionId:o,phone:ge,jid:$e}),ze(oe),S(""),_e(),T(!1),message.success("Message sent.")}catch(ht){const yt=ht?.response?.data?.message||ht?.message||"Failed to send message.";message.error(yt)}},vt=[{value:"Staff",label:"Staff"},{value:"Class",label:"Class"}],na=async oe=>{oe.preventDefault(),F(!0);const ge=new FormData(oe.target);ge.append("session_id",o),ge.set("type",C),C==="Staff"?Array.isArray(P)&&P.forEach($e=>{$e!=null&&$e!==""&&ge.append("staff_id[]",$e)}):(L!=null&&L!==""&&ge.set("class_id",L),Array.isArray(H)&&H.forEach($e=>{$e!=null&&$e!==""&&ge.append("section_id[]",$e)}));try{await Wc(La.groupCreate,ge,t)?(message.success("Group created successfully!"),z(!1),U([]),W([]),B("")):message.error("Failed to create group.")}catch{message.error("Failed to create group.")}finally{F(!1)}oe.target.reset()},Vt=()=>z(!1),Se=oe=>{S(ge=>ge+oe),T(!1)},Oe=(h[ye?.id]??[]).slice(-1)[0]?.text??"No messages";return e.jsxs("div",{style:{height:"100%",overflow:"hidden",display:"flex",flexDirection:"column"},children:[e.jsx(s.Modal,{title:"Create Group",footer:null,open:O,onCancel:Vt,children:e.jsx("form",{onSubmit:na,children:e.jsxs("div",{style:{display:"grid",gap:16},children:[e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Group Name*"}),e.jsx(s.Input,{name:"name",type:"text",required:!0})]}),e.jsxs("div",{children:[e.jsx("label",{style:{display:"block",fontSize:14,fontWeight:500,marginBottom:6},children:"Type*"}),e.jsx(s.Select,{value:C,onChange:E,options:vt,style:{width:"100%"}})]}),C==="Staff"?e.jsx(s.Select,{mode:"multiple",label:"Staff",options:se,closeMenuOnSelect:!0,value:P,onChange:U,placeholder:"Select staff"}):e.jsxs(e.Fragment,{children:[e.jsx(s.Select,{label:"Class",options:Ce,closeMenuOnSelect:!0,value:L||void 0,onChange:oe=>{B(oe),N(`${La.sectionByClass}?class_id=${oe}`),W([])},placeholder:"Select class"}),e.jsx(s.Select,{mode:"multiple",label:"Section",options:Re.map(oe=>({label:oe.label,value:oe.value})),placeholder:"Select sections",value:H,onChange:W})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"flex-end",gap:12},children:[e.jsx(s.Button,{onClick:Vt,children:"Cancel"}),e.jsx(s.Button,{type:"primary",htmlType:"submit",loading:k,children:"Create"})]})]})})}),e.jsxs("div",{style:{flex:1,overflow:"hidden",display:"grid",gridTemplateColumns:"350px 1fr"},children:[e.jsxs("div",{style:{borderRight:"1px solid #e0e0e0",display:"flex",flexDirection:"column"},children:[e.jsxs("div",{style:{padding:"10px 16px",borderBottom:"1px solid #eee",display:"flex",gap:8,justifyContent:"space-between",alignItems:"center"},children:[e.jsxs(s.Space,{children:[e.jsx(s.Button,{type:d==="teacher"?"primary":"default",onClick:()=>c("teacher"),children:"Teacher"}),e.jsx(s.Button,{type:d==="class"?"primary":"default",onClick:()=>c("class"),children:"Student"})]}),e.jsx(s.Button,{type:"primary",onClick:()=>z(!0),children:"Create Group"})]}),e.jsx("div",{style:{flex:1,overflowY:"auto"},children:Ue.map(oe=>{const ge=p===oe.id;return e.jsxs("div",{onClick:()=>m(oe.id),style:{display:"flex",alignItems:"center",gap:8,padding:"12px 16px",cursor:"pointer",backgroundColor:ge?"#f5f9ff":"transparent",borderBottom:"1px solid #f0f0f0"},children:[e.jsx("div",{style:{width:36,height:36,borderRadius:"50%",backgroundColor:"#e0e0e0",display:"flex",alignItems:"center",justifyContent:"center",fontSize:14,fontWeight:"bold",color:"#555"},children:(oe.group_name||oe.name||"?").charAt(0)}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx(s.Typography.Text,{strong:!0,style:{display:"block"},children:oe.group_name||oe.name||""}),e.jsx(s.Typography.Text,{type:"secondary",style:{fontSize:12,display:"block"},children:Oe})]})]},oe.id)})})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",height:"100%"},children:[e.jsxs("div",{style:{padding:"10px 16px",borderBottom:"1px solid #eee",display:"flex",gap:8,alignItems:"center"},children:[e.jsx("div",{style:{width:36,height:36,borderRadius:"50%",backgroundColor:"#e0e0e0",display:"flex",alignItems:"center",justifyContent:"center",fontSize:14,fontWeight:"bold",color:"#555"},children:(ye?.group_name||"?").charAt(0)}),e.jsxs("div",{children:[e.jsx(s.Typography.Text,{strong:!0,style:{display:"block"},children:ye?.group_name||"Select a chat"}),e.jsx(s.Typography.Text,{type:"secondary",style:{fontSize:11},children:d==="teacher"?"Teacher":"Class"})]})]}),e.jsxs("div",{ref:Q,onScroll:De,style:{flex:1,minHeight:0,padding:"12px 16px",overflowY:"auto",backgroundColor:"#f7f8fa"},children:[Pe.length===0?e.jsx(s.Typography.Text,{type:"secondary",children:"No messages yet"}):Pe.map((oe,ge)=>e.jsx("div",{style:{display:"flex",justifyContent:oe.fromMe?"flex-end":"flex-start",marginBottom:16},children:e.jsxs("div",{style:{maxWidth:"75%",padding:"10px 14px",borderRadius:12,backgroundColor:oe.fromMe?"#d1e7ff":"#ffffff",border:"1px solid #e6e6e6"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:4,marginBottom:oe.text?6:0},children:[e.jsx(s.Typography.Text,{style:{fontSize:12,fontWeight:500,color:"#555"},children:m0(oe)}),e.jsx(s.Typography.Text,{style:{fontSize:11,color:"#999"},children:p0(oe.createdAt)})]}),(oe.text||oe.body)&&e.jsx(s.Typography.Text,{style:{display:"block",fontSize:14},children:oe.text||oe.body}),oe.messageType==="image"&&(oe.mediaUrl||oe?._data?.body)&&(ee[oe.id]?e.jsx("img",{alt:"Chat attachment",src:ee[oe.id],style:{marginTop:8,width:180,maxWidth:"100%",borderRadius:8,border:"1px solid #ddd"}}):ce[oe.id]?e.jsx("img",{alt:"Chat attachment",src:ce[oe.id],style:{marginTop:8,width:180,maxWidth:"100%",borderRadius:8,border:"1px solid #ddd"}}):oe.mediaUrl?e.jsx("img",{alt:"Chat attachment",src:tc(oe.mediaUrl,l),style:{marginTop:8,width:180,maxWidth:"100%",borderRadius:8,border:"1px solid #ddd"}}):null)]})},oe.id??ge)),e.jsx("div",{ref:Z})]}),u?e.jsx(s.Button,{onClick:()=>{we("smooth"),x(!1),M(0)},style:{position:"absolute",right:16,bottom:y.length>0?160:80,minWidth:44,width:44,height:44,borderRadius:"50%",backgroundColor:"#fff",color:"#1976d2",border:"1px solid #d9e3f0",boxShadow:"0 6px 18px rgba(0,0,0,0.14)",zIndex:3},"aria-label":"Scroll to bottom",children:e.jsxs("div",{style:{position:"relative",display:"flex",alignItems:"center"},children:[e.jsx(re.DownOutlined,{}),j>0?e.jsx("span",{style:{position:"absolute",top:-12,right:-18,minWidth:18,height:18,borderRadius:999,background:"#f44336",color:"#fff",fontSize:10,lineHeight:"18px",padding:"0 5px",textAlign:"center",fontWeight:700},children:j}):null]})}):null,e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4,borderTop:"1px solid #eee",backgroundColor:"#fff",borderRadius:9999,width:"100%",flexShrink:0,padding:"8px 8px 8px 12px",boxSizing:"border-box"},onDragOver:oe=>oe.preventDefault(),onDrop:oe=>{oe.preventDefault();const ge=Array.from(oe.dataTransfer?.files||[]);He(ge)},children:[e.jsx("input",{type:"file",multiple:!0,ref:V,style:{display:"none"},accept:"image/*,application/pdf",capture:"environment",onChange:oe=>{const ge=Array.from(oe.target.files||[]);He(ge),oe.target.value=""}}),e.jsx(s.Button,{type:"text",onClick:()=>V.current?.click(),style:{minWidth:0,width:38,height:38,borderRadius:"50%"},"aria-label":"Attach",icon:e.jsx(re.PlusOutlined,{})}),e.jsx(s.Button,{type:"text",onClick:()=>T(!b),style:{minWidth:0,width:38,height:38,borderRadius:"50%"},"aria-label":"Emoji",icon:e.jsx(re.SmileOutlined,{})}),e.jsx(s.Input,{placeholder:"Type a message",value:v,onChange:oe=>S(oe.target.value),onPaste:oe=>{const $e=Array.from(oe.clipboardData?.items||[]).filter(Ne=>Ne.kind==="file").map(Ne=>Ne.getAsFile()).filter(Boolean);$e.length&&He($e)},style:{flex:1,borderRadius:9999},onPressEnter:rt}),e.jsx(s.Button,{type:"primary",onClick:rt,disabled:!v.trim()&&y.length===0||!ye,style:{minWidth:0,width:40,height:40,borderRadius:"50%",backgroundColor:"#25D366",border:"none"},"aria-label":"Send",icon:e.jsx(re.SendOutlined,{})})]}),b&&e.jsx("div",{style:{borderTop:"1px solid #eee",display:"flex",flexWrap:"wrap",gap:2,padding:"6px 8px",maxHeight:180,overflowY:"auto"},children:h0.map((oe,ge)=>e.jsx("button",{type:"button",onClick:()=>Se(oe),style:{fontSize:20,background:"none",border:"none",cursor:"pointer",padding:2},children:oe},ge))}),b&&e.jsxs("div",{style:{borderTop:"1px solid #eee",padding:"8px",maxHeight:200,overflowY:"auto"},children:[e.jsx("div",{style:{fontSize:12,color:"#666",marginBottom:6},children:f0[R]}),e.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(8, 1fr)",gap:2},children:(A.trim()?Object.values(nc).flat().filter(oe=>oe.toLowerCase().includes(A.toLowerCase())):nc[R]).map((oe,ge)=>e.jsx("button",{type:"button",onClick:()=>Se(oe),style:{fontSize:20,background:"none",border:"none",cursor:"pointer",padding:2,textAlign:"center"},children:oe},`emoji-${oe}-${ge}`))})]}),y.length>0&&e.jsx("div",{style:{borderTop:"1px solid #eee",display:"flex",flexWrap:"wrap",gap:8,padding:8},children:y.map((oe,ge)=>oe?.previewUrl||u0(oe?.name||"")?e.jsxs("div",{style:{position:"relative"},children:[e.jsx("img",{alt:"Attachment preview",src:oe.previewUrl,style:{width:80,height:80,objectFit:"cover",borderRadius:6,border:"1px solid #eee"}}),e.jsx(s.Button,{type:"text",danger:!0,onClick:()=>Ve(ge),style:{position:"absolute",top:0,right:0,minWidth:0,padding:"2px 6px"},icon:e.jsx(re.DeleteOutlined,{})})]},ge):e.jsxs("div",{style:{padding:"4px 8px",borderRadius:6,border:"1px solid #ddd",backgroundColor:"#fafafa",fontSize:12,display:"flex",alignItems:"center",gap:6},children:[oe?.name||"Attachment",e.jsx(s.Button,{type:"text",danger:!0,onClick:()=>Ve(ge),style:{minWidth:0,padding:"2px 6px"},icon:e.jsx(re.DeleteOutlined,{})})]},ge))})]})]})]})}function g0({token:t}){return e.jsx("div",{style:{display:"grid",gap:20,height:"calc(100vh - 140px)"},children:e.jsx(s.Card,{title:e.jsxs(s.Space,{children:[e.jsx(re.MailOutlined,{}),e.jsx(s.Typography.Title,{level:5,style:{margin:0},children:"Send Whatsapp Message"})]}),style:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},children:e.jsx("div",{style:{flex:1,minHeight:0,overflow:"hidden",padding:24},children:e.jsx(Uu,{token:t})})})})}function Ct(t,a){if(t===!1||t===null||typeof t>"u")throw new Error(a)}function ga(t,a){if(!t){typeof console<"u"&&console.warn(a);try{throw new Error(a)}catch{}}}function Zi({pathname:t="/",search:a="",hash:n=""}){return a&&a!=="?"&&(t+=a.charAt(0)==="?"?a:"?"+a),n&&n!=="#"&&(t+=n.charAt(0)==="#"?n:"#"+n),t}function So(t){let a={};if(t){let n=t.indexOf("#");n>=0&&(a.hash=t.substring(n),t=t.substring(0,n));let r=t.indexOf("?");r>=0&&(a.search=t.substring(r),t=t.substring(0,r)),t&&(a.pathname=t)}return a}function Nu(t,a,n="/"){return y0(t,a,n,!1)}function y0(t,a,n,r){let o=typeof a=="string"?So(a):a,l=Ia(o.pathname||"/",n);if(l==null)return null;let d=zu(t);x0(d);let c=null;for(let h=0;c==null&&h<d.length;++h){let f=k0(l);c=D0(d[h],f,r)}return c}function zu(t,a=[],n=[],r="",o=!1){let l=(d,c,h=o,f)=>{let p={relativePath:f===void 0?d.path||"":f,caseSensitive:d.caseSensitive===!0,childrenIndex:c,route:d};if(p.relativePath.startsWith("/")){if(!p.relativePath.startsWith(r)&&h)return;Ct(p.relativePath.startsWith(r),`Absolute route path "${p.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),p.relativePath=p.relativePath.slice(r.length)}let m=Xt([r,p.relativePath]),v=n.concat(p);d.children&&d.children.length>0&&(Ct(d.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${m}".`),zu(d.children,a,v,m,h)),!(d.path==null&&!d.index)&&a.push({path:m,score:_0(m,d.index),routesMeta:v})};return t.forEach((d,c)=>{if(d.path===""||!d.path?.includes("?"))l(d,c);else for(let h of qu(d.path))l(d,c,!0,h)}),a}function qu(t){let a=t.split("/");if(a.length===0)return[];let[n,...r]=a,o=n.endsWith("?"),l=n.replace(/\?$/,"");if(r.length===0)return o?[l,""]:[l];let d=qu(r.join("/")),c=[];return c.push(...d.map(h=>h===""?l:[l,h].join("/"))),o&&c.push(...d),c.map(h=>t.startsWith("/")&&h===""?"/":h)}function x0(t){t.sort((a,n)=>a.score!==n.score?n.score-a.score:A0(a.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}var b0=/^:[\w-]+$/,j0=3,S0=2,w0=1,v0=10,C0=-2,sc=t=>t==="*";function _0(t,a){let n=t.split("/"),r=n.length;return n.some(sc)&&(r+=C0),a&&(r+=S0),n.filter(o=>!sc(o)).reduce((o,l)=>o+(b0.test(l)?j0:l===""?w0:v0),r)}function A0(t,a){return t.length===a.length&&t.slice(0,-1).every((r,o)=>r===a[o])?t[t.length-1]-a[a.length-1]:0}function D0(t,a,n=!1){let{routesMeta:r}=t,o={},l="/",d=[];for(let c=0;c<r.length;++c){let h=r[c],f=c===r.length-1,p=l==="/"?a:a.slice(l.length)||"/",m=jr({path:h.relativePath,caseSensitive:h.caseSensitive,end:f},p),v=h.route;if(!m&&f&&n&&!r[r.length-1].route.index&&(m=jr({path:h.relativePath,caseSensitive:h.caseSensitive,end:!1},p)),!m)return null;Object.assign(o,m.params),d.push({params:o,pathname:Xt([l,m.pathname]),pathnameBase:M0(Xt([l,m.pathnameBase])),route:v}),m.pathnameBase!=="/"&&(l=Xt([l,m.pathnameBase]))}return d}function jr(t,a){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[n,r]=T0(t.path,t.caseSensitive,t.end),o=a.match(n);if(!o)return null;let l=o[0],d=l.replace(/(.)\/+$/,"$1"),c=o.slice(1);return{params:r.reduce((f,{paramName:p,isOptional:m},v)=>{if(p==="*"){let y=c[v]||"";d=l.slice(0,l.length-y.length).replace(/(.)\/+$/,"$1")}const S=c[v];return m&&!S?f[p]=void 0:f[p]=(S||"").replace(/%2F/g,"/"),f},{}),pathname:l,pathnameBase:d,pattern:t}}function T0(t,a=!1,n=!0){ga(t==="*"||!t.endsWith("*")||t.endsWith("/*"),`Route path "${t}" will be treated as if it were "${t.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${t.replace(/\*$/,"/*")}".`);let r=[],o="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(d,c,h,f,p)=>{if(r.push({paramName:c,isOptional:h!=null}),h){let m=p.charAt(f+d.length);return m&&m!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return t.endsWith("*")?(r.push({paramName:"*"}),o+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?o+="\\/*$":t!==""&&t!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,a?void 0:"i"),r]}function k0(t){try{return t.split("/").map(a=>decodeURIComponent(a).replace(/\//g,"%2F")).join("/")}catch(a){return ga(!1,`The URL path "${t}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${a}).`),t}}function Ia(t,a){if(a==="/")return t;if(!t.toLowerCase().startsWith(a.toLowerCase()))return null;let n=a.endsWith("/")?a.length-1:a.length,r=t.charAt(n);return r&&r!=="/"?null:t.slice(n)||"/"}var R0=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function I0(t,a="/"){let{pathname:n,search:r="",hash:o=""}=typeof t=="string"?So(t):t,l;return n?(n=Wu(n),n.startsWith("/")?l=rc(n.substring(1),"/"):l=rc(n,a)):l=a,{pathname:l,search:E0(r),hash:O0(o)}}function rc(t,a){let n=Sr(a).split("/");return t.split("/").forEach(o=>{o===".."?n.length>1&&n.pop():o!=="."&&n.push(o)}),n.length>1?n.join("/"):"/"}function Oi(t,a,n,r){return`Cannot include a '${t}' character in a manually specified \`to.${a}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function P0(t){return t.filter((a,n)=>n===0||a.route.path&&a.route.path.length>0)}function Yu(t){let a=P0(t);return a.map((n,r)=>r===a.length-1?n.pathname:n.pathnameBase)}function wo(t,a,n,r=!1){let o;typeof t=="string"?o=So(t):(o={...t},Ct(!o.pathname||!o.pathname.includes("?"),Oi("?","pathname","search",o)),Ct(!o.pathname||!o.pathname.includes("#"),Oi("#","pathname","hash",o)),Ct(!o.search||!o.search.includes("#"),Oi("#","search","hash",o)));let l=t===""||o.pathname==="",d=l?"/":o.pathname,c;if(d==null)c=n;else{let m=a.length-1;if(!r&&d.startsWith("..")){let v=d.split("/");for(;v[0]==="..";)v.shift(),m-=1;o.pathname=v.join("/")}c=m>=0?a[m]:"/"}let h=I0(o,c),f=d&&d!=="/"&&d.endsWith("/"),p=(l||d===".")&&n.endsWith("/");return!h.pathname.endsWith("/")&&(f||p)&&(h.pathname+="/"),h}var Wu=t=>t.replace(/\/\/+/g,"/"),Xt=t=>Wu(t.join("/")),Sr=t=>t.replace(/\/+$/,""),M0=t=>Sr(t).replace(/^\/*/,"/"),E0=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,O0=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t,$0=class{constructor(t,a,n,r=!1){this.status=t,this.statusText=a||"",this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function F0(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}function B0(t){let a=t.map(n=>n.route.path).filter(Boolean);return Xt(a)||"/"}var Vu=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Hu(t,a){let n=t;if(typeof n!="string"||!R0.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,o=!1;if(Vu)try{let l=new URL(window.location.href),d=n.startsWith("//")?new URL(l.protocol+n):new URL(n),c=Ia(d.pathname,a);d.origin===l.origin&&c!=null?n=c+d.search+d.hash:o=!0}catch{ga(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:o,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Ku=["POST","PUT","PATCH","DELETE"];new Set(Ku);var L0=["GET",...Ku];new Set(L0);var kn=fe.createContext(null);kn.displayName="DataRouter";var Wr=fe.createContext(null);Wr.displayName="DataRouterState";var Gu=fe.createContext(!1);function U0(){return fe.useContext(Gu)}var Ju=fe.createContext({isTransitioning:!1});Ju.displayName="ViewTransition";var N0=fe.createContext(new Map);N0.displayName="Fetchers";var z0=fe.createContext(null);z0.displayName="Await";var aa=fe.createContext(null);aa.displayName="Navigation";var vo=fe.createContext(null);vo.displayName="Location";var xa=fe.createContext({outlet:null,matches:[],isDataRoute:!1});xa.displayName="Route";var Co=fe.createContext(null);Co.displayName="RouteError";var Qu="REACT_ROUTER_ERROR",q0="REDIRECT",Y0="ROUTE_ERROR_RESPONSE";function W0(t){if(t.startsWith(`${Qu}:${q0}:{`))try{let a=JSON.parse(t.slice(28));if(typeof a=="object"&&a&&typeof a.status=="number"&&typeof a.statusText=="string"&&typeof a.location=="string"&&typeof a.reloadDocument=="boolean"&&typeof a.replace=="boolean")return a}catch{}}function V0(t){if(t.startsWith(`${Qu}:${Y0}:{`))try{let a=JSON.parse(t.slice(40));if(typeof a=="object"&&a&&typeof a.status=="number"&&typeof a.statusText=="string")return new $0(a.status,a.statusText,a.data)}catch{}}function H0(t,{relative:a}={}){Ct(Vr(),"useHref() may be used only in the context of a <Router> component.");let{basename:n,navigator:r}=fe.useContext(aa),{hash:o,pathname:l,search:d}=ws(t,{relative:a}),c=l;return n!=="/"&&(c=l==="/"?n:Xt([n,l])),r.createHref({pathname:c,search:d,hash:o})}function Vr(){return fe.useContext(vo)!=null}function ba(){return Ct(Vr(),"useLocation() may be used only in the context of a <Router> component."),fe.useContext(vo).location}var Xu="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Zu(t){fe.useContext(aa).static||fe.useLayoutEffect(t)}function Ss(){let{isDataRoute:t}=fe.useContext(xa);return t?i1():K0()}function K0(){Ct(Vr(),"useNavigate() may be used only in the context of a <Router> component.");let t=fe.useContext(kn),{basename:a,navigator:n}=fe.useContext(aa),{matches:r}=fe.useContext(xa),{pathname:o}=ba(),l=JSON.stringify(Yu(r)),d=fe.useRef(!1);return Zu(()=>{d.current=!0}),fe.useCallback((h,f={})=>{if(ga(d.current,Xu),!d.current)return;if(typeof h=="number"){n.go(h);return}let p=wo(h,JSON.parse(l),o,f.relative==="path");t==null&&a!=="/"&&(p.pathname=p.pathname==="/"?a:Xt([a,p.pathname])),(f.replace?n.replace:n.push)(p,f.state,f)},[a,n,l,o,t])}fe.createContext(null);function ws(t,{relative:a}={}){let{matches:n}=fe.useContext(xa),{pathname:r}=ba(),o=JSON.stringify(Yu(n));return fe.useMemo(()=>wo(t,JSON.parse(o),r,a==="path"),[t,o,r,a])}function G0(t,a,n){Ct(Vr(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:r}=fe.useContext(aa),{matches:o}=fe.useContext(xa),l=o[o.length-1],d=l?l.params:{},c=l?l.pathname:"/",h=l?l.pathnameBase:"/",f=l&&l.route;{let b=f&&f.path||"";tp(c,!f||b.endsWith("*")||b.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${b}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
63
+
64
+ Please change the parent <Route path="${b}"> to <Route path="${b==="/"?"*":`${b}/*`}">.`)}let p=ba(),m;m=p;let v=m.pathname||"/",S=v;if(h!=="/"){let b=h.replace(/^\//,"").split("/");S="/"+v.replace(/^\//,"").split("/").slice(b.length).join("/")}let y=Nu(t,{pathname:S});return ga(f||y!=null,`No routes matched location "${m.pathname}${m.search}${m.hash}" `),ga(y==null||y[y.length-1].route.element!==void 0||y[y.length-1].route.Component!==void 0||y[y.length-1].route.lazy!==void 0,`Matched leaf route at location "${m.pathname}${m.search}${m.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`),e1(y&&y.map(b=>Object.assign({},b,{params:Object.assign({},d,b.params),pathname:Xt([h,r.encodeLocation?r.encodeLocation(b.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?h:Xt([h,r.encodeLocation?r.encodeLocation(b.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:b.pathnameBase])})),o,n)}function J0(){let t=r1(),a=F0(t)?`${t.status} ${t.statusText}`:t instanceof Error?t.message:JSON.stringify(t),n=t instanceof Error?t.stack:null,r="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:r},l={padding:"2px 4px",backgroundColor:r},d=null;return console.error("Error handled by React Router default ErrorBoundary:",t),d=fe.createElement(fe.Fragment,null,fe.createElement("p",null,"💿 Hey developer 👋"),fe.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",fe.createElement("code",{style:l},"ErrorBoundary")," or"," ",fe.createElement("code",{style:l},"errorElement")," prop on your route.")),fe.createElement(fe.Fragment,null,fe.createElement("h2",null,"Unexpected Application Error!"),fe.createElement("h3",{style:{fontStyle:"italic"}},a),n?fe.createElement("pre",{style:o},n):null,d)}var Q0=fe.createElement(J0,null),ep=class extends fe.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,a){return a.location!==t.location||a.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:a.error,location:a.location,revalidation:t.revalidation||a.revalidation}}componentDidCatch(t,a){this.props.onError?this.props.onError(t,a):console.error("React Router caught the following error during render",t)}render(){let t=this.state.error;if(this.context&&typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){const n=V0(t.digest);n&&(t=n)}let a=t!==void 0?fe.createElement(xa.Provider,{value:this.props.routeContext},fe.createElement(Co.Provider,{value:t,children:this.props.component})):this.props.children;return this.context?fe.createElement(X0,{error:t},a):a}};ep.contextType=Gu;var $i=new WeakMap;function X0({children:t,error:a}){let{basename:n}=fe.useContext(aa);if(typeof a=="object"&&a&&"digest"in a&&typeof a.digest=="string"){let r=W0(a.digest);if(r){let o=$i.get(a);if(o)throw o;let l=Hu(r.location,n);if(Vu&&!$i.get(a))if(l.isExternal||r.reloadDocument)window.location.href=l.absoluteURL||l.to;else{const d=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(l.to,{replace:r.replace}));throw $i.set(a,d),d}return fe.createElement("meta",{httpEquiv:"refresh",content:`0;url=${l.absoluteURL||l.to}`})}}return t}function Z0({routeContext:t,match:a,children:n}){let r=fe.useContext(kn);return r&&r.static&&r.staticContext&&(a.route.errorElement||a.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=a.route.id),fe.createElement(xa.Provider,{value:t},n)}function e1(t,a=[],n){let r=n?.state;if(t==null){if(!r)return null;if(r.errors)t=r.matches;else if(a.length===0&&!r.initialized&&r.matches.length>0)t=r.matches;else return null}let o=t,l=r?.errors;if(l!=null){let p=o.findIndex(m=>m.route.id&&l?.[m.route.id]!==void 0);Ct(p>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(l).join(",")}`),o=o.slice(0,Math.min(o.length,p+1))}let d=!1,c=-1;if(n&&r){d=r.renderFallback;for(let p=0;p<o.length;p++){let m=o[p];if((m.route.HydrateFallback||m.route.hydrateFallbackElement)&&(c=p),m.route.id){let{loaderData:v,errors:S}=r,y=m.route.loader&&!v.hasOwnProperty(m.route.id)&&(!S||S[m.route.id]===void 0);if(m.route.lazy||y){n.isStatic&&(d=!0),c>=0?o=o.slice(0,c+1):o=[o[0]];break}}}}let h=n?.onError,f=r&&h?(p,m)=>{h(p,{location:r.location,params:r.matches?.[0]?.params??{},unstable_pattern:B0(r.matches),errorInfo:m})}:void 0;return o.reduceRight((p,m,v)=>{let S,y=!1,g=null,b=null;r&&(S=l&&m.route.id?l[m.route.id]:void 0,g=m.route.errorElement||Q0,d&&(c<0&&v===0?(tp("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),y=!0,b=null):c===v&&(y=!0,b=m.route.hydrateFallbackElement||null)));let T=a.concat(o.slice(0,v+1)),R=()=>{let I;return S?I=g:y?I=b:m.route.Component?I=fe.createElement(m.route.Component,null):m.route.element?I=m.route.element:I=p,fe.createElement(Z0,{match:m,routeContext:{outlet:p,matches:T,isDataRoute:r!=null},children:I})};return r&&(m.route.ErrorBoundary||m.route.errorElement||v===0)?fe.createElement(ep,{location:r.location,revalidation:r.revalidation,component:g,error:S,children:R(),routeContext:{outlet:null,matches:T,isDataRoute:!0},onError:f}):R()},null)}function _o(t){return`${t} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function t1(t){let a=fe.useContext(kn);return Ct(a,_o(t)),a}function a1(t){let a=fe.useContext(Wr);return Ct(a,_o(t)),a}function n1(t){let a=fe.useContext(xa);return Ct(a,_o(t)),a}function Ao(t){let a=n1(t),n=a.matches[a.matches.length-1];return Ct(n.route.id,`${t} can only be used on routes that contain a unique "id"`),n.route.id}function s1(){return Ao("useRouteId")}function r1(){let t=fe.useContext(Co),a=a1("useRouteError"),n=Ao("useRouteError");return t!==void 0?t:a.errors?.[n]}function i1(){let{router:t}=t1("useNavigate"),a=Ao("useNavigate"),n=fe.useRef(!1);return Zu(()=>{n.current=!0}),fe.useCallback(async(o,l={})=>{ga(n.current,Xu),n.current&&(typeof o=="number"?await t.navigate(o):await t.navigate(o,{fromRouteId:a,...l}))},[t,a])}var ic={};function tp(t,a,n){!a&&!ic[t]&&(ic[t]=!0,ga(!1,n))}fe.memo(o1);function o1({routes:t,future:a,state:n,isStatic:r,onError:o}){return G0(t,void 0,{state:n,isStatic:r,onError:o})}var fr="get",gr="application/x-www-form-urlencoded";function Hr(t){return typeof HTMLElement<"u"&&t instanceof HTMLElement}function l1(t){return Hr(t)&&t.tagName.toLowerCase()==="button"}function d1(t){return Hr(t)&&t.tagName.toLowerCase()==="form"}function c1(t){return Hr(t)&&t.tagName.toLowerCase()==="input"}function u1(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function p1(t,a){return t.button===0&&(!a||a==="_self")&&!u1(t)}var Gs=null;function m1(){if(Gs===null)try{new FormData(document.createElement("form"),0),Gs=!1}catch{Gs=!0}return Gs}var h1=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Fi(t){return t!=null&&!h1.has(t)?(ga(!1,`"${t}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${gr}"`),null):t}function f1(t,a){let n,r,o,l,d;if(d1(t)){let c=t.getAttribute("action");r=c?Ia(c,a):null,n=t.getAttribute("method")||fr,o=Fi(t.getAttribute("enctype"))||gr,l=new FormData(t)}else if(l1(t)||c1(t)&&(t.type==="submit"||t.type==="image")){let c=t.form;if(c==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let h=t.getAttribute("formaction")||c.getAttribute("action");if(r=h?Ia(h,a):null,n=t.getAttribute("formmethod")||c.getAttribute("method")||fr,o=Fi(t.getAttribute("formenctype"))||Fi(c.getAttribute("enctype"))||gr,l=new FormData(c,t),!m1()){let{name:f,type:p,value:m}=t;if(p==="image"){let v=f?`${f}.`:"";l.append(`${v}x`,"0"),l.append(`${v}y`,"0")}else f&&l.append(f,m)}}else{if(Hr(t))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=fr,r=null,o=gr,d=t}return l&&o==="text/plain"&&(d=l,l=void 0),{action:r,method:n.toLowerCase(),encType:o,formData:l,body:d}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function Do(t,a){if(t===!1||t===null||typeof t>"u")throw new Error(a)}function ap(t,a,n,r){let o=typeof t=="string"?new URL(t,typeof window>"u"?"server://singlefetch/":window.location.origin):t;return n?o.pathname.endsWith("/")?o.pathname=`${o.pathname}_.${r}`:o.pathname=`${o.pathname}.${r}`:o.pathname==="/"?o.pathname=`_root.${r}`:a&&Ia(o.pathname,a)==="/"?o.pathname=`${Sr(a)}/_root.${r}`:o.pathname=`${Sr(o.pathname)}.${r}`,o}async function g1(t,a){if(t.id in a)return a[t.id];try{let n=await import(t.module);return a[t.id]=n,n}catch(n){return console.error(`Error loading route module \`${t.module}\`, reloading page...`),console.error(n),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function y1(t){return t==null?!1:t.href==null?t.rel==="preload"&&typeof t.imageSrcSet=="string"&&typeof t.imageSizes=="string":typeof t.rel=="string"&&typeof t.href=="string"}async function x1(t,a,n){let r=await Promise.all(t.map(async o=>{let l=a.routes[o.route.id];if(l){let d=await g1(l,n);return d.links?d.links():[]}return[]}));return w1(r.flat(1).filter(y1).filter(o=>o.rel==="stylesheet"||o.rel==="preload").map(o=>o.rel==="stylesheet"?{...o,rel:"prefetch",as:"style"}:{...o,rel:"prefetch"}))}function oc(t,a,n,r,o,l){let d=(h,f)=>n[f]?h.route.id!==n[f].route.id:!0,c=(h,f)=>n[f].pathname!==h.pathname||n[f].route.path?.endsWith("*")&&n[f].params["*"]!==h.params["*"];return l==="assets"?a.filter((h,f)=>d(h,f)||c(h,f)):l==="data"?a.filter((h,f)=>{let p=r.routes[h.route.id];if(!p||!p.hasLoader)return!1;if(d(h,f)||c(h,f))return!0;if(h.route.shouldRevalidate){let m=h.route.shouldRevalidate({currentUrl:new URL(o.pathname+o.search+o.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(t,window.origin),nextParams:h.params,defaultShouldRevalidate:!0});if(typeof m=="boolean")return m}return!0}):[]}function b1(t,a,{includeHydrateFallback:n}={}){return j1(t.map(r=>{let o=a.routes[r.route.id];if(!o)return[];let l=[o.module];return o.clientActionModule&&(l=l.concat(o.clientActionModule)),o.clientLoaderModule&&(l=l.concat(o.clientLoaderModule)),n&&o.hydrateFallbackModule&&(l=l.concat(o.hydrateFallbackModule)),o.imports&&(l=l.concat(o.imports)),l}).flat(1))}function j1(t){return[...new Set(t)]}function S1(t){let a={},n=Object.keys(t).sort();for(let r of n)a[r]=t[r];return a}function w1(t,a){let n=new Set;return new Set(a),t.reduce((r,o)=>{let l=JSON.stringify(S1(o));return n.has(l)||(n.add(l),r.push({key:l,link:o})),r},[])}function To(){let t=fe.useContext(kn);return Do(t,"You must render this element inside a <DataRouterContext.Provider> element"),t}function v1(){let t=fe.useContext(Wr);return Do(t,"You must render this element inside a <DataRouterStateContext.Provider> element"),t}var ko=fe.createContext(void 0);ko.displayName="FrameworkContext";function Ro(){let t=fe.useContext(ko);return Do(t,"You must render this element inside a <HydratedRouter> element"),t}function C1(t,a){let n=fe.useContext(ko),[r,o]=fe.useState(!1),[l,d]=fe.useState(!1),{onFocus:c,onBlur:h,onMouseEnter:f,onMouseLeave:p,onTouchStart:m}=a,v=fe.useRef(null);fe.useEffect(()=>{if(t==="render"&&d(!0),t==="viewport"){let g=T=>{T.forEach(R=>{d(R.isIntersecting)})},b=new IntersectionObserver(g,{threshold:.5});return v.current&&b.observe(v.current),()=>{b.disconnect()}}},[t]),fe.useEffect(()=>{if(r){let g=setTimeout(()=>{d(!0)},100);return()=>{clearTimeout(g)}}},[r]);let S=()=>{o(!0)},y=()=>{o(!1),d(!1)};return n?t!=="intent"?[l,v,{}]:[l,v,{onFocus:Xn(c,S),onBlur:Xn(h,y),onMouseEnter:Xn(f,S),onMouseLeave:Xn(p,y),onTouchStart:Xn(m,S)}]:[!1,v,{}]}function Xn(t,a){return n=>{t&&t(n),n.defaultPrevented||a(n)}}function _1({page:t,...a}){let n=U0(),{router:r}=To(),o=fe.useMemo(()=>Nu(r.routes,t,r.basename),[r.routes,t,r.basename]);return o?n?fe.createElement(D1,{page:t,matches:o,...a}):fe.createElement(T1,{page:t,matches:o,...a}):null}function A1(t){let{manifest:a,routeModules:n}=Ro(),[r,o]=fe.useState([]);return fe.useEffect(()=>{let l=!1;return x1(t,a,n).then(d=>{l||o(d)}),()=>{l=!0}},[t,a,n]),r}function D1({page:t,matches:a,...n}){let r=ba(),{future:o}=Ro(),{basename:l}=To(),d=fe.useMemo(()=>{if(t===r.pathname+r.search+r.hash)return[];let c=ap(t,l,o.unstable_trailingSlashAwareDataRequests,"rsc"),h=!1,f=[];for(let p of a)typeof p.route.shouldRevalidate=="function"?h=!0:f.push(p.route.id);return h&&f.length>0&&c.searchParams.set("_routes",f.join(",")),[c.pathname+c.search]},[l,o.unstable_trailingSlashAwareDataRequests,t,r,a]);return fe.createElement(fe.Fragment,null,d.map(c=>fe.createElement("link",{key:c,rel:"prefetch",as:"fetch",href:c,...n})))}function T1({page:t,matches:a,...n}){let r=ba(),{future:o,manifest:l,routeModules:d}=Ro(),{basename:c}=To(),{loaderData:h,matches:f}=v1(),p=fe.useMemo(()=>oc(t,a,f,l,r,"data"),[t,a,f,l,r]),m=fe.useMemo(()=>oc(t,a,f,l,r,"assets"),[t,a,f,l,r]),v=fe.useMemo(()=>{if(t===r.pathname+r.search+r.hash)return[];let g=new Set,b=!1;if(a.forEach(R=>{let I=l.routes[R.route.id];!I||!I.hasLoader||(!p.some(A=>A.route.id===R.route.id)&&R.route.id in h&&d[R.route.id]?.shouldRevalidate||I.hasClientLoader?b=!0:g.add(R.route.id))}),g.size===0)return[];let T=ap(t,c,o.unstable_trailingSlashAwareDataRequests,"data");return b&&g.size>0&&T.searchParams.set("_routes",a.filter(R=>g.has(R.route.id)).map(R=>R.route.id).join(",")),[T.pathname+T.search]},[c,o.unstable_trailingSlashAwareDataRequests,h,r,l,p,a,t,d]),S=fe.useMemo(()=>b1(m,l),[m,l]),y=A1(m);return fe.createElement(fe.Fragment,null,v.map(g=>fe.createElement("link",{key:g,rel:"prefetch",as:"fetch",href:g,...n})),S.map(g=>fe.createElement("link",{key:g,rel:"modulepreload",href:g,...n})),y.map(({key:g,link:b})=>fe.createElement("link",{key:g,nonce:n.nonce,...b,crossOrigin:b.crossOrigin??n.crossOrigin})))}function k1(...t){return a=>{t.forEach(n=>{typeof n=="function"?n(a):n!=null&&(n.current=a)})}}var R1=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{R1&&(window.__reactRouterVersion="7.14.2")}catch{}var np=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,sp=fe.forwardRef(function({onClick:a,discover:n="render",prefetch:r="none",relative:o,reloadDocument:l,replace:d,unstable_mask:c,state:h,target:f,to:p,preventScrollReset:m,viewTransition:v,unstable_defaultShouldRevalidate:S,...y},g){let{basename:b,navigator:T,unstable_useTransitions:R}=fe.useContext(aa),I=typeof p=="string"&&np.test(p),A=Hu(p,b);p=A.to;let _=H0(p,{relative:o}),u=ba(),x=null;if(c){let E=wo(c,[],u.unstable_mask?u.unstable_mask.pathname:"/",!0);b!=="/"&&(E.pathname=E.pathname==="/"?b:Xt([b,E.pathname])),x=T.createHref(E)}let[j,M,O]=C1(r,y),z=E1(p,{replace:d,unstable_mask:c,state:h,target:f,preventScrollReset:m,relative:o,viewTransition:v,unstable_defaultShouldRevalidate:S,unstable_useTransitions:R});function k(E){a&&a(E),E.defaultPrevented||z(E)}let F=!(A.isExternal||l),C=fe.createElement("a",{...y,...O,href:(F?x:void 0)||A.absoluteURL||_,onClick:F?k:a,ref:k1(g,M),target:f,"data-discover":!I&&n==="render"?"true":void 0});return j&&!I?fe.createElement(fe.Fragment,null,C,fe.createElement(_1,{page:_})):C});sp.displayName="Link";var I1=fe.forwardRef(function({"aria-current":a="page",caseSensitive:n=!1,className:r="",end:o=!1,style:l,to:d,viewTransition:c,children:h,...f},p){let m=ws(d,{relative:f.relative}),v=ba(),S=fe.useContext(Wr),{navigator:y,basename:g}=fe.useContext(aa),b=S!=null&&L1(m)&&c===!0,T=y.encodeLocation?y.encodeLocation(m).pathname:m.pathname,R=v.pathname,I=S&&S.navigation&&S.navigation.location?S.navigation.location.pathname:null;n||(R=R.toLowerCase(),I=I?I.toLowerCase():null,T=T.toLowerCase()),I&&g&&(I=Ia(I,g)||I);const A=T!=="/"&&T.endsWith("/")?T.length-1:T.length;let _=R===T||!o&&R.startsWith(T)&&R.charAt(A)==="/",u=I!=null&&(I===T||!o&&I.startsWith(T)&&I.charAt(T.length)==="/"),x={isActive:_,isPending:u,isTransitioning:b},j=_?a:void 0,M;typeof r=="function"?M=r(x):M=[r,_?"active":null,u?"pending":null,b?"transitioning":null].filter(Boolean).join(" ");let O=typeof l=="function"?l(x):l;return fe.createElement(sp,{...f,"aria-current":j,className:M,ref:p,style:O,to:d,viewTransition:c},typeof h=="function"?h(x):h)});I1.displayName="NavLink";var P1=fe.forwardRef(({discover:t="render",fetcherKey:a,navigate:n,reloadDocument:r,replace:o,state:l,method:d=fr,action:c,onSubmit:h,relative:f,preventScrollReset:p,viewTransition:m,unstable_defaultShouldRevalidate:v,...S},y)=>{let{unstable_useTransitions:g}=fe.useContext(aa),b=F1(),T=B1(c,{relative:f}),R=d.toLowerCase()==="get"?"get":"post",I=typeof c=="string"&&np.test(c),A=_=>{if(h&&h(_),_.defaultPrevented)return;_.preventDefault();let u=_.nativeEvent.submitter,x=u?.getAttribute("formmethod")||d,j=()=>b(u||_.currentTarget,{fetcherKey:a,method:x,navigate:n,replace:o,state:l,relative:f,preventScrollReset:p,viewTransition:m,unstable_defaultShouldRevalidate:v});g&&n!==!1?fe.startTransition(()=>j()):j()};return fe.createElement("form",{ref:y,method:R,action:T,onSubmit:r?h:A,...S,"data-discover":!I&&t==="render"?"true":void 0})});P1.displayName="Form";function M1(t){return`${t} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function rp(t){let a=fe.useContext(kn);return Ct(a,M1(t)),a}function E1(t,{target:a,replace:n,unstable_mask:r,state:o,preventScrollReset:l,relative:d,viewTransition:c,unstable_defaultShouldRevalidate:h,unstable_useTransitions:f}={}){let p=Ss(),m=ba(),v=ws(t,{relative:d});return fe.useCallback(S=>{if(p1(S,a)){S.preventDefault();let y=n!==void 0?n:Zi(m)===Zi(v),g=()=>p(t,{replace:y,unstable_mask:r,state:o,preventScrollReset:l,relative:d,viewTransition:c,unstable_defaultShouldRevalidate:h});f?fe.startTransition(()=>g()):g()}},[m,p,v,n,r,o,a,t,l,d,c,h,f])}var O1=0,$1=()=>`__${String(++O1)}__`;function F1(){let{router:t}=rp("useSubmit"),{basename:a}=fe.useContext(aa),n=s1(),r=t.fetch,o=t.navigate;return fe.useCallback(async(l,d={})=>{let{action:c,method:h,encType:f,formData:p,body:m}=f1(l,a);if(d.navigate===!1){let v=d.fetcherKey||$1();await r(v,n,d.action||c,{unstable_defaultShouldRevalidate:d.unstable_defaultShouldRevalidate,preventScrollReset:d.preventScrollReset,formData:p,body:m,formMethod:d.method||h,formEncType:d.encType||f,flushSync:d.flushSync})}else await o(d.action||c,{unstable_defaultShouldRevalidate:d.unstable_defaultShouldRevalidate,preventScrollReset:d.preventScrollReset,formData:p,body:m,formMethod:d.method||h,formEncType:d.encType||f,replace:d.replace,state:d.state,fromRouteId:n,flushSync:d.flushSync,viewTransition:d.viewTransition})},[r,o,a,n])}function B1(t,{relative:a}={}){let{basename:n}=fe.useContext(aa),r=fe.useContext(xa);Ct(r,"useFormAction must be used inside a RouteContext");let[o]=r.matches.slice(-1),l={...ws(t||".",{relative:a})},d=ba();if(t==null){l.search=d.search;let c=new URLSearchParams(l.search),h=c.getAll("index");if(h.some(p=>p==="")){c.delete("index"),h.filter(m=>m).forEach(m=>c.append("index",m));let p=c.toString();l.search=p?`?${p}`:""}}return(!t||t===".")&&o.route.index&&(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),n!=="/"&&(l.pathname=l.pathname==="/"?n:Xt([n,l.pathname])),Zi(l)}function L1(t,{relative:a}={}){let n=fe.useContext(Ju);Ct(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=rp("useViewTransitionState"),o=ws(t,{relative:a});if(!n.isTransitioning)return!1;let l=Ia(n.currentLocation.pathname,r)||n.currentLocation.pathname,d=Ia(n.nextLocation.pathname,r)||n.nextLocation.pathname;return jr(o.pathname,d)!=null||jr(o.pathname,l)!=null}const Io=t=>t??localStorage.getItem("authToken")??"",We={examType:{dropdown:"/exam/exam/getExamTypeDropdown",table:"/exam/exam/getExamtypeTable",add:"/exam/exam/addExamType",edit:"/exam/exam/editExamtype",remove:"/exam/exam/deleteExamType"},examSchedule:{add:"/exam/exam/addExamSchedule",edit:"/exam/exam/editExamSchedule",getById:"/exam/exam/getExamData",list:"/exam/exam/examlist",dropdown:"/exam/exam/examdropdown",groupDropdown:"/exam/exam/examGroupdropdown",groupList:"/exam/exam/getExamGrouplist",addGroup:"/exam/exam/addExamgroup",slUpdate:"/exam/exam/examSlUpdate",subjectGroup:"/exam/exam/examSubjectGroup",mainAdditional:"/exam/exam/examisMainadditional"},examInstruction:{dropdown:"/exam/exam/examdropdownInstraction",get:"/exam/exam/getExamInstraction",update:"/exam/exam/updateExamInstraction"},examSetting:{table:"/exam/exam/getExamSettingTable",add:"/exam/exam/addExamSetting",uploadSignature:"/exam/exam/upload_signature",typeByExamId:"/exam/exam/getExamTypeBYExamId",assignMarksheetClass:"/exam/exam/assign_marksheetClass"},assessment:{table:"/exam/assesment/getAssesmentTable",dropdown:"/exam/assesment/assesmentDropdown",delete:"/exam/assesment/deleteAssesment",getById:"/exam/assesment/getAssesmentDatabyID",dropdownSelect:"/exam/assesment/getAssesmentDropDown"},studentResult:{marklistUrl:"/exam/mark/getstudentMarklistNew",marklistBulkUrl:"/exam/mark/getstudentMarklistBulk",getSubjectsAccordingToExam:"/exam/mark/getSubjectsaccordingtoExam",getExamSubject:"/exam/mark/getExamSubject",marksheetDetailNew:"/exam/mark/getmarkssheetDetailsNew",templeteDetails:"/exam/Exam/templeteDetails",studentExamRemarks:"/exam/exam/studentExamRemarks",getStudentListForExam:"/exam/exam/getstudentlistforExam",getStudentListForCoscholastic:"/exam/exam/getstudentlistforCoscholastic",addExamMarks:"/exam/exam/addexamMarks",getGradeTable:"/exam/exam/getgradeTable",getGradeTableCoScholastic:"/exam/exam/getgradeTableCoScholastic",getAdmitCard:"/exam/exam/getAdmitCard"},admitCardSetting:{get:"/exam/exam/getAdmitCardSettings",update:"/exam/exam/updateAdmitCardSettings"},roomManagement:{list:"/exam/Exam/removeClassRoom",remove:"/exam/Exam/remove_exam_class_room",assign:"/exam/Exam/assignClassRoom",add:"/exam/Exam/addClassRoom",roomDropdown:"/exam/exam/roomDropdown"},examDropdown:"/exam/exam/examdropdown",examDropdownInstruction:"/exam/exam/examdropdownInstraction",observation:{dropdown:"/exam/Observation/getObservationTypeDropdown",delete:"/exam/Observation/deleteObservation",deleteType:"/exam/Observation/deleteObservationType",editType:"/exam/Observation/editObservationType",addType:"/exam/Observation/addObservationType",add:"/exam/Observation/addObservation"},coscholasticCategoryDropdown:"/branchapi/academy/getscholasticCategoryByClassId",templateType:{get:"/branchapi/GeneralSettings/getmarkssheetTemplate",assignClassDropdown:"/exam/exam/getClassforAssignMarksSheetType",assignTable:"/branchapi/GeneralSettings/getassign_templete",assign:"/branchapi/GeneralSettings/assign_templete",remove:"/branchapi/GeneralSettings/deleteTemplate"},classSubjectDropdown:"/exam/exam/getClassSubjectWithmarksheetTemplete",sectionDropdown:"/exam/exam/getSectionDropdown",getStudentListForExam:"/exam/exam/getstudentlistforExam",getStudentListForCoscholastic:"/exam/exam/getstudentlistforCoscholastic",marksheetTemplate:"/exam/Exam/templeteDetails",assignMarksheetClass:"/branchapi/GeneralSettings/getClassforAssignMarksSheetType",examDropdownUrl:"/exam/exam/examdropdown",classSubjectDropdownUrl:"/exam/exam/getClassSubjectWithmarksheetTemplete",studentMarklist:"/exam/mark/getstudentMarklistNew",studentMarklistBulk:"/exam/mark/getstudentMarklistBulk"},Bi=async(t,a,n)=>Da(t,{arg:a},Io(n)),Kr=async(t,a,n)=>hs(t,{arg:a},Io(n)),ip=async(t,a,n)=>gn(t,{arg:a},Io(n)),U1=t=>{let a=0;return t.forEach(n=>{n.is_theory==="yes"&&n.is_practical==="yes"&&(n.theory_marks&&parseFloat(n.theory_marks)!==0&&(a+=.5),n.practical_marks&&parseFloat(n.practical_marks)!==0&&(a+=.5)),n.is_theory==="yes"&&n.is_practical==="no"&&n.theory_marks&&parseFloat(n.theory_marks)!==0&&(a+=1),n.is_theory==="no"&&n.is_practical==="yes"&&n.practical_marks&&parseFloat(n.practical_marks)!==0&&(a+=1)}),parseFloat(a/t.length*100).toFixed(2)};function N1({token:t}){Ss();const[a,n]=i.useState(!1),[r,o]=i.useState(null),[l,d]=i.useState(1),[c,h]=i.useState(!1),[f,p]=i.useState(!1),[m,v]=i.useState({pagination:{current:1,pageSize:2}}),[S,y]=i.useState(null),[g,b]=i.useState(!1),[T,R]=i.useState(null),[I,A]=i.useState([]),[_,u]=i.useState(!1),[x,j]=i.useState({current:0,total:1}),[M,O]=i.useState(""),[z,k]=i.useState(!1),[F,C]=i.useState(null),[E,P]=i.useState(!1),[U,H]=i.useState(!1),{isLoading:W,data:L}=q(t!=null?[oa,t]:null,([Re,xe])=>Y(Re,xe)),[B,$]=i.useState({exam_id:""}),{isLoading:N,errorExam:V,data:Q}=q(r,Y),{TextArea:Z}=s.Input,{isLoading:J,error:K,data:X,mutate:ee}=q(S!=null?`${S}&page=${m.pagination.current}&per_page=${m.pagination.pageSize}`:null,Y,{onSuccess:Re=>{const xe=Array.isArray(Re?.data)?Re.data:[];A(xe)}}),{data:pe}=q("/branchapi/GeneralSettings/getassign_templete",Y),te=(Re,xe)=>{if(xe==="class_id"){n(`${la}?class_id=${Re.value}`),o(`${We.examSchedule.dropdown}?class_id=${Re.value}`),h(Ue=>!Ue),b(Ue=>!Ue);const Te=pe?.data?.find(Ue=>Ue.class_id===Re.value);d(Te?.ui_id||1)}},{isLoading:se,data:le}=q(a,Y),Ce=async Re=>{Re.preventDefault(),y(`${We.studentResult.marklistUrl}?class_id=${Re.target.class_id.value}&section_id=${Re.target.section_id.value}&exam_id=${Re.target.exam_id.value}`),d(Re.target.template.value),O(Re.target.exam_id.value),$(xe=>({...xe,exam_id:Re.target.exam_id.value})),E||P(!0),Re.target.reset()};i.useRef(null),Math.round(x.current/x.total*100);const Le=Re=>{C(Re),k(!0)};return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Student Result"})}),e.jsx(w,{p:3,children:e.jsxs(s.Grid,{container:!0,spacing:3,children:[e.jsx(s.Grid,{item:!0,xs:12,children:e.jsx("form",{onSubmit:Ce,children:e.jsxs(s.Grid,{container:!0,spacing:3,children:[e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(w,{children:e.jsx(ae,{required:!0,options:Array.isArray(L)?L:[],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Class",name:"class_id",onChange:Re=>{te(Re,"class_id")},allowSelectAll:!1})})}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(ae,{options:Array.isArray(le)?le:[],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Section",name:"section_id",allowSelectAll:!1},`section1${c}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(ae,{options:Array.isArray(Q)?Q:[],closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Exam",name:"exam_id",onChange:Re=>{te(Re,"exam_id"),O(Re.value),H(!1),$(xe=>({...xe,exam_id:Re.value}))},allowSelectAll:!1},`exam1${g}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(s.Grid,{container:!0,justifyContent:"flex-end",children:e.jsx(s.Grid,{item:!0,children:e.jsx(w,{children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})})})})]})})}),E&&e.jsx(s.Grid,{item:!0,xs:12,style:{marginTop:16},children:e.jsx(s.Table,{size:"small",bordered:!0,columns:[{title:"SL",dataIndex:"Sl_no",align:"center"},{title:"Student Name",dataIndex:"firstname",align:"center"},{title:"Roll No",dataIndex:"roll_no",align:"center"},{title:"Full Marks",dataIndex:"full_marks",align:"center"},{title:"Marks Obtained",dataIndex:"marks_obtained",align:"center"},{title:"Percentage",dataIndex:"percentage",align:"center",render:(Re,xe)=>xe?.marks_obtained?`${xe.percentage||U1(xe.marks_obtained)}%`:Re},{title:"Attendance",dataIndex:"attendance",align:"center"},{title:"Action",key:"action",align:"center",render:(Re,xe)=>e.jsx(s.Space,{size:"middle",children:e.jsx(s.Button,{type:"text",icon:e.jsx(re.EyeOutlined,{}),size:"small",onClick:()=>Le(xe)})})}],rowKey:"id",dataSource:I,pagination:{current:m.pagination.current,pageSize:m.pagination.pageSize,total:X?.pagination?.total_rows??I.length,showSizeChanger:!0,onChange:(Re,xe)=>{v(Te=>({...Te,pagination:{current:Re,pageSize:xe}}))},onShowSizeChange:(Re,xe)=>{v(Te=>({...Te,pagination:{current:1,pageSize:xe}}))},showTotal:(Re,xe)=>`${xe[0]}-${xe[1]} of ${Re} items`},loading:J})})]})})]}),e.jsx(s.Modal,{title:"Student Result Detail",open:z,onCancel:()=>k(!1),footer:null,width:800,destroyOnClose:!0,children:F&&e.jsxs("div",{children:[e.jsxs("p",{children:[e.jsx("strong",{children:"Name:"})," ",F.firstname]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Roll No:"})," ",F.roll_no]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Class:"})," ",F.class]}),e.jsxs("p",{children:[e.jsx("strong",{children:"Section:"})," ",F.section]})]})})]})}function z1({token:t}){return e.jsx(N1,{token:t})}const q1=t=>t?.is_theory==="yes"&&t?.is_practical==="yes",Y1=t=>t?.is_theory==="yes"?"Theory":t?.is_practical==="yes"?"Practical":"",W1=t=>(Array.isArray(t)?t:[]).map(a=>({subject_id:a.subject_id,subject_name:a.subject_name,is_theory:a.is_theory,is_practical:a.is_practical,isBoth:q1(a),start_time:ne().format("HH:mm"),end_time:ne().format("HH:mm"),date:ne().format("YYYY-MM-DD"),full_marks:"",weightage:""})),V1=["h:mm a","h:mm A","HH:mm","HH:mm:ss"],lc=t=>{if(!t)return null;const a=ne(t,V1,!0);return a.isValid()?a:null},H1=t=>{const a=new Map,n=/^schedule\[(\d+)\]\[(theory|practical)\]\[(\w+)\]$/;for(const[r,o]of t.entries()){const l=r.match(n);if(!l)continue;const[,d,c,h]=l,f=`${d}-${c}`;a.has(f)||a.set(f,{index:d,type:c}),a.get(f)[h]=o}return Array.from(a.values())};function K1({token:t}){const a=i.useRef(),n=i.useMemo(()=>{try{return JSON.parse(localStorage.getItem("genrall_settings"))||{}}catch{return{}}},[]),[r,o]=i.useState(ne().format("YYYY-MM-DD")),[l,d]=i.useState(ne().format("YYYY-MM-DD")),[c,h]=i.useState(""),[f,p]=i.useState(!0),[m,v]=i.useState(!1),[S,y]=i.useState(""),[g,b]=i.useState([]),[T,R]=i.useState([]),[I,A]=i.useState(!1),[_,u]=i.useState([]),[x,j]=i.useState([]),[M,O]=i.useState(""),[z,k]=i.useState(!1),{data:F}=q(t!=null?[We.examType.dropdown,t]:null,([ee,pe])=>Y(ee,pe)),{isLoading:C,error:E,data:P}=q(t!=null&&n?[`${We.examSetting.assignMarksheetClass}?branch_id=${n?.fk_branchID}`,t]:null,([ee,pe])=>Y(ee,pe),{onSuccess:ee=>{const pe=Array.isArray(ee?.data)?ee.data:[];b(pe);const te=pe.map(se=>({value:se.id,label:se.class}));R(te)},onError:()=>{b([]),R([])}}),{isLoading:U,data:H}=q(m,Y),{trigger:W}=it(We.examSchedule.add,(ee,{arg:pe})=>ip(ee,pe,t)),[L,B]=i.useState({class_id:"",exam_name:"",session_id:"",start_date:ne().format("YYYY-MM-DD"),end_date:ne().format("YYYY-MM-DD"),schedule:[]}),$=()=>!(a?.current?.exam_name?.value&&a?.current?.start_date?.value&&a?.current?.end_date?.value&&a?.current?.class_id?.value),N=ee=>{const pe=H1(ee);if(pe.length===0)return"No subjects configured for this class. Select a class with subjects before saving.";for(const te of pe){const se=x.find(Re=>String(Re.subject_id)===String(te.subject_id))?.subject_name||`Row ${Number(te.index)+1}`;if(!te.date)return`Please select an exam date for ${se}.`;if(te.date<r||te.date>l)return`Exam date for ${se} must be between the exam start and end dates.`;if(!te.start_time||!te.end_time)return`Please enter start and end time for ${se}.`;const le=lc(te.start_time),Ce=lc(te.end_time);if(le&&Ce&&!le.isBefore(Ce))return`End time must be after start time for ${se}.`;const Le=Number(te.full_marks);if(te.full_marks===void 0||te.full_marks===""||Number.isNaN(Le)||Le<=0)return`Full marks must be greater than 0 for ${se}.`;if(te.weightage!==void 0&&te.weightage!==""){const Re=Number(te.weightage);if(Number.isNaN(Re)||Re<0)return`Weightage cannot be negative for ${se}.`}}return null},V=()=>{u([]),j([])},Q=async ee=>{if(ee.preventDefault(),!ee.target.start_date.value){alert("Select required dates");return}if(!ee.target.end_date.value){alert("Select required dates");return}if(ee.target.end_date.value<ee.target.start_date.value){alert("End date cannot be earlier than start date.");return}const pe=new FormData(ee.target);pe.append("session_id",n.session_id),pe.append("exam_type_id",ee.target.exam_type.value);const te=N(pe);if(te){alert(te);return}try{const se=await W(pe);se?.Status==="Success"?(B({class_id:"",exam_name:"",session_id:"",start_date:ne().format("YYYY-MM-DD"),end_date:ne().format("YYYY-MM-DD"),schedule:[]}),O(""),V(),alert("Exam Successfully Created!")):alert(se?.message||"Failed to create exam")}catch(se){alert(se?.message||"Failed to create exam")}ee.target.reset()},Z=(ee,pe)=>{k(ee?.value!=="Annual")},J=()=>{M&&u(W1(x))};function K(ee){if(_.length===1)return;const pe=[..._];pe.splice(ee,1),u(pe)}const X=()=>{p($())};return e.jsx(w,{pt:5,pb:1,children:e.jsx(s.Grid,{container:!0,spacing:4,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Add Exam"})}),e.jsx(w,{p:3,children:e.jsxs("form",{onChange:X,ref:a,onSubmit:Q,children:[e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,xs:12,md:2.5,children:e.jsx(w,{children:e.jsx(G,{type:"text",label:"Exam Name *",name:"exam_name",required:"required"})})}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(ae,{options:F,closeMenuOnSelect:!0,hideSelectedOptions:!1,label:"Exam Type *",name:"exam_type",required:!0,onChange:ee=>Z(ee),allowSelectAll:!1})}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(Ge,{defaultValue:ne(),label:"Start Date *",name:"start_date",format:"YYYY-MM-DD",style:{display:"block"},status:c===""?"":"error",setDate:o,onChange:ee=>{h(""),o(ne(ee).format("YYYY-MM-DD"))}})}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(Ge,{defaultValue:ne(),label:"End Date *",name:"end_date",format:"YYYY-MM-DD",style:{display:"block"},status:S===""?"":"error",setDate:d,onChange:ee=>{y(""),d(ne(ee).format("YYYY-MM-DD"))}})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,style:{display:"none"},children:e.jsx(ae,{mode:"multiple",isMulti:!0,options:Array.isArray(H)?H:[],value:H||[],closeMenuOnSelect:!0,label:"Section",name:"section_id[]",allowSelectAll:!1},`section1${I}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:2.5,children:e.jsx(w,{children:e.jsx(G,{type:"text",label:"Promoted To",name:"promoted_to"})})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(s.Grid,{container:!0,justifyContent:"flex-end",children:e.jsx(s.Grid,{item:!0,children:e.jsx(w,{children:e.jsx(s.Button,{size:"small",onClick:J,type:"primary",disabled:f||C||x.length===0,children:"Add Subjects"})})})})})]}),e.jsx(s.Grid,{container:!0,spacing:3,style:{marginTop:8},children:e.jsx(s.Grid,{item:!0,xs:12,style:{overflowX:"auto"},children:M&&x.length===0?e.jsx(s.Typography.Text,{children:"No subjects configured for this class."}):_.length>0?e.jsxs("table",{className:"table borderless",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Subject"}),e.jsx("th",{style:{width:"80px",textAlign:"center"},children:"Type"}),e.jsx("th",{children:"Date *"}),e.jsx("th",{children:"Start Time *"}),e.jsx("th",{children:"End Time *"}),e.jsx("th",{children:"Full Marks *"}),e.jsx("th",{children:"Weightage"}),e.jsx("th",{})]})}),e.jsx("tbody",{children:_.map((ee,pe)=>e.jsxs(i.Fragment,{children:[e.jsxs("tr",{children:[e.jsx("td",{style:{minWidth:"150px"},rowSpan:ee.isBoth?2:1,children:ee.subject_name}),e.jsx("td",{style:{textAlign:"center"},children:ee.isBoth?"Theory":Y1(ee)}),e.jsx("td",{children:e.jsx(Ge,{format:"YYYY-MM-DD",label:"",defaultValue:ne(r),minDate:ne(r),maxDate:ne(l),name:`schedule[${pe}][theory][date]`})}),e.jsx("td",{children:e.jsx(s.TimePicker,{format:"h:mm a",defaultValue:ne(),name:`schedule[${pe}][theory][start_time]`})}),e.jsx("td",{children:e.jsx(s.TimePicker,{format:"h:mm a",defaultValue:ne(),name:`schedule[${pe}][theory][end_time]`})}),e.jsx("td",{children:e.jsx(G,{type:"number",min:"1",label:"",name:`schedule[${pe}][theory][full_marks]`,required:"required"})}),e.jsx("td",{children:e.jsx(G,{type:"number",min:"0",label:"",name:`schedule[${pe}][theory][weightage]`})}),e.jsxs("td",{children:[e.jsx("input",{type:"hidden",name:`schedule[${pe}][theory][subject_id]`,value:ee.subject_id||""}),_.length>1&&e.jsx(s.Button,{type:"text",icon:e.jsx(re.CloseCircleOutlined,{style:{color:"red"}}),size:"small",onClick:()=>K(pe)})]})]}),ee.isBoth&&e.jsxs("tr",{children:[e.jsx("td",{style:{textAlign:"center"},children:"Practical"}),e.jsx("td",{children:e.jsx(Ge,{format:"YYYY-MM-DD",label:"",defaultValue:ne(r),minDate:ne(r),maxDate:ne(l),name:`schedule[${pe}][practical][date]`})}),e.jsx("td",{children:e.jsx(s.TimePicker,{format:"h:mm a",defaultValue:ne(),name:`schedule[${pe}][practical][start_time]`})}),e.jsx("td",{children:e.jsx(s.TimePicker,{format:"h:mm a",defaultValue:ne(),name:`schedule[${pe}][practical][end_time]`})}),e.jsx("td",{children:e.jsx(G,{type:"number",min:"1",label:"",name:`schedule[${pe}][practical][full_marks]`,required:"required"})}),e.jsx("td",{children:e.jsx(G,{type:"number",min:"0",label:"",name:`schedule[${pe}][practical][weightage]`})}),e.jsxs("td",{children:[e.jsx("input",{type:"hidden",name:`schedule[${pe}][practical][subject_id]`,value:ee.subject_id||""}),_.length>1&&e.jsx("span",{style:{opacity:0},children:"-"})]})]})]},ee.subject_id+"-"+pe+"frg"))})]}):e.jsx(s.Typography.Text,{children:"Select a class to load its subjects."})})}),e.jsx(s.Grid,{container:!0,justifyContent:"flex-end",style:{marginTop:16},children:e.jsx(s.Grid,{item:!0,children:e.jsx(de,{disabled:_.length===0,type:"submit",value:"Save",color:"primary"})})})]})})]})})})})}function G1({token:t}){return e.jsx(K1,{token:t})}function J1({token:t}){const a=Ss(),[n,r]=i.useState({page:0,rowsPerPage:1e3}),[o,l]=i.useState(""),[d,c]=i.useState(""),[h,f]=i.useState({}),[p,m]=i.useState({}),[v,S]=i.useState({}),[y,g]=i.useState({}),b=Q=>{if(typeof Q=="boolean")return Q;if(Q===1||Q==="1")return!0;if(Q===0||Q==="0"||Q==null)return!1;const Z=String(Q).trim().toLowerCase();return Z==="true"||Z==="yes"},{isLoading:T,data:R,mutate:I}=q(t?[`${We.examSchedule.list}?page=${n.page+1}&per_page=${n.rowsPerPage}`,t]:null,([Q,Z])=>Y(Q,Z)),{trigger:A,isMutating:_}=it(We.examSchedule.slUpdate,(Q,{arg:Z})=>Bi(Q,Z,t)),{trigger:u,isMutating:x}=it(We.examSchedule.subjectGroup,(Q,{arg:Z})=>Bi(Q,Z,t)),{trigger:j,isMutating:M}=it(We.examSchedule.mainAdditional,(Q,{arg:Z})=>Bi(Q,Z,t)),O=async(Q,Z,J)=>{const K=J?"True":"False";S(X=>({...X,[Q]:J})),g(X=>({...X,[Q]:!0}));try{await j({id:Q,main_additional:K}),await I(),S(X=>{const ee={...X};return delete ee[Q],ee})}catch{S(ee=>({...ee,[Q]:Z}))}finally{g(X=>({...X,[Q]:!1}))}},z=async Q=>{try{await A({slno:h.sl_no,id:Q}),l(""),f({}),await I()}catch{}},k=async Q=>{try{await u({group_id:p.group_id,id:Q}),c(""),m({}),await I()}catch{}},F=(Q,Z)=>{f(J=>({...J,[Z]:Q}))},C=(Q,Z)=>{m(J=>({...J,[Z]:Q}))},E=Q=>Q.id===o,P=Q=>Q.id===d,U=Q=>{l(Q.id),f({...Q})},H=Q=>{c(Q.id),m({...Q})},W=()=>{l(""),f({})},L=()=>{c(""),m({})},B=Q=>{a(`/Exam/ExamEdit?id=${Q}`)},$=async Q=>{try{await I(st(We.examSchedule.list,Q),ot(Q))}catch{}},N=i.useMemo(()=>[{title:"Exam Name",dataIndex:"name",align:"center"},{title:"Exam Type",dataIndex:"exam_type",align:"center"},{title:"Start Date",dataIndex:"start_date",align:"center",render:(Q,Z)=>e.jsx(e.Fragment,{children:Z.start_date})},{title:"End Date",dataIndex:"end_date",align:"center",render:(Q,Z)=>e.jsx(e.Fragment,{children:Z.end_date})},{title:"Class",dataIndex:"class",align:"center"},{title:"Section",key:"Section",align:"center",render:Q=>e.jsx(e.Fragment,{children:Q.section?.toString()})},{title:"Action",key:"action",align:"center",render:(Q,Z)=>e.jsxs(s.Space,{size:"middle",children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),size:"small",onClick:()=>B(Z?.id)}),e.jsx(At,{id:Z?.id,funcName:$})]})}],[]),V=Q=>{const{children:Z=[]}=Q||{},J=[{title:"Serial No",dataIndex:"sl_no",align:"center",render:(K,X)=>E(X)?e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx(s.Input,{defaultValue:X.sl_no||K,onChange:pe=>F(pe.target.value,"sl_no"),onPressEnter:()=>z(X.id),style:{width:"80px"}}),e.jsx("a",{onClick:()=>z(X.id),style:{marginRight:8},children:"Save"}),e.jsx("a",{onClick:W,children:"Cancel"})]}):e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{children:K}),e.jsx("a",{onClick:()=>U(X),children:"Edit"})]})},{title:"Subject",dataIndex:"Subject",align:"center",render:(K,X)=>e.jsx(e.Fragment,{children:X.subject})},{title:"Date",dataIndex:"date_of_exam",align:"center",render:(K,X)=>e.jsx(e.Fragment,{children:X.date_of_exam})},{title:"Start Time",dataIndex:"start_to",align:"center"},{title:"End Time",dataIndex:"end_from",align:"center"},{title:"Marks",dataIndex:"full_marks",align:"center"},{title:"Is Main Additional",dataIndex:"is_main_additional",align:"center",render:(K,X)=>{const ee=Object.prototype.hasOwnProperty.call(v,X.id)?v[X.id]:X.is_main_additional??K,pe=b(ee),te=!!y[X.id];return e.jsx(s.Switch,{checked:pe,loading:te,onChange:se=>O(X.id,pe,se)})}},{title:"Group",dataIndex:"group_id",align:"center",render:(K,X)=>P(X)?e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx(s.Input,{defaultValue:X.group_id||K,onChange:pe=>C(pe.target.value,"group_id"),onPressEnter:()=>k(X.id),style:{width:"80px"}}),e.jsx("a",{onClick:()=>k(X.id),style:{marginRight:8},children:"Save"}),e.jsx("a",{onClick:L,children:"Cancel"})]}):e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{children:K}),e.jsx("a",{onClick:()=>H(X),children:"Edit"})]})}];return e.jsxs(e.Fragment,{children:[e.jsx(s.Typography.Text,{style:{marginLeft:20},children:"Subject"}),e.jsx(w,{style:{width:"95%"},m:1,children:e.jsx(s.Table,{size:"small",bordered:!0,columns:J,rowKey:"id",dataSource:Z,pagination:!1})})]})};return e.jsxs(w,{pt:5,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx("div",{style:{display:"grid",gap:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Exam List"})}),e.jsx(w,{pt:3,pb:5,children:T?e.jsx(s.Typography.Text,{children:"Loading..."}):e.jsx(s.Table,{size:"small",expandable:{expandedRowRender:V,childrenColumnName:"changed"},bordered:!0,columns:N,rowKey:"id",dataSource:R?.data??[],pagination:!1})})]})})]})}function Q1({token:t}){return e.jsx(J1,{token:t})}function X1({token:t}){Ss();const[a,n]=i.useState({page:0,rowsPerPage:10}),r=i.useMemo(()=>[{title:"Exam Name",dataIndex:"type_name",align:"center"},{title:"Remark",dataIndex:"remark",align:"center"},{title:"Action",key:"action",align:"center",render:(f,p)=>e.jsxs(s.Space,{size:"middle",children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),size:"small"}),e.jsx(At,{id:p?.id,funcName:h})]})}],[]),{isLoading:o,error:l,data:d,mutate:c}=q(t!=null?[`${We.examType.table}?page=${a.page+1}&per_page=10`,t]:null,([f,p])=>Y(f,p)),h=async f=>{try{await c(st(We.examType.remove,f),ot(f))}catch{}};return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx("div",{style:{display:"grid",gap:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Exam Type List"})}),e.jsx(w,{pt:3,pb:5,children:e.jsx(s.Table,{size:"small",bordered:!0,columns:r,rowKey:"id",dataSource:d?.data??[],pagination:!1,loading:o})})]})})]})}function Z1({token:t}){return e.jsx(X1,{token:t})}function eC({token:t}){const[a,n]=i.useState({pagination:{current:1,pageSize:50}}),{data:r}=q(t!=null?[We.examType.dropdown,t]:null,([y,g])=>Y(y,g)),{trigger:o}=it(We.examSetting.add,(y,{arg:g})=>Kr(y,g,t)),{data:l}=q(t!=null&&We.examSetting.assignMarksheetClass?[We.examSetting.assignMarksheetClass,t]:null,([y,g])=>Y(y,g)),{isLoading:d,data:c,mutate:h}=q(t!=null?[`${We.examSetting.table}?page=${a.pagination.current}&per_page=${a.pagination.pageSize}`,t]:null,([y,g])=>Y(y,g)),f=i.useMemo(()=>{const y=c?.data;return Array.isArray(y)?y:y&&Array.isArray(y?.data)?y.data:[]},[c]),p=async y=>{try{(await o(y))?.Status==="Success"&&h()}catch{}},m=y=>{n(g=>({...g,pagination:{current:y,pageSize:g.pagination.pageSize}}))},v=i.useMemo(()=>[{title:"Exam Name",dataIndex:"name",align:"center"},{title:"Exam Type",dataIndex:"exam_type",align:"center"},{title:"Start Date",dataIndex:"start_date",align:"center",render:(y,g)=>e.jsx(e.Fragment,{children:g.start_date})},{title:"End Date",dataIndex:"end_date",align:"center",render:(y,g)=>e.jsx(e.Fragment,{children:g.end_date})},{title:"Class",dataIndex:"class",align:"center"}],[]),S=y=>{const g=y.children?.[0]||{},b=y.sections||[];return e.jsx(s.Form,{layout:"inline",onFinish:p,children:e.jsx(s.Grid,{container:!0,style:{padding:"10px"},children:e.jsx(s.Grid,{item:!0,xs:12,style:{display:"flex",justifyContent:"center"},children:e.jsxs(s.Grid,{container:!0,spacing:3,alignItems:"center",children:[e.jsxs(s.Grid,{item:!0,children:[e.jsx("input",{type:"hidden",name:"class_id",value:y.class_id}),e.jsx("input",{type:"hidden",name:"exam_name_id",value:y.id})]}),b.map((T,R)=>e.jsx(s.Grid,{item:!0,children:e.jsxs(s.Grid,{container:!0,alignItems:"center",children:[e.jsx(s.Grid,{item:!0,children:e.jsx("input",{type:"file",name:`classteachersign_${T.value}`,accept:"image/*"})}),e.jsx(s.Grid,{item:!0,style:{marginLeft:10},children:g?.[`classteachersign_${T.value}`]&&e.jsx("img",{src:`${g?.[`classteachersign_${T.value}`]}`,alt:"sign",style:{width:50,height:50,objectFit:"cover"}})})]})},R)),e.jsxs(s.Grid,{item:!0,style:{marginLeft:"10px"},children:[e.jsx("input",{type:"file",name:"exam_ic_sign",accept:"image/*"}),g?.exam_ic_sign&&e.jsx("img",{src:g?.exam_ic_sign,alt:"ic sign",style:{width:50,height:50,objectFit:"cover"}})]}),e.jsx(s.Grid,{item:!0,style:{marginLeft:"10px"},children:e.jsx(s.Input,{defaultValue:g?.reportCardTitle,placeholder:"Report Card Title",name:"reportCardTitle",style:{width:200}})}),e.jsx(s.Grid,{item:!0,style:{marginLeft:"10px"},children:e.jsx("input",{type:"date",name:"marksheet_issue"})}),e.jsx(s.Grid,{item:!0,style:{marginLeft:"10px"},children:e.jsx(s.Input,{defaultValue:g?.promoted_to,placeholder:"Promoted To",name:"promoted_to",style:{width:200}})}),e.jsx(s.Grid,{item:!0,style:{marginLeft:"10px"},children:e.jsx(s.Input.TextArea,{defaultValue:g?.codes,placeholder:"Abbreviations",name:"codes",style:{minWidth:250}})}),e.jsx(s.Grid,{item:!0,style:{marginLeft:"10px",display:"flex",alignItems:"center"},children:e.jsx(de,{type:"submit",value:"Submit",color:"primary"})})]})})})})};return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx("div",{style:{display:"grid",gap:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Exam Setting"})}),e.jsx(w,{pt:3,pb:5,children:e.jsx(s.Table,{size:"small",expandable:{expandedRowRender:S,childrenColumnName:"changed"},bordered:!0,columns:v,rowKey:y=>y.id,dataSource:f,loading:d,pagination:{current:a.pagination.current,pageSize:a.pagination.pageSize,total:c?.pagination?.total_rows??f.length,showSizeChanger:!0,onChange:m,onShowSizeChange:(y,g)=>{n(b=>({...b,pagination:{current:1,pageSize:g}}))},showTotal:(y,g)=>`${g[0]}-${g[1]} of ${y} items`}})})]})})]})}function tC({token:t}){return e.jsx(eC,{token:t})}function aC({token:t}){const a=Ss(),{isLoading:n,error:r,data:o,mutate:l}=q(t!=null?[We.assessment.table,t]:null,([p,m])=>Y(p,m)),d=p=>{a(`/ExamDashboard/EditAssessment?id=${p}`)},c=async p=>{try{await l(st(We.assessment.delete,p),ot(p))}catch{}},h=i.useMemo(()=>[{title:"Assessment Name",dataIndex:"name",align:"center"},{title:"Class",dataIndex:"class",align:"center"},{title:"Exam Type",dataIndex:"type_name",align:"center"},{title:"Action",key:"action",align:"center",render:(p,m)=>e.jsxs(s.Space,{size:"middle",children:[e.jsx(s.Button,{type:"text",icon:e.jsx(re.EditOutlined,{}),size:"small",onClick:()=>d(m?.id)}),e.jsx(At,{id:m?.id,funcName:c})]})}],[]),f=p=>{const{children:m=[]}=p||{},v=[{title:"Skill",dataIndex:"title",align:"center"},{title:"Marks",dataIndex:"max_marks",align:"center"}],S=[{title:"Subject",dataIndex:"subject_name",align:"center"},{title:"Skill",dataIndex:"subject_assessment_skill",align:"center",render:(y,g)=>e.jsx("div",{style:{fontSize:"11px"},children:g?.subject_assessment_skill?.map((b,T)=>e.jsx("div",{children:b?.skill},T))})},{title:"Number",dataIndex:"subject_assessment_skill",align:"center",render:(y,g)=>e.jsx("div",{style:{fontSize:"11px"},children:g?.subject_assessment_skill?.map((b,T)=>e.jsx("div",{children:b?.full_marks},T))})},{title:"Type",dataIndex:"subject_assessment_skill",align:"center",render:(y,g)=>e.jsx("div",{style:{fontSize:"11px"},children:g?.subject_assessment_skill?.map((b,T)=>e.jsx("div",{children:b?.type},T))})}];return e.jsxs(e.Fragment,{children:[e.jsx(s.Typography.Text,{style:{marginLeft:20},children:"Subject"}),e.jsx(w,{style:{width:"95%"},m:1,children:e.jsx(s.Table,{size:"small",expandable:{childrenColumnName:"changed"},bordered:!0,columns:m[0]?.type!=="subject_wise"?v:S,rowKey:m[0]?.type!=="subject_wise"?"id":"fk_subject_assessment_id",dataSource:m,pagination:!1})})]})};return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx("div",{style:{display:"grid",gap:24},children:e.jsxs("div",{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Assessment List"})}),e.jsx(w,{pt:3,pb:5,children:e.jsx(s.Table,{size:"small",expandable:{expandedRowRender:f,childrenColumnName:"changed"},bordered:!0,columns:h,rowKey:"id",dataSource:o?.data??[],pagination:!1,loading:n})})]})})]})}function nC({token:t}){return e.jsx(aC,{token:t})}function sC({token:t}){const[a,n]=i.useState(null),[r,o]=i.useState(null),{isLoading:l,data:d}=q(r!=null&&t!=null?[r,t]:null,([S,y])=>Y(S,y),{onSuccess:S=>{}}),{isLoading:c,data:h}=q(t!=null?[We.examInstruction.dropdown,t]:null,([S,y])=>Y(S,y)),{trigger:f}=it(We.examInstruction.update,(S,{arg:y})=>ip(S,y,t)),p=async S=>{try{(await f({exam_id:a,instruction:S.instruction}))?.Status==="Success"&&toast.success("Success! Added new item.",{duration:1e3,icon:"🎉"})}catch{}},m=S=>{n(S),o(`${We.examInstruction.get}?exam_id=${S}`)},v=i.useMemo(()=>{const S=h?.data;return Array.isArray(S)?S.map(y=>({value:y.value??y.id,label:y.label??y.name})):[]},[h]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Grid,{container:!0,spacing:3,children:e.jsxs(s.Grid,{item:!0,xs:12,children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Instruction"})}),e.jsx(w,{pl:2,pr:2,pb:2,children:e.jsxs(s.Form,{layout:"vertical",onFinish:p,children:[e.jsx(s.Form.Item,{name:"exam_name",label:"Exam Name",rules:[{required:!0,message:"Please select exam name"}],children:e.jsx(s.Select,{style:{width:"100%"},options:v,onChange:S=>m(S),placeholder:"Select exam name"})}),e.jsx(s.Form.Item,{name:"instruction",children:e.jsx(s.Input.TextArea,{rows:10,defaultValue:d?.data?.[0]?.instruction??""})}),e.jsx("div",{style:{marginTop:10},children:e.jsx(de,{type:"submit",value:"Update",color:"primary"})})]})})]})})]})}function rC({token:t}){return e.jsx(sC,{token:t})}function iC({token:t}){const[a,n]=i.useState({page:1,rowsPerPage:25}),r=j=>{n(M=>({...M,page:j}))},[o,l]=i.useState(!1),[d,c]=i.useState(!1),{isLoading:h,error:f,data:p,mutate:m}=q(t!=null?[`${We.roomManagement.list}?page=${a.page}&per_page=${a.rowsPerPage}`,t]:null,([j,M])=>Y(j,M)),{isLoading:v,error:S,data:y,mutate:g}=q(t!=null?[`${We.roomManagement.list}?page=${a.page}&per_page=${a.rowsPerPage}`,t]:null,([j,M])=>Y(j,M)),b=async j=>{j.preventDefault();const M=new FormData(j.target);try{await g(Wc(We.roomManagement.add,M)),j.target.reset(),R(O=>!O)}catch{}},[T,R]=i.useState(!1),I=(j,M)=>{l(!0),c(M)},A=async(j,M)=>{j.preventDefault();const O=new FormData(j.target);O.append("data",JSON.stringify(M));try{await m(addData(We.roomManagement.assign,O)),l(!1)}catch{}},_=j=>{l(j)},u=[{title:"Room",dataIndex:"class_room",key:"class_room"}],x=i.useMemo(()=>[{title:"Class",dataIndex:"class",key:"class",align:"center"},{title:"Section",dataIndex:"section",key:"section",align:"center"},{title:"Assigned Room",dataIndex:"class_room",key:"class_room",align:"center",render:j=>e.jsx("span",{style:{color:"blue",fontWeight:"bold"},children:j?.map((M,O)=>e.jsxs(i.Fragment,{children:[M.class_room,O<j.length-1&&e.jsx("br",{})]},O))})},{title:"Roll No",dataIndex:"class_room",key:"class_room",align:"center",render:j=>e.jsx("span",{style:{color:"blue",fontWeight:"bold"},children:j?.map((M,O)=>e.jsxs(i.Fragment,{children:[M.rollno_from," - ",M.rollno_to,O<j.length-1&&e.jsx("br",{})]},O))})},{title:"Action",align:"center",render:(j,M)=>e.jsx(s.Space,{children:e.jsx(s.Button,{icon:e.jsx(re.EditOutlined,{}),size:"small",onClick:()=>I(M,j)})}),width:"5%"}],[]);return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsxs(s.Grid,{container:!0,spacing:3,children:[e.jsxs(s.Grid,{item:!0,xs:12,md:6,children:[e.jsxs(w,{children:[e.jsx(he,{variant:"h6",color:"white",bgColor:"info",p:2,borderRadius:"lg",children:"Add Room"}),e.jsx(w,{p:2,children:e.jsxs(s.Form,{layout:"vertical",onFinish:b,children:[e.jsx(s.Form.Item,{name:"class_room",label:"Room Name",rules:[{required:!0,message:"Please enter room name"}],children:e.jsx(s.Input,{type:"text",required:!0})}),e.jsx(de,{type:"submit",value:"Save",color:"primary"})]})})]}),e.jsx(w,{pt:3,children:e.jsx(s.Table,{size:"small",bordered:!0,columns:u,rowKey:"id",dataSource:y?.data??[],pagination:!1,loading:v})})]}),e.jsx(s.Grid,{item:!0,xs:12,md:6,children:e.jsxs(w,{children:[e.jsx(he,{variant:"h6",color:"white",bgColor:"info",p:2,borderRadius:"lg",children:"Assigned Room"}),e.jsx(w,{pt:2,style:{display:"flex",justifyContent:"flex-end"},children:e.jsx(s.Button,{type:"primary",onClick:()=>oC(),children:"+Add"})}),e.jsxs(w,{pt:3,children:[o&&e.jsx(s.Modal,{title:"Assign Room",open:o,onCancel:()=>_(!1),footer:null,destroyOnClose:!0,children:o&&e.jsx(AssignClassRoomEdit,{data:{handleUpdate:A,rowData:d}})}),e.jsx(s.Table,{size:"small",bordered:!0,columns:x,rowKey:"id",dataSource:p?.data??[],pagination:{current:a.page,pageSize:a.rowsPerPage,showSizeChanger:!0,onChange:r},loading:h})]})]})})]})]})}const oC=t=>{};function lC({token:t}){return e.jsx(iC,{token:t})}function dC({token:t}){const[a,n]=i.useState(!1),r=i.useRef(null),[o,l]=i.useState([]),[d,c]=i.useState(!1),[h,f]=i.useState(null),[p,m]=i.useState(!1),[v,S]=i.useState(null),[y,g]=i.useState(!1),[b,T]=i.useState(!1),[R,I]=i.useState(null),[A,_]=i.useState(!1),[u,x]=i.useState(null),[j,M]=i.useState(!1),O=i.useRef(null),[z,k]=i.useState([]),F=async(ee,pe)=>{pe==="class_id"?(_(ee.value),c(`${la}?class_id=${ee.value}`),I(`${We.examDropdownUrl}?class_id=${ee.value}`),g(te=>!te)):pe==="exam_id"&&(S(`${Fr}?class_id=${A}&exam_id=${ee.value}`),(await C({exam_id:ee.value}))[0].exam_type==="periodic_test"?M(!1):M(!0),T(se=>!se))},{trigger:C,isLoading:E,data:P}=it(We.examSetting.typeByExamId,(ee,{arg:pe})=>Kr(ee,pe,t)),{isLoading:U,errorSubject:H,data:W}=q(v,Y),{isLoading:L,errorExam:B,data:$}=q(R,Y),{isLoading:N,errorClass:V,data:Q}=q(t!=null?[oa,t]:null,([ee,pe])=>Y(ee,pe)),{isLoading:Z,data:J}=q(d,Y),K=i.useMemo(()=>j?[{title:"SL",dataIndex:"Sl_no",align:"center"},{title:"Student Name",dataIndex:"firstname",align:"center"},{title:"Full Marks",dataIndex:"full_marks",align:"center"},{title:"Marks Obtained",dataIndex:"marks_obtained",align:"center"},{title:"Percentage",dataIndex:"percentage",align:"center"},{title:"Attendance",dataIndex:"attendance",align:"center"}]:[{title:"SL",dataIndex:"Sl_no",align:"center"},{title:"Student Name",dataIndex:"firstname",align:"center"},{title:"Full Marks",dataIndex:"full_marks",align:"center"},{title:"Periodic Test",dataIndex:"PeriodicTest",align:"center"},{title:"Portfolio(CW/HW)",dataIndex:"Portfolio",align:"center"},{title:"Subject Enrichment",dataIndex:"Enrichment",align:"center"},{title:"Multiple Assessment",dataIndex:"Assessment",align:"center"},{title:"Attendance",dataIndex:"attendance",align:"center"}],[j]),X=ee=>{ee.preventDefault();const pe=new FormData(ee.target),te={};pe.forEach((se,le)=>te[le]=se),l(te),f(`exam/exam/getstudentlistforExam?class_id=${ee.target.class_id.value}&section_id=${ee.target.section_id.value}&subject_id=${ee.target.subject_id.value}&exam_id=${ee.target.exam_id.value}&`),r.current&&r.current.click(),n(!1),m(se=>!se)};return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Grid,{container:!0,spacing:6,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Assign Marks Exam"})}),e.jsxs(w,{p:3,children:[e.jsx(s.Form,{layout:"vertical",onFinish:X,children:e.jsxs(s.Grid,{container:!0,spacing:3,justifyContent:"center",children:[e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray(Q)?Q:[],closeMenuOnSelect:!0,label:"Class",name:"class_id",onChange:ee=>F(ee,"class_id"),allowSelectAll:!1,required:!0})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray(J)?J:[],closeMenuOnSelect:!0,label:"Section",name:"section_id",allowSelectAll:!1},`section1${y}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray($)?$:[],closeMenuOnSelect:!0,label:"Exam",name:"exam_id",onChange:ee=>F(ee,"exam_id"),allowSelectAll:!1,required:!0})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray(W)?W:[],closeMenuOnSelect:!0,label:"Subject",name:"subject_id",allowSelectAll:!1,onChange:ee=>{x(ee.subject_type),n(!0)}},`sub${b}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,className:"buttonCoustom",children:e.jsx(s.Grid,{container:!0,justifyContent:"flex-end",children:e.jsx(s.Grid,{item:!0,children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})})})]})}),e.jsx(s.Grid,{container:!0,spacing:3,style:{marginTop:16},children:e.jsx(s.Grid,{item:!0,xs:12,style:{borderTop:"1px solid #ececec",borderTopWidth:"2px"},children:h&&!a&&e.jsx(s.Table,{ref:O,columns:K,dataSource:z,rowKey:"id",pagination:!1,bordered:!0,size:"small",loading:E})})})]})]})})})]})}function cC({token:t}){return e.jsx(dC,{token:t})}function op(t,a,n){if(typeof t=="function"?t===a:t.has(a))return arguments.length<3?a:n;throw new TypeError("Private element is not present on this object")}function uC(t,a){if(a.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}function dc(t,a){return t.get(op(t,a))}function pC(t,a,n){uC(t,a),a.set(t,n)}function mC(t,a,n){return t.set(op(t,a),n),n}const hC=100,Ee={},fC=()=>{Ee.previousActiveElement instanceof HTMLElement?(Ee.previousActiveElement.focus(),Ee.previousActiveElement=null):document.body&&document.body.focus()},gC=t=>new Promise(a=>{if(!t)return a();const n=window.scrollX,r=window.scrollY;Ee.restoreFocusTimeout=setTimeout(()=>{fC(),a()},hC),window.scrollTo(n,r)}),lp="swal2-",yC=["container","shown","height-auto","iosfix","popup","modal","no-backdrop","no-transition","toast","toast-shown","show","hide","close","title","html-container","actions","confirm","deny","cancel","footer","icon","icon-content","image","input","file","range","select","radio","checkbox","label","textarea","inputerror","input-label","validation-message","progress-steps","active-progress-step","progress-step","progress-step-line","loader","loading","styled","top","top-start","top-end","top-left","top-right","center","center-start","center-end","center-left","center-right","bottom","bottom-start","bottom-end","bottom-left","bottom-right","grow-row","grow-column","grow-fullscreen","rtl","timer-progress-bar","timer-progress-bar-container","scrollbar-measure","icon-success","icon-warning","icon-info","icon-question","icon-error","draggable","dragging"],ue=yC.reduce((t,a)=>(t[a]=lp+a,t),{}),xC=["success","warning","info","question","error"],wr=xC.reduce((t,a)=>(t[a]=lp+a,t),{}),dp="SweetAlert2:",Po=t=>t.charAt(0).toUpperCase()+t.slice(1),Pt=t=>{console.warn(`${dp} ${typeof t=="object"?t.join(" "):t}`)},Xa=t=>{console.error(`${dp} ${t}`)},cc=[],bC=t=>{cc.includes(t)||(cc.push(t),Pt(t))},cp=(t,a=null)=>{bC(`"${t}" is deprecated and will be removed in the next major release.${a?` Use "${a}" instead.`:""}`)},Gr=t=>typeof t=="function"?t():t,Mo=t=>t&&typeof t.toPromise=="function",vs=t=>Mo(t)?t.toPromise():Promise.resolve(t),Eo=t=>t&&Promise.resolve(t)===t,jC=()=>navigator.userAgent.includes("Firefox"),Mt=()=>document.body.querySelector(`.${ue.container}`),Cs=t=>{const a=Mt();return a?a.querySelector(t):null},Yt=t=>Cs(`.${t}`),Xe=()=>Yt(ue.popup),Rn=()=>Yt(ue.icon),SC=()=>Yt(ue["icon-content"]),up=()=>Yt(ue.title),Oo=()=>Yt(ue["html-container"]),pp=()=>Yt(ue.image),$o=()=>Yt(ue["progress-steps"]),Jr=()=>Yt(ue["validation-message"]),ia=()=>Cs(`.${ue.actions} .${ue.confirm}`),In=()=>Cs(`.${ue.actions} .${ue.cancel}`),Za=()=>Cs(`.${ue.actions} .${ue.deny}`),wC=()=>Yt(ue["input-label"]),Pn=()=>Cs(`.${ue.loader}`),_s=()=>Yt(ue.actions),mp=()=>Yt(ue.footer),Qr=()=>Yt(ue["timer-progress-bar"]),Fo=()=>Yt(ue.close),vC=`
65
+ a[href],
66
+ area[href],
67
+ input:not([disabled]),
68
+ select:not([disabled]),
69
+ textarea:not([disabled]),
70
+ button:not([disabled]),
71
+ iframe,
72
+ object,
73
+ embed,
74
+ [tabindex="0"],
75
+ [contenteditable],
76
+ audio[controls],
77
+ video[controls],
78
+ summary
79
+ `,Bo=()=>{const t=Xe();if(!t)return[];const a=t.querySelectorAll('[tabindex]:not([tabindex="-1"]):not([tabindex="0"])'),n=Array.from(a).sort((l,d)=>{const c=parseInt(l.getAttribute("tabindex")||"0"),h=parseInt(d.getAttribute("tabindex")||"0");return c>h?1:c<h?-1:0}),r=t.querySelectorAll(vC),o=Array.from(r).filter(l=>l.getAttribute("tabindex")!=="-1");return[...new Set(n.concat(o))].filter(l=>Bt(l))},Lo=()=>ha(document.body,ue.shown)&&!ha(document.body,ue["toast-shown"])&&!ha(document.body,ue["no-backdrop"]),Xr=()=>{const t=Xe();return t?ha(t,ue.toast):!1},CC=()=>{const t=Xe();return t?t.hasAttribute("data-loading"):!1},Wt=(t,a)=>{if(t.textContent="",a){const r=new DOMParser().parseFromString(a,"text/html"),o=r.querySelector("head");o&&Array.from(o.childNodes).forEach(d=>{t.appendChild(d)});const l=r.querySelector("body");l&&Array.from(l.childNodes).forEach(d=>{d instanceof HTMLVideoElement||d instanceof HTMLAudioElement?t.appendChild(d.cloneNode(!0)):t.appendChild(d)})}},ha=(t,a)=>a?a.split(/\s+/).every(n=>t.classList.contains(n)):!1,_C=(t,a)=>{Array.from(t.classList).forEach(n=>{!Object.values(ue).includes(n)&&!Object.values(wr).includes(n)&&!Object.values(a.showClass||{}).includes(n)&&t.classList.remove(n)})},zt=(t,a,n)=>{if(_C(t,a),!a.customClass)return;const r=a.customClass[n];if(r){if(typeof r!="string"&&!r.forEach){Pt(`Invalid type of customClass.${n}! Expected string or iterable object, got "${typeof r}"`);return}Qe(t,r)}},Zr=(t,a)=>{if(!a)return null;switch(a){case"select":case"textarea":case"file":return t.querySelector(`.${ue.popup} > .${ue[a]}`);case"checkbox":return t.querySelector(`.${ue.popup} > .${ue.checkbox} input`);case"radio":return t.querySelector(`.${ue.popup} > .${ue.radio} input:checked`)||t.querySelector(`.${ue.popup} > .${ue.radio} input:first-child`);case"range":return t.querySelector(`.${ue.popup} > .${ue.range} input`);default:return t.querySelector(`.${ue.popup} > .${ue.input}`)}},hp=t=>{if(t.focus(),t.type!=="file"){const a=t.value;t.value="",t.value=a}},fp=(t,a,n)=>{if(!t||!a)return;const r=typeof a=="string"?a.split(/\s+/).filter(Boolean):a;(Array.isArray(t)?t:[t]).forEach(l=>{r.forEach(d=>{n?l.classList.add(d):l.classList.remove(d)})})},Qe=(t,a)=>{fp(t,a,!0)},Gt=(t,a)=>{fp(t,a,!1)},Ca=(t,a)=>Array.from(t.children).find(n=>n instanceof HTMLElement&&ha(n,a)),Wa=(t,a,n)=>{n===`${parseInt(`${n}`)}`&&(n=parseInt(n)),n||n===0?t.style.setProperty(a,typeof n=="number"?`${n}px`:n):t.style.removeProperty(a)},wt=(t,a="flex")=>{t&&(t.style.display=a)},Rt=t=>{t&&(t.style.display="none")},Uo=(t,a="block")=>{t&&new MutationObserver(()=>{As(t,t.innerHTML,a)}).observe(t,{childList:!0,subtree:!0})},uc=(t,a,n,r)=>{const o=t.querySelector(a);o&&o.style.setProperty(n,r)},As=(t,a,n="flex")=>{a?wt(t,n):Rt(t)},Bt=t=>!!(t&&(t.offsetWidth||t.offsetHeight||t.getClientRects().length)),AC=()=>!Bt(ia())&&!Bt(Za())&&!Bt(In()),eo=t=>t.scrollHeight>t.clientHeight,DC=(t,a)=>{let n=t;for(;n&&n!==a;){if(eo(n))return!0;n=n.parentElement}return!1},gp=t=>{const a=window.getComputedStyle(t),n=parseFloat(a.getPropertyValue("animation-duration")||"0"),r=parseFloat(a.getPropertyValue("transition-duration")||"0");return n>0||r>0},No=(t,a=!1)=>{const n=Qr();n&&Bt(n)&&(a&&(n.style.transition="none",n.style.width="100%"),setTimeout(()=>{n.style.transition=`width ${t/1e3}s linear`,n.style.width="0%"},10))},TC=()=>{const t=Qr();if(!t)return;const a=parseInt(window.getComputedStyle(t).width);t.style.removeProperty("transition"),t.style.width="100%";const n=parseInt(window.getComputedStyle(t).width),r=a/n*100;t.style.width=`${r}%`},kC=()=>typeof window>"u"||typeof document>"u",RC=`
80
+ <div aria-labelledby="${ue.title}" aria-describedby="${ue["html-container"]}" class="${ue.popup}" tabindex="-1">
81
+ <button type="button" class="${ue.close}"></button>
82
+ <ul class="${ue["progress-steps"]}"></ul>
83
+ <div class="${ue.icon}"></div>
84
+ <img class="${ue.image}" />
85
+ <h2 class="${ue.title}" id="${ue.title}"></h2>
86
+ <div class="${ue["html-container"]}" id="${ue["html-container"]}"></div>
87
+ <input class="${ue.input}" id="${ue.input}" />
88
+ <input type="file" class="${ue.file}" />
89
+ <div class="${ue.range}">
90
+ <input type="range" />
91
+ <output></output>
92
+ </div>
93
+ <select class="${ue.select}" id="${ue.select}"></select>
94
+ <div class="${ue.radio}"></div>
95
+ <label class="${ue.checkbox}">
96
+ <input type="checkbox" id="${ue.checkbox}" />
97
+ <span class="${ue.label}"></span>
98
+ </label>
99
+ <textarea class="${ue.textarea}" id="${ue.textarea}"></textarea>
100
+ <div class="${ue["validation-message"]}" id="${ue["validation-message"]}"></div>
101
+ <div class="${ue.actions}">
102
+ <div class="${ue.loader}"></div>
103
+ <button type="button" class="${ue.confirm}"></button>
104
+ <button type="button" class="${ue.deny}"></button>
105
+ <button type="button" class="${ue.cancel}"></button>
106
+ </div>
107
+ <div class="${ue.footer}"></div>
108
+ <div class="${ue["timer-progress-bar-container"]}">
109
+ <div class="${ue["timer-progress-bar"]}"></div>
110
+ </div>
111
+ </div>
112
+ `.replace(/(^|\n)\s*/g,""),IC=()=>{const t=Mt();return t?(t.remove(),Gt([document.documentElement,document.body],[ue["no-backdrop"],ue["toast-shown"],ue["has-column"]]),!0):!1},Ua=()=>{Ee.currentInstance&&Ee.currentInstance.resetValidationMessage()},PC=()=>{const t=Xe();if(!t)return;const a=Ca(t,ue.input),n=Ca(t,ue.file),r=t.querySelector(`.${ue.range} input`),o=t.querySelector(`.${ue.range} output`),l=Ca(t,ue.select),d=t.querySelector(`.${ue.checkbox} input`),c=Ca(t,ue.textarea);a&&(a.oninput=Ua),n&&(n.onchange=Ua),l&&(l.onchange=Ua),d&&(d.onchange=Ua),c&&(c.oninput=Ua),r&&o&&(r.oninput=()=>{Ua(),o.value=r.value},r.onchange=()=>{Ua(),o.value=r.value})},MC=t=>{if(typeof t=="string"){const a=document.querySelector(t);if(!a)throw new Error(`Target element "${t}" not found`);return a}return t},EC=t=>{const a=Xe();a&&(a.setAttribute("role",t.toast?"alert":"dialog"),a.setAttribute("aria-live",t.toast?"polite":"assertive"),t.toast||a.setAttribute("aria-modal","true"))},OC=t=>{window.getComputedStyle(t).direction==="rtl"&&(Qe(Mt(),ue.rtl),Ee.isRTL=!0)},$C=t=>{const a=IC();if(kC()){Xa("SweetAlert2 requires document to initialize");return}const n=document.createElement("div");n.className=ue.container,a&&Qe(n,ue["no-transition"]),Wt(n,RC),n.dataset.swal2Theme=t.theme;const r=MC(t.target||"body");r.appendChild(n),t.topLayer&&(n.setAttribute("popover",""),n.showPopover()),EC(t),OC(r),PC()},zo=(t,a)=>{t instanceof HTMLElement?a.appendChild(t):typeof t=="object"?FC(t,a):t&&Wt(a,t)},FC=(t,a)=>{"jquery"in t?BC(a,t):Wt(a,t.toString())},BC=(t,a)=>{if(t.textContent="",0 in a)for(let n=0;n in a;n++)t.appendChild(a[n].cloneNode(!0));else t.appendChild(a.cloneNode(!0))},LC=(t,a)=>{const n=_s(),r=Pn();!n||!r||(!a.showConfirmButton&&!a.showDenyButton&&!a.showCancelButton?Rt(n):wt(n),zt(n,a,"actions"),UC(n,r,a),Wt(r,a.loaderHtml||""),zt(r,a,"loader"))};function UC(t,a,n){const r=ia(),o=Za(),l=In();!r||!o||!l||(Li(r,"confirm",n),Li(o,"deny",n),Li(l,"cancel",n),NC(r,o,l,n),n.reverseButtons&&(n.toast?(t.insertBefore(l,r),t.insertBefore(o,r)):(t.insertBefore(l,a),t.insertBefore(o,a),t.insertBefore(r,a))))}function NC(t,a,n,r){if(!r.buttonsStyling){Gt([t,a,n],ue.styled);return}Qe([t,a,n],ue.styled),[[t,"confirm",r.confirmButtonColor],[a,"deny",r.denyButtonColor],[n,"cancel",r.cancelButtonColor]].forEach(([l,d,c])=>{c&&l.style.setProperty(`--swal2-${d}-button-background-color`,c),zC(l)})}function zC(t){const a=window.getComputedStyle(t);if(a.getPropertyValue("--swal2-action-button-focus-box-shadow"))return;const n=a.backgroundColor.replace(/rgba?\((\d+), (\d+), (\d+).*/,"rgba($1, $2, $3, 0.5)");t.style.setProperty("--swal2-action-button-focus-box-shadow",a.getPropertyValue("--swal2-outline").replace(/ rgba\(.*/,` ${n}`))}function Li(t,a,n){const r=Po(a);As(t,n[`show${r}Button`],"inline-block"),Wt(t,n[`${a}ButtonText`]||""),t.setAttribute("aria-label",n[`${a}ButtonAriaLabel`]||""),t.className=ue[a],zt(t,n,`${a}Button`)}const qC=(t,a)=>{const n=Fo();n&&(Wt(n,a.closeButtonHtml||""),zt(n,a,"closeButton"),As(n,a.showCloseButton),n.setAttribute("aria-label",a.closeButtonAriaLabel||""))},YC=(t,a)=>{const n=Mt();n&&(WC(n,a.backdrop),VC(n,a.position),HC(n,a.grow),zt(n,a,"container"))};function WC(t,a){typeof a=="string"?t.style.background=a:a||Qe([document.documentElement,document.body],ue["no-backdrop"])}function VC(t,a){a&&(a in ue?Qe(t,ue[a]):(Pt('The "position" parameter is not valid, defaulting to "center"'),Qe(t,ue.center)))}function HC(t,a){a&&Qe(t,ue[`grow-${a}`])}var nt={innerParams:new WeakMap,domCache:new WeakMap,focusedElement:new WeakMap};const KC=["input","file","range","select","radio","checkbox","textarea"],GC=(t,a)=>{const n=Xe();if(!n)return;const r=nt.innerParams.get(t),o=!r||a.input!==r.input;KC.forEach(l=>{const d=Ca(n,ue[l]);d&&(XC(l,a.inputAttributes),d.className=ue[l],o&&Rt(d))}),a.input&&(o&&JC(a),ZC(a))},JC=t=>{if(!t.input)return;if(!ft[t.input]){Xa(`Unexpected type of input! Expected ${Object.keys(ft).join(" | ")}, got "${t.input}"`);return}const a=yp(t.input);if(!a)return;const n=ft[t.input](a,t);wt(a),t.inputAutoFocus&&setTimeout(()=>{hp(n)})},QC=t=>{for(const{name:a}of Array.from(t.attributes))["id","type","value","style"].includes(a)||t.removeAttribute(a)},XC=(t,a)=>{const n=Xe();if(!n)return;const r=Zr(n,t);if(r){QC(r);for(const o in a)r.setAttribute(o,a[o])}},ZC=t=>{if(!t.input)return;const a=yp(t.input);a&&zt(a,t,"input")},qo=(t,a)=>{!t.placeholder&&a.inputPlaceholder&&(t.placeholder=a.inputPlaceholder)},Ds=(t,a,n)=>{if(n.inputLabel){const r=document.createElement("label"),o=ue["input-label"];r.setAttribute("for",t.id),r.className=o,typeof n.customClass=="object"&&Qe(r,n.customClass.inputLabel),r.innerText=n.inputLabel,a.insertAdjacentElement("beforebegin",r)}},yp=t=>{const a=Xe();if(a)return Ca(a,ue[t]||ue.input)},vr=(t,a)=>{["string","number"].includes(typeof a)?t.value=`${a}`:Eo(a)||Pt(`Unexpected type of inputValue! Expected "string", "number" or "Promise", got "${typeof a}"`)},ft={};ft.text=ft.email=ft.password=ft.number=ft.tel=ft.url=ft.search=ft.date=ft["datetime-local"]=ft.time=ft.week=ft.month=(t,a)=>{const n=t;return vr(n,a.inputValue),Ds(n,n,a),qo(n,a),n.type=a.input,n};ft.file=(t,a)=>{const n=t;return Ds(n,n,a),qo(n,a),n};ft.range=(t,a)=>{const n=t,r=n.querySelector("input"),o=n.querySelector("output");return r&&(vr(r,a.inputValue),r.type=a.input,Ds(r,t,a)),o&&vr(o,a.inputValue),t};ft.select=(t,a)=>{const n=t;if(n.textContent="",a.inputPlaceholder){const r=document.createElement("option");Wt(r,a.inputPlaceholder),r.value="",r.disabled=!0,r.selected=!0,n.appendChild(r)}return Ds(n,n,a),n};ft.radio=t=>{const a=t;return a.textContent="",t};ft.checkbox=(t,a)=>{const n=Xe();if(!n)throw new Error("Popup not found");const r=Zr(n,"checkbox");if(!r)throw new Error("Checkbox input not found");r.value="1",r.checked=!!a.inputValue;const l=t.querySelector("span");if(l){const d=a.inputPlaceholder||a.inputLabel;d&&Wt(l,d)}return r};ft.textarea=(t,a)=>{const n=t;vr(n,a.inputValue),qo(n,a),Ds(n,n,a);const r=o=>parseInt(window.getComputedStyle(o).marginLeft)+parseInt(window.getComputedStyle(o).marginRight);return setTimeout(()=>{if("MutationObserver"in window){const o=Xe();if(!o)return;const l=parseInt(window.getComputedStyle(o).width),d=()=>{if(!document.body.contains(n))return;const c=n.offsetWidth+r(n),h=Xe();h&&(c>l?h.style.width=`${c}px`:Wa(h,"width",a.width))};new MutationObserver(d).observe(n,{attributes:!0,attributeFilter:["style"]})}}),n};const e_=(t,a)=>{const n=Oo();n&&(Uo(n),zt(n,a,"htmlContainer"),a.html?(zo(a.html,n),wt(n,"block")):a.text?(n.textContent=a.text,wt(n,"block")):Rt(n),GC(t,a))},t_=(t,a)=>{const n=mp();n&&(Uo(n),As(n,!!a.footer,"block"),a.footer&&zo(a.footer,n),zt(n,a,"footer"))},a_=(t,a)=>{const n=nt.innerParams.get(t),r=Rn();if(!r)return;if(n&&a.icon===n.icon){mc(r,a),pc(r,a);return}if(!a.icon&&!a.iconHtml){Rt(r);return}if(a.icon&&Object.keys(wr).indexOf(a.icon)===-1){Xa(`Unknown icon! Expected "success", "error", "warning", "info" or "question", got "${a.icon}"`),Rt(r);return}wt(r),mc(r,a),pc(r,a),Qe(r,a.showClass&&a.showClass.icon),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",xp)},pc=(t,a)=>{for(const[n,r]of Object.entries(wr))a.icon!==n&&Gt(t,r);Qe(t,a.icon&&wr[a.icon]),r_(t,a),xp(),zt(t,a,"icon")},xp=()=>{const t=Xe();if(!t)return;const a=window.getComputedStyle(t).getPropertyValue("background-color");t.querySelectorAll("[class^=swal2-success-circular-line], .swal2-success-fix").forEach(r=>{r.style.backgroundColor=a})},n_=t=>`
113
+ ${t.animation?'<div class="swal2-success-circular-line-left"></div>':""}
114
+ <span class="swal2-success-line-tip"></span> <span class="swal2-success-line-long"></span>
115
+ <div class="swal2-success-ring"></div>
116
+ ${t.animation?'<div class="swal2-success-fix"></div>':""}
117
+ ${t.animation?'<div class="swal2-success-circular-line-right"></div>':""}
118
+ `,s_=`
119
+ <span class="swal2-x-mark">
120
+ <span class="swal2-x-mark-line-left"></span>
121
+ <span class="swal2-x-mark-line-right"></span>
122
+ </span>
123
+ `,mc=(t,a)=>{if(!a.icon&&!a.iconHtml)return;let n=t.innerHTML,r="";a.iconHtml?r=hc(a.iconHtml):a.icon==="success"?(r=n_(a),n=n.replace(/ style=".*?"/g,"")):a.icon==="error"?r=s_:a.icon&&(r=hc({question:"?",warning:"!",info:"i"}[a.icon])),n.trim()!==r.trim()&&Wt(t,r)},r_=(t,a)=>{if(a.iconColor){t.style.color=a.iconColor,t.style.borderColor=a.iconColor;for(const n of[".swal2-success-line-tip",".swal2-success-line-long",".swal2-x-mark-line-left",".swal2-x-mark-line-right"])uc(t,n,"background-color",a.iconColor);uc(t,".swal2-success-ring","border-color",a.iconColor)}},hc=t=>`<div class="${ue["icon-content"]}">${t}</div>`,i_=(t,a)=>{const n=pp();if(n){if(!a.imageUrl){Rt(n);return}wt(n,""),n.setAttribute("src",a.imageUrl),n.setAttribute("alt",a.imageAlt||""),Wa(n,"width",a.imageWidth),Wa(n,"height",a.imageHeight),n.className=ue.image,zt(n,a,"image")}};let Yo=!1,bp=0,jp=0,Sp=0,wp=0;const o_=t=>{t.addEventListener("mousedown",Cr),document.body.addEventListener("mousemove",_r),t.addEventListener("mouseup",Ar),t.addEventListener("touchstart",Cr),document.body.addEventListener("touchmove",_r),t.addEventListener("touchend",Ar)},l_=t=>{t.removeEventListener("mousedown",Cr),document.body.removeEventListener("mousemove",_r),t.removeEventListener("mouseup",Ar),t.removeEventListener("touchstart",Cr),document.body.removeEventListener("touchmove",_r),t.removeEventListener("touchend",Ar)},Cr=t=>{const a=Xe();if(!a)return;const n=Rn();if(t.target===a||n&&n.contains(t.target)){Yo=!0;const r=vp(t);bp=r.clientX,jp=r.clientY,Sp=parseInt(a.style.insetInlineStart)||0,wp=parseInt(a.style.insetBlockStart)||0,Qe(a,"swal2-dragging")}},_r=t=>{const a=Xe();if(a&&Yo){let{clientX:n,clientY:r}=vp(t);const o=n-bp;a.style.insetInlineStart=`${Sp+(Ee.isRTL?-o:o)}px`,a.style.insetBlockStart=`${wp+(r-jp)}px`}},Ar=()=>{const t=Xe();Yo=!1,Gt(t,"swal2-dragging")},vp=t=>{const a=t.type.startsWith("touch")?t.touches[0]:t;return{clientX:a.clientX,clientY:a.clientY}},d_=(t,a)=>{const n=Mt(),r=Xe();if(!(!n||!r)){if(a.toast){Wa(n,"width",a.width),r.style.width="100%";const o=Pn();o&&r.insertBefore(o,Rn())}else Wa(r,"width",a.width);Wa(r,"padding",a.padding),a.color&&(r.style.color=a.color),a.background&&(r.style.background=a.background),Rt(Jr()),c_(r,a),a.draggable&&!a.toast?(Qe(r,ue.draggable),o_(r)):(Gt(r,ue.draggable),l_(r))}},c_=(t,a)=>{const n=a.showClass||{};t.className=`${ue.popup} ${Bt(t)?n.popup:""}`,a.toast?(Qe([document.documentElement,document.body],ue["toast-shown"]),Qe(t,ue.toast)):Qe(t,ue.modal),zt(t,a,"popup"),typeof a.customClass=="string"&&Qe(t,a.customClass),a.icon&&Qe(t,ue[`icon-${a.icon}`])},u_=(t,a)=>{const n=$o();if(!n)return;const{progressSteps:r,currentProgressStep:o}=a;if(!r||r.length===0||o===void 0){Rt(n);return}wt(n),n.textContent="",o>=r.length&&Pt("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),r.forEach((l,d)=>{const c=p_(l);if(n.appendChild(c),d===o&&Qe(c,ue["active-progress-step"]),d!==r.length-1){const h=m_(a);n.appendChild(h)}})},p_=t=>{const a=document.createElement("li");return Qe(a,ue["progress-step"]),Wt(a,t),a},m_=t=>{const a=document.createElement("li");return Qe(a,ue["progress-step-line"]),t.progressStepsDistance&&Wa(a,"width",t.progressStepsDistance),a},h_=(t,a)=>{const n=up();n&&(Uo(n),As(n,!!(a.title||a.titleText),"block"),a.title&&zo(a.title,n),a.titleText&&(n.innerText=a.titleText),zt(n,a,"title"))},Cp=(t,a)=>{var n;d_(t,a),YC(t,a),u_(t,a),a_(t,a),i_(t,a),h_(t,a),qC(t,a),e_(t,a),LC(t,a),t_(t,a);const r=Xe();typeof a.didRender=="function"&&r&&a.didRender(r),(n=Ee.eventEmitter)===null||n===void 0||n.emit("didRender",r)},f_=()=>Bt(Xe()),_p=()=>{var t;return(t=ia())===null||t===void 0?void 0:t.click()},g_=()=>{var t;return(t=Za())===null||t===void 0?void 0:t.click()},y_=()=>{var t;return(t=In())===null||t===void 0?void 0:t.click()},Mn=Object.freeze({cancel:"cancel",backdrop:"backdrop",close:"close",esc:"esc",timer:"timer"}),Ap=t=>{if(t.keydownTarget&&t.keydownHandlerAdded&&t.keydownHandler){const a=t.keydownHandler;t.keydownTarget.removeEventListener("keydown",a,{capture:t.keydownListenerCapture}),t.keydownHandlerAdded=!1}},x_=(t,a,n)=>{if(Ap(t),!a.toast){const r=l=>j_(a,l,n);t.keydownHandler=r;const o=a.keydownListenerCapture?window:Xe();if(o){t.keydownTarget=o,t.keydownListenerCapture=a.keydownListenerCapture;const l=r;t.keydownTarget.addEventListener("keydown",l,{capture:t.keydownListenerCapture}),t.keydownHandlerAdded=!0}}},to=(t,a)=>{var n;const r=Bo();return r.length?(t=t+a,t===-2&&(t=r.length-1),t===r.length?t=0:t===-1&&(t=r.length-1),r[t].focus(),!(jC()&&r[t]instanceof HTMLIFrameElement)):((n=Xe())===null||n===void 0||n.focus(),!0)},Dp=["ArrowRight","ArrowDown"],b_=["ArrowLeft","ArrowUp"],j_=(t,a,n)=>{t&&(a.isComposing||a.keyCode===229||(t.stopKeydownPropagation&&a.stopPropagation(),a.key==="Enter"?S_(a,t):a.key==="Tab"?w_(a):[...Dp,...b_].includes(a.key)?v_(a.key):a.key==="Escape"&&C_(a,t,n)))},S_=(t,a)=>{if(!Gr(a.allowEnterKey))return;const n=Xe();if(!n||!a.input)return;const r=Zr(n,a.input);if(t.target&&r&&t.target instanceof HTMLElement&&t.target.outerHTML===r.outerHTML){if(["textarea","file"].includes(a.input))return;_p(),t.preventDefault()}},w_=t=>{const a=t.target,r=Bo().findIndex(l=>l===a);let o=!0;t.shiftKey?o=to(r,-1):o=to(r,1),t.stopPropagation(),o&&t.preventDefault()},v_=t=>{const a=_s(),n=ia(),r=Za(),o=In();if(!a||!n||!r||!o)return;const l=[n,r,o];if(document.activeElement instanceof HTMLElement&&!l.includes(document.activeElement))return;const d=Dp.includes(t)?"nextElementSibling":"previousElementSibling";let c=document.activeElement;if(c){for(let h=0;h<a.children.length;h++){if(c=c[d],!c)return;if(c instanceof HTMLButtonElement&&Bt(c))break}c instanceof HTMLButtonElement&&c.focus()}},C_=(t,a,n)=>{t.preventDefault(),Gr(a.allowEscapeKey)&&n(Mn.esc)};var vn={swalPromiseResolve:new WeakMap,swalPromiseReject:new WeakMap};const __=()=>{const t=Mt();Array.from(document.body.children).forEach(n=>{n.contains(t)||(n.hasAttribute("aria-hidden")&&n.setAttribute("data-previous-aria-hidden",n.getAttribute("aria-hidden")||""),n.setAttribute("aria-hidden","true"))})},Tp=()=>{Array.from(document.body.children).forEach(a=>{a.hasAttribute("data-previous-aria-hidden")?(a.setAttribute("aria-hidden",a.getAttribute("data-previous-aria-hidden")||""),a.removeAttribute("data-previous-aria-hidden")):a.removeAttribute("aria-hidden")})},Wo=typeof window<"u"&&!!window.GestureEvent,A_=Wo&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,D_=()=>{if(Wo&&!ha(document.body,ue.iosfix)){const t=document.body.scrollTop;document.body.style.top=`${t*-1}px`,Qe(document.body,ue.iosfix),T_()}},T_=()=>{const t=Mt();if(!t)return;let a;t.ontouchstart=n=>{a=k_(n)},t.ontouchmove=n=>{a&&(n.preventDefault(),n.stopPropagation())}},k_=t=>{const a=t.target,n=Mt(),r=Oo();return!n||!r||R_(t)||I_(t)?!1:a===n||!eo(n)&&a instanceof HTMLElement&&!DC(a,r)&&a.tagName!=="INPUT"&&a.tagName!=="TEXTAREA"&&!(eo(r)&&r.contains(a))},R_=t=>!!(t.touches&&t.touches.length&&t.touches[0].touchType==="stylus"),I_=t=>t.touches&&t.touches.length>1,P_=()=>{if(ha(document.body,ue.iosfix)){const t=parseInt(document.body.style.top,10);Gt(document.body,ue.iosfix),document.body.style.top="",document.body.scrollTop=t*-1}},M_=()=>{const t=document.createElement("div");t.className=ue["scrollbar-measure"],document.body.appendChild(t);const a=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),a};let yn=null;const E_=t=>{yn===null&&(document.body.scrollHeight>window.innerHeight||t==="scroll")&&(yn=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight=`${yn+M_()}px`)},O_=()=>{yn!==null&&(document.body.style.paddingRight=`${yn}px`,yn=null)};function kp(t,a,n,r){Xr()?fc(t,r):(gC(n).then(()=>fc(t,r)),Ap(Ee)),Wo?(a.setAttribute("style","display:none !important"),a.removeAttribute("class"),a.innerHTML=""):a.remove(),Lo()&&(O_(),P_(),Tp()),$_()}function $_(){Gt([document.documentElement,document.body],[ue.shown,ue["height-auto"],ue["no-backdrop"],ue["toast-shown"]])}function _a(t){t=B_(t);const a=vn.swalPromiseResolve.get(this),n=F_(this);this.isAwaitingPromise?t.isDismissed||(Ts(this),a(t)):n&&a(t)}const F_=t=>{const a=Xe();if(!a)return!1;const n=nt.innerParams.get(t);if(!n||ha(a,n.hideClass.popup))return!1;Gt(a,n.showClass.popup),Qe(a,n.hideClass.popup);const r=Mt();return Gt(r,n.showClass.backdrop),Qe(r,n.hideClass.backdrop),L_(t,a,n),!0};function Rp(t){const a=vn.swalPromiseReject.get(this);Ts(this),a&&a(t)}const Ts=t=>{t.isAwaitingPromise&&(delete t.isAwaitingPromise,nt.innerParams.get(t)||t._destroy())},B_=t=>typeof t>"u"?{isConfirmed:!1,isDenied:!1,isDismissed:!0}:Object.assign({isConfirmed:!1,isDenied:!1,isDismissed:!1},t),L_=(t,a,n)=>{var r;const o=Mt(),l=gp(a);typeof n.willClose=="function"&&n.willClose(a),(r=Ee.eventEmitter)===null||r===void 0||r.emit("willClose",a),l&&o?U_(t,a,o,!!n.returnFocus,n.didClose):o&&kp(t,o,!!n.returnFocus,n.didClose)},U_=(t,a,n,r,o)=>{Ee.swalCloseEventFinishedCallback=kp.bind(null,t,n,r,o);const l=function(d){if(d.target===a){var c;(c=Ee.swalCloseEventFinishedCallback)===null||c===void 0||c.call(Ee),delete Ee.swalCloseEventFinishedCallback,a.removeEventListener("animationend",l),a.removeEventListener("transitionend",l)}};a.addEventListener("animationend",l),a.addEventListener("transitionend",l)},fc=(t,a)=>{setTimeout(()=>{var n;typeof a=="function"&&a.bind(t.params)(),(n=Ee.eventEmitter)===null||n===void 0||n.emit("didClose"),t._destroy&&t._destroy()})},Cn=t=>{let a=Xe();if(a||new Rr,a=Xe(),!a)return;const n=Pn();Xr()?Rt(Rn()):N_(a,t),wt(n),a.setAttribute("data-loading","true"),a.setAttribute("aria-busy","true"),a.focus()},N_=(t,a)=>{const n=_s(),r=Pn();!n||!r||(!a&&Bt(ia())&&(a=ia()),wt(n),a&&(Rt(a),r.setAttribute("data-button-to-replace",a.className),n.insertBefore(r,a)),Qe([t,n],ue.loading))},z_=(t,a)=>{a.input==="select"||a.input==="radio"?H_(t,a):["text","email","number","tel","textarea"].some(n=>n===a.input)&&(Mo(a.inputValue)||Eo(a.inputValue))&&(Cn(ia()),K_(t,a))},q_=(t,a)=>{const n=t.getInput();if(!n)return null;switch(a.input){case"checkbox":return Y_(n);case"radio":return W_(n);case"file":return V_(n);default:return a.inputAutoTrim?n.value.trim():n.value}},Y_=t=>t.checked?1:0,W_=t=>t.checked?t.value:null,V_=t=>t.files&&t.files.length?t.getAttribute("multiple")!==null?t.files:t.files[0]:null,H_=(t,a)=>{const n=Xe();if(!n)return;const r=o=>{a.input==="select"?G_(n,ao(o),a):a.input==="radio"&&J_(n,ao(o),a)};Mo(a.inputOptions)||Eo(a.inputOptions)?(Cn(ia()),vs(a.inputOptions).then(o=>{t.hideLoading(),r(o)})):typeof a.inputOptions=="object"?r(a.inputOptions):Xa(`Unexpected type of inputOptions! Expected object, Map or Promise, got ${typeof a.inputOptions}`)},K_=(t,a)=>{const n=t.getInput();n&&(Rt(n),vs(a.inputValue).then(r=>{n.value=a.input==="number"?`${parseFloat(r)||0}`:`${r}`,wt(n),n.focus(),t.hideLoading()}).catch(r=>{Xa(`Error in inputValue promise: ${r}`),n.value="",wt(n),n.focus(),t.hideLoading()}))};function G_(t,a,n){const r=Ca(t,ue.select);if(!r)return;const o=(l,d,c)=>{const h=document.createElement("option");h.value=c,Wt(h,d),h.selected=Ip(c,n.inputValue),l.appendChild(h)};a.forEach(l=>{const d=l[0],c=l[1];if(Array.isArray(c)){const h=document.createElement("optgroup");h.label=d,h.disabled=!1,r.appendChild(h),c.forEach(f=>o(h,f[1],f[0]))}else o(r,c,d)}),r.focus()}function J_(t,a,n){const r=Ca(t,ue.radio);if(!r)return;a.forEach(l=>{const d=l[0],c=l[1],h=document.createElement("input"),f=document.createElement("label");h.type="radio",h.name=ue.radio,h.value=d,Ip(d,n.inputValue)&&(h.checked=!0);const p=document.createElement("span");Wt(p,c),p.className=ue.label,f.appendChild(h),f.appendChild(p),r.appendChild(f)});const o=r.querySelectorAll("input");o.length&&o[0].focus()}const ao=t=>(t instanceof Map?Array.from(t):Object.entries(t)).map(([n,r])=>[n,typeof r=="object"?ao(r):r]),Ip=(t,a)=>!!a&&a!=null&&a.toString()===t.toString(),Q_=t=>{const a=nt.innerParams.get(t);t.disableButtons(),a.input?Pp(t,"confirm"):Ho(t,!0)},X_=t=>{const a=nt.innerParams.get(t);t.disableButtons(),a.returnInputValueOnDeny?Pp(t,"deny"):Vo(t,!1)},Z_=(t,a)=>{t.disableButtons(),a(Mn.cancel)},Pp=(t,a)=>{const n=nt.innerParams.get(t);if(!n.input){Xa(`The "input" parameter is needed to be set when using returnInputValueOn${Po(a)}`);return}const r=t.getInput(),o=q_(t,n);n.inputValidator?e2(t,o,a):r&&!r.checkValidity()?(t.enableButtons(),t.showValidationMessage(n.validationMessage||r.validationMessage)):a==="deny"?Vo(t,o):Ho(t,o)},e2=(t,a,n)=>{const r=nt.innerParams.get(t);t.disableInput(),Promise.resolve().then(()=>vs(r.inputValidator(a,r.validationMessage))).then(l=>{t.enableButtons(),t.enableInput(),l?t.showValidationMessage(l):n==="deny"?Vo(t,a):Ho(t,a)})},Vo=(t,a)=>{const n=nt.innerParams.get(t);n.showLoaderOnDeny&&Cn(Za()),n.preDeny?(t.isAwaitingPromise=!0,Promise.resolve().then(()=>vs(n.preDeny(a,n.validationMessage))).then(o=>{o===!1?(t.hideLoading(),Ts(t)):t.close({isDenied:!0,value:typeof o>"u"?a:o})}).catch(o=>Mp(t,o))):t.close({isDenied:!0,value:a})},gc=(t,a)=>{t.close({isConfirmed:!0,value:a})},Mp=(t,a)=>{t.rejectPromise(a)},Ho=(t,a)=>{const n=nt.innerParams.get(t);n.showLoaderOnConfirm&&Cn(),n.preConfirm?(t.resetValidationMessage(),t.isAwaitingPromise=!0,Promise.resolve().then(()=>vs(n.preConfirm(a,n.validationMessage))).then(o=>{Bt(Jr())||o===!1?(t.hideLoading(),Ts(t)):gc(t,typeof o>"u"?a:o)}).catch(o=>Mp(t,o))):gc(t,a)};function Dr(){const t=nt.innerParams.get(this);if(!t)return;const a=nt.domCache.get(this);Rt(a.loader),Xr()?t.icon&&wt(Rn()):t2(a),Gt([a.popup,a.actions],ue.loading),a.popup.removeAttribute("aria-busy"),a.popup.removeAttribute("data-loading"),this.enableButtons()}const t2=t=>{const a=t.loader.getAttribute("data-button-to-replace"),n=a?t.popup.getElementsByClassName(a):[];n.length?wt(n[0],"inline-block"):AC()&&Rt(t.actions)};function Ep(){const t=nt.innerParams.get(this),a=nt.domCache.get(this);return a?Zr(a.popup,t.input):null}function Op(t,a,n){const r=nt.domCache.get(t);a.forEach(o=>{r[o].disabled=n})}function $p(t,a){const n=Xe();!n||!t||(t.type==="radio"?n.querySelectorAll(`[name="${ue.radio}"]`).forEach(o=>{o.disabled=a}):t.disabled=a)}function Fp(){Op(this,["confirmButton","denyButton","cancelButton"],!1);const t=nt.focusedElement.get(this);t instanceof HTMLElement&&document.activeElement===document.body&&t.focus(),nt.focusedElement.delete(this)}function Bp(){nt.focusedElement.set(this,document.activeElement),Op(this,["confirmButton","denyButton","cancelButton"],!0)}function Lp(){$p(this.getInput(),!1)}function Up(){$p(this.getInput(),!0)}function Np(t){const a=nt.domCache.get(this),n=nt.innerParams.get(this);Wt(a.validationMessage,t),a.validationMessage.className=ue["validation-message"],n.customClass&&n.customClass.validationMessage&&Qe(a.validationMessage,n.customClass.validationMessage),wt(a.validationMessage);const r=this.getInput();r&&(r.setAttribute("aria-invalid","true"),r.setAttribute("aria-describedby",ue["validation-message"]),hp(r),Qe(r,ue.inputerror))}function zp(){const t=nt.domCache.get(this);t.validationMessage&&Rt(t.validationMessage);const a=this.getInput();a&&(a.removeAttribute("aria-invalid"),a.removeAttribute("aria-describedby"),Gt(a,ue.inputerror))}const Aa={title:"",titleText:"",text:"",html:"",footer:"",icon:void 0,iconColor:void 0,iconHtml:void 0,template:void 0,toast:!1,draggable:!1,animation:!0,theme:"light",showClass:{popup:"swal2-show",backdrop:"swal2-backdrop-show",icon:"swal2-icon-show"},hideClass:{popup:"swal2-hide",backdrop:"swal2-backdrop-hide",icon:"swal2-icon-hide"},customClass:{},target:"body",color:void 0,backdrop:!0,heightAuto:!0,allowOutsideClick:!0,allowEscapeKey:!0,allowEnterKey:!0,stopKeydownPropagation:!0,keydownListenerCapture:!1,showConfirmButton:!0,showDenyButton:!1,showCancelButton:!1,preConfirm:void 0,preDeny:void 0,confirmButtonText:"OK",confirmButtonAriaLabel:"",confirmButtonColor:void 0,denyButtonText:"No",denyButtonAriaLabel:"",denyButtonColor:void 0,cancelButtonText:"Cancel",cancelButtonAriaLabel:"",cancelButtonColor:void 0,buttonsStyling:!0,reverseButtons:!1,focusConfirm:!0,focusDeny:!1,focusCancel:!1,returnFocus:!0,showCloseButton:!1,closeButtonHtml:"&times;",closeButtonAriaLabel:"Close this dialog",loaderHtml:"",showLoaderOnConfirm:!1,showLoaderOnDeny:!1,imageUrl:void 0,imageWidth:void 0,imageHeight:void 0,imageAlt:"",timer:void 0,timerProgressBar:!1,width:void 0,padding:void 0,background:void 0,input:void 0,inputPlaceholder:"",inputLabel:"",inputValue:"",inputOptions:{},inputAutoFocus:!0,inputAutoTrim:!0,inputAttributes:{},inputValidator:void 0,returnInputValueOnDeny:!1,validationMessage:void 0,grow:!1,position:"center",progressSteps:[],currentProgressStep:void 0,progressStepsDistance:void 0,willOpen:void 0,didOpen:void 0,didRender:void 0,willClose:void 0,didClose:void 0,didDestroy:void 0,scrollbarPadding:!0,topLayer:!1},a2=["allowEscapeKey","allowOutsideClick","background","buttonsStyling","cancelButtonAriaLabel","cancelButtonColor","cancelButtonText","closeButtonAriaLabel","closeButtonHtml","color","confirmButtonAriaLabel","confirmButtonColor","confirmButtonText","currentProgressStep","customClass","denyButtonAriaLabel","denyButtonColor","denyButtonText","didClose","didDestroy","draggable","footer","hideClass","html","icon","iconColor","iconHtml","imageAlt","imageHeight","imageUrl","imageWidth","preConfirm","preDeny","progressSteps","returnFocus","reverseButtons","showCancelButton","showCloseButton","showConfirmButton","showDenyButton","text","title","titleText","theme","willClose"],n2={allowEnterKey:void 0},s2=["allowOutsideClick","allowEnterKey","backdrop","draggable","focusConfirm","focusDeny","focusCancel","returnFocus","heightAuto","keydownListenerCapture"],qp=t=>Object.prototype.hasOwnProperty.call(Aa,t),Yp=t=>a2.indexOf(t)!==-1,Wp=t=>n2[t],r2=t=>{qp(t)||Pt(`Unknown parameter "${t}"`)},i2=t=>{s2.includes(t)&&Pt(`The parameter "${t}" is incompatible with toasts`)},o2=t=>{const a=Wp(t);a&&cp(t,a)},Vp=t=>{t.backdrop===!1&&t.allowOutsideClick&&Pt('"allowOutsideClick" parameter requires `backdrop` parameter to be set to `true`'),t.theme&&!["light","dark","auto","minimal","borderless","bootstrap-4","bootstrap-4-light","bootstrap-4-dark","bootstrap-5","bootstrap-5-light","bootstrap-5-dark","material-ui","material-ui-light","material-ui-dark","embed-iframe","bulma","bulma-light","bulma-dark"].includes(t.theme)&&Pt(`Invalid theme "${t.theme}"`);for(const a in t)r2(a),t.toast&&i2(a),o2(a)};function Hp(t){const a=Mt(),n=Xe(),r=nt.innerParams.get(this);if(!n||ha(n,r.hideClass.popup)){Pt("You're trying to update the closed or closing popup, that won't work. Use the update() method in preConfirm parameter or show a new popup.");return}const o=l2(t),l=Object.assign({},r,o);Vp(l),a&&(a.dataset.swal2Theme=l.theme),Cp(this,l),nt.innerParams.set(this,l),Object.defineProperties(this,{params:{value:Object.assign({},this.params,t),writable:!1,enumerable:!0}})}const l2=t=>{const a={};return Object.keys(t).forEach(n=>{if(Yp(n)){const r=t;a[n]=r[n]}else Pt(`Invalid parameter to update: ${n}`)}),a};function Kp(){var t;const a=nt.domCache.get(this),n=nt.innerParams.get(this);if(!n){Gp(this);return}a.popup&&Ee.swalCloseEventFinishedCallback&&(Ee.swalCloseEventFinishedCallback(),delete Ee.swalCloseEventFinishedCallback),typeof n.didDestroy=="function"&&n.didDestroy(),(t=Ee.eventEmitter)===null||t===void 0||t.emit("didDestroy"),d2(this)}const d2=t=>{Gp(t),delete t.params,delete Ee.keydownHandler,delete Ee.keydownTarget,delete Ee.currentInstance},Gp=t=>{t.isAwaitingPromise?(Ui(nt,t),t.isAwaitingPromise=!0):(Ui(vn,t),Ui(nt,t),delete t.isAwaitingPromise,delete t.disableButtons,delete t.enableButtons,delete t.getInput,delete t.disableInput,delete t.enableInput,delete t.hideLoading,delete t.disableLoading,delete t.showValidationMessage,delete t.resetValidationMessage,delete t.close,delete t.closePopup,delete t.closeModal,delete t.closeToast,delete t.rejectPromise,delete t.update,delete t._destroy)},Ui=(t,a)=>{for(const n in t)t[n].delete(a)};var c2=Object.freeze({__proto__:null,_destroy:Kp,close:_a,closeModal:_a,closePopup:_a,closeToast:_a,disableButtons:Bp,disableInput:Up,disableLoading:Dr,enableButtons:Fp,enableInput:Lp,getInput:Ep,handleAwaitingPromise:Ts,hideLoading:Dr,rejectPromise:Rp,resetValidationMessage:zp,showValidationMessage:Np,update:Hp});const u2=(t,a,n)=>{t.toast?p2(t,a,n):(h2(a),f2(a),g2(t,a,n))},p2=(t,a,n)=>{a.popup.onclick=()=>{t&&(m2(t)||t.timer||t.input)||n(Mn.close)}},m2=t=>!!(t.showConfirmButton||t.showDenyButton||t.showCancelButton||t.showCloseButton);let Tr=!1;const h2=t=>{t.popup.onmousedown=()=>{t.container.onmouseup=function(a){t.container.onmouseup=()=>{},a.target===t.container&&(Tr=!0)}}},f2=t=>{t.container.onmousedown=a=>{a.target===t.container&&a.preventDefault(),t.popup.onmouseup=function(n){t.popup.onmouseup=()=>{},(n.target===t.popup||n.target instanceof HTMLElement&&t.popup.contains(n.target))&&(Tr=!0)}}},g2=(t,a,n)=>{a.container.onclick=r=>{if(Tr){Tr=!1;return}r.target===a.container&&Gr(t.allowOutsideClick)&&n(Mn.backdrop)}},y2=t=>typeof t=="object"&&t!==null&&"jquery"in t,yc=t=>t instanceof Element||y2(t),x2=t=>{const a={};return typeof t[0]=="object"&&!yc(t[0])?Object.assign(a,t[0]):["title","html","icon"].forEach((n,r)=>{const o=t[r];typeof o=="string"||yc(o)?a[n]=o:o!==void 0&&Xa(`Unexpected type of ${n}! Expected "string" or "Element", got ${typeof o}`)}),a};function b2(...t){return new this(...t)}function j2(t){class a extends this{_main(r,o){return super._main(r,Object.assign({},t,o))}}return a}const S2=()=>Ee.timeout&&Ee.timeout.getTimerLeft(),Jp=()=>{if(Ee.timeout)return TC(),Ee.timeout.stop()},Qp=()=>{if(Ee.timeout){const t=Ee.timeout.start();return No(t),t}},w2=()=>{const t=Ee.timeout;return t&&(t.running?Jp():Qp())},v2=t=>{if(Ee.timeout){const a=Ee.timeout.increase(t);return No(a,!0),a}},C2=()=>!!(Ee.timeout&&Ee.timeout.isRunning());let xc=!1;const no={};function _2(t="data-swal-template"){no[t]=this,xc||(document.body.addEventListener("click",A2),xc=!0)}const A2=t=>{for(let a=t.target;a&&a!==document;a=a.parentNode)for(const n in no){const r=a.getAttribute&&a.getAttribute(n);if(r){no[n].fire({template:r});return}}};class D2{constructor(){this.events={}}_getHandlersByEventName(a){return typeof this.events[a]>"u"&&(this.events[a]=[]),this.events[a]}on(a,n){const r=this._getHandlersByEventName(a);r.includes(n)||r.push(n)}once(a,n){const r=(...o)=>{this.removeListener(a,r),n.apply(this,o)};this.on(a,r)}emit(a,...n){this._getHandlersByEventName(a).forEach(r=>{try{r.apply(this,n)}catch(o){console.error(o)}})}removeListener(a,n){const r=this._getHandlersByEventName(a),o=r.indexOf(n);o>-1&&r.splice(o,1)}removeAllListeners(a){this.events[a]!==void 0&&(this.events[a].length=0)}reset(){this.events={}}}Ee.eventEmitter=new D2;const T2=(t,a)=>{Ee.eventEmitter&&Ee.eventEmitter.on(t,a)},k2=(t,a)=>{Ee.eventEmitter&&Ee.eventEmitter.once(t,a)},R2=(t,a)=>{if(Ee.eventEmitter){if(!t){Ee.eventEmitter.reset();return}a?Ee.eventEmitter.removeListener(t,a):Ee.eventEmitter.removeAllListeners(t)}};var I2=Object.freeze({__proto__:null,argsToParams:x2,bindClickHandler:_2,clickCancel:y_,clickConfirm:_p,clickDeny:g_,enableLoading:Cn,fire:b2,getActions:_s,getCancelButton:In,getCloseButton:Fo,getConfirmButton:ia,getContainer:Mt,getDenyButton:Za,getFocusableElements:Bo,getFooter:mp,getHtmlContainer:Oo,getIcon:Rn,getIconContent:SC,getImage:pp,getInputLabel:wC,getLoader:Pn,getPopup:Xe,getProgressSteps:$o,getTimerLeft:S2,getTimerProgressBar:Qr,getTitle:up,getValidationMessage:Jr,increaseTimer:v2,isDeprecatedParameter:Wp,isLoading:CC,isTimerRunning:C2,isUpdatableParameter:Yp,isValidParameter:qp,isVisible:f_,mixin:j2,off:R2,on:T2,once:k2,resumeTimer:Qp,showLoading:Cn,stopTimer:Jp,toggleTimer:w2});class P2{constructor(a,n){this.callback=a,this.remaining=n,this.running=!1,this.start()}start(){return this.running||(this.running=!0,this.started=new Date,this.id=setTimeout(this.callback,this.remaining)),this.remaining}stop(){return this.started&&this.running&&(this.running=!1,clearTimeout(this.id),this.remaining-=new Date().getTime()-this.started.getTime()),this.remaining}increase(a){const n=this.running;return n&&this.stop(),this.remaining+=a,n&&this.start(),this.remaining}getTimerLeft(){return this.running&&(this.stop(),this.start()),this.remaining}isRunning(){return this.running}}const Xp=["swal-title","swal-html","swal-footer"],M2=t=>{const a=typeof t.template=="string"?document.querySelector(t.template):t.template;if(!a)return{};const n=a.content;return N2(n),Object.assign(E2(n),O2(n),$2(n),F2(n),B2(n),L2(n),U2(n,Xp))},E2=t=>{const a={};return Array.from(t.querySelectorAll("swal-param")).forEach(r=>{Ha(r,["name","value"]);const o=r.getAttribute("name"),l=r.getAttribute("value");!o||!l||(o in Aa&&typeof Aa[o]=="boolean"?a[o]=l!=="false":o in Aa&&typeof Aa[o]=="object"?a[o]=JSON.parse(l):a[o]=l)}),a},O2=t=>{const a={};return Array.from(t.querySelectorAll("swal-function-param")).forEach(r=>{const o=r.getAttribute("name"),l=r.getAttribute("value");!o||!l||(a[o]=new Function(`return ${l}`)())}),a},$2=t=>{const a={};return Array.from(t.querySelectorAll("swal-button")).forEach(r=>{Ha(r,["type","color","aria-label"]);const o=r.getAttribute("type");if(!o||!["confirm","cancel","deny"].includes(o))return;a[`${o}ButtonText`]=r.innerHTML,a[`show${Po(o)}Button`]=!0;const l=r.getAttribute("color");l!==null&&(a[`${o}ButtonColor`]=l);const d=r.getAttribute("aria-label");d!==null&&(a[`${o}ButtonAriaLabel`]=d)}),a},F2=t=>{const a={},n=t.querySelector("swal-image");if(n){Ha(n,["src","width","height","alt"]);const r=n.getAttribute("src");r!==null&&(a.imageUrl=r||void 0);const o=n.getAttribute("width");o!==null&&(a.imageWidth=o||void 0);const l=n.getAttribute("height");l!==null&&(a.imageHeight=l||void 0);const d=n.getAttribute("alt");d!==null&&(a.imageAlt=d||void 0)}return a},B2=t=>{const a={},n=t.querySelector("swal-icon");return n&&(Ha(n,["type","color"]),n.hasAttribute("type")&&(a.icon=n.getAttribute("type")),n.hasAttribute("color")&&(a.iconColor=n.getAttribute("color")),a.iconHtml=n.innerHTML),a},L2=t=>{const a={},n=t.querySelector("swal-input");n&&(Ha(n,["type","label","placeholder","value"]),a.input=n.getAttribute("type")||"text",n.hasAttribute("label")&&(a.inputLabel=n.getAttribute("label")),n.hasAttribute("placeholder")&&(a.inputPlaceholder=n.getAttribute("placeholder")),n.hasAttribute("value")&&(a.inputValue=n.getAttribute("value")));const r=Array.from(t.querySelectorAll("swal-input-option"));return r.length&&(a.inputOptions={},r.forEach(o=>{Ha(o,["value"]);const l=o.getAttribute("value");if(!l)return;const d=o.innerHTML;a.inputOptions[l]=d})),a},U2=(t,a)=>{const n={};for(const r in a){const o=a[r],l=t.querySelector(o);l&&(Ha(l,[]),n[o.replace(/^swal-/,"")]=l.innerHTML.trim())}return n},N2=t=>{const a=Xp.concat(["swal-param","swal-function-param","swal-button","swal-image","swal-icon","swal-input","swal-input-option"]);Array.from(t.children).forEach(n=>{const r=n.tagName.toLowerCase();a.includes(r)||Pt(`Unrecognized element <${r}>`)})},Ha=(t,a)=>{Array.from(t.attributes).forEach(n=>{a.indexOf(n.name)===-1&&Pt([`Unrecognized attribute "${n.name}" on <${t.tagName.toLowerCase()}>.`,`${a.length?`Allowed attributes are: ${a.join(", ")}`:"To set the value, use HTML within the element."}`])})},Zp=10,z2=t=>{var a,n;const r=Mt(),o=Xe();if(!r||!o)return;typeof t.willOpen=="function"&&t.willOpen(o),(a=Ee.eventEmitter)===null||a===void 0||a.emit("willOpen",o);const d=window.getComputedStyle(document.body).overflowY;if(W2(r,o,t),setTimeout(()=>{q2(r,o)},Zp),Lo()&&(Y2(r,t.scrollbarPadding!==void 0?t.scrollbarPadding:!1,d),__()),A_&&t.backdrop===!1&&o.scrollHeight>r.clientHeight&&(r.style.pointerEvents="auto"),!Xr()&&!Ee.previousActiveElement&&(Ee.previousActiveElement=document.activeElement),typeof t.didOpen=="function"){const c=t.didOpen;setTimeout(()=>c(o))}(n=Ee.eventEmitter)===null||n===void 0||n.emit("didOpen",o)},kr=t=>{const a=Xe();if(!a||t.target!==a)return;const n=Mt();n&&(a.removeEventListener("animationend",kr),a.removeEventListener("transitionend",kr),n.style.overflowY="auto",Gt(n,ue["no-transition"]))},q2=(t,a)=>{gp(a)?(t.style.overflowY="hidden",a.addEventListener("animationend",kr),a.addEventListener("transitionend",kr)):t.style.overflowY="auto"},Y2=(t,a,n)=>{D_(),a&&n!=="hidden"&&E_(n),setTimeout(()=>{t.scrollTop=0})},W2=(t,a,n)=>{var r;(r=n.showClass)!==null&&r!==void 0&&r.backdrop&&Qe(t,n.showClass.backdrop),n.animation?(a.style.setProperty("opacity","0","important"),wt(a,"grid"),setTimeout(()=>{var o;(o=n.showClass)!==null&&o!==void 0&&o.popup&&Qe(a,n.showClass.popup),a.style.removeProperty("opacity")},Zp)):wt(a,"grid"),Qe([document.documentElement,document.body],ue.shown),n.heightAuto&&n.backdrop&&!n.toast&&Qe([document.documentElement,document.body],ue["height-auto"])};var bc={email:(t,a)=>/^[a-zA-Z0-9.+_'-]+@[a-zA-Z0-9.-]+\.[a-zA-Z0-9-]+$/.test(t)?Promise.resolve():Promise.resolve(a||"Invalid email address"),url:(t,a)=>/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-z]{2,63}\b([-a-zA-Z0-9@:%_+.~#?&/=]*)$/.test(t)?Promise.resolve():Promise.resolve(a||"Invalid URL")};function V2(t){t.inputValidator||(t.input==="email"&&(t.inputValidator=bc.email),t.input==="url"&&(t.inputValidator=bc.url))}function H2(t){(!t.target||typeof t.target=="string"&&!document.querySelector(t.target)||typeof t.target!="string"&&!t.target.appendChild)&&(Pt('Target parameter is not valid, defaulting to "body"'),t.target="body")}function K2(t){V2(t),t.showLoaderOnConfirm&&!t.preConfirm&&Pt(`showLoaderOnConfirm is set to true, but preConfirm is not defined.
124
+ showLoaderOnConfirm should be used together with preConfirm, see usage example:
125
+ https://sweetalert2.github.io/#ajax-request`),H2(t),typeof t.title=="string"&&(t.title=t.title.split(`
126
+ `).join("<br />")),$C(t)}let sa;var Js=new WeakMap;class gt{constructor(...a){if(pC(this,Js,Promise.resolve({isConfirmed:!1,isDenied:!1,isDismissed:!0})),typeof window>"u")return;sa=this;const n=Object.freeze(this.constructor.argsToParams(a));this.params=n,this.isAwaitingPromise=!1,mC(Js,this,this._main(sa.params))}_main(a,n={}){if(Vp(Object.assign({},n,a)),Ee.currentInstance){const l=vn.swalPromiseResolve.get(Ee.currentInstance),{isAwaitingPromise:d}=Ee.currentInstance;Ee.currentInstance._destroy(),d||l({isDismissed:!0}),Lo()&&Tp()}Ee.currentInstance=sa;const r=J2(a,n);K2(r),Object.freeze(r),Ee.timeout&&(Ee.timeout.stop(),delete Ee.timeout),clearTimeout(Ee.restoreFocusTimeout);const o=Q2(sa);return Cp(sa,r),nt.innerParams.set(sa,r),G2(sa,o,r)}then(a){return dc(Js,this).then(a)}finally(a){return dc(Js,this).finally(a)}}const G2=(t,a,n)=>new Promise((r,o)=>{const l=d=>{t.close({isDismissed:!0,dismiss:d,isConfirmed:!1,isDenied:!1})};vn.swalPromiseResolve.set(t,r),vn.swalPromiseReject.set(t,o),a.confirmButton.onclick=()=>{Q_(t)},a.denyButton.onclick=()=>{X_(t)},a.cancelButton.onclick=()=>{Z_(t,l)},a.closeButton.onclick=()=>{l(Mn.close)},u2(n,a,l),x_(Ee,n,l),z_(t,n),z2(n),X2(Ee,n,l),Z2(a,n),setTimeout(()=>{a.container.scrollTop=0})}),J2=(t,a)=>{const n=M2(t),r=Object.assign({},Aa,a,n,t);return r.showClass=Object.assign({},Aa.showClass,r.showClass),r.hideClass=Object.assign({},Aa.hideClass,r.hideClass),r.animation===!1&&(r.showClass={backdrop:"swal2-noanimation"},r.hideClass={}),r},Q2=t=>{const a={popup:Xe(),container:Mt(),actions:_s(),confirmButton:ia(),denyButton:Za(),cancelButton:In(),loader:Pn(),closeButton:Fo(),validationMessage:Jr(),progressSteps:$o()};return nt.domCache.set(t,a),a},X2=(t,a,n)=>{const r=Qr();Rt(r),a.timer&&(t.timeout=new P2(()=>{n("timer"),delete t.timeout},a.timer),a.timerProgressBar&&r&&(wt(r),zt(r,a,"timerProgressBar"),setTimeout(()=>{t.timeout&&t.timeout.running&&No(a.timer)})))},Z2=(t,a)=>{if(!a.toast){if(!Gr(a.allowEnterKey)){cp("allowEnterKey","preConfirm: () => false"),t.popup.focus();return}eA(t)||tA(t,a)||to(-1,1)}},eA=t=>{const a=Array.from(t.popup.querySelectorAll("[autofocus]"));for(const n of a)if(n instanceof HTMLElement&&Bt(n))return n.focus(),!0;return!1},tA=(t,a)=>a.focusDeny&&Bt(t.denyButton)?(t.denyButton.focus(),!0):a.focusCancel&&Bt(t.cancelButton)?(t.cancelButton.focus(),!0):a.focusConfirm&&Bt(t.confirmButton)?(t.confirmButton.focus(),!0):!1;gt.prototype.disableButtons=Bp;gt.prototype.enableButtons=Fp;gt.prototype.getInput=Ep;gt.prototype.disableInput=Up;gt.prototype.enableInput=Lp;gt.prototype.hideLoading=Dr;gt.prototype.disableLoading=Dr;gt.prototype.showValidationMessage=Np;gt.prototype.resetValidationMessage=zp;gt.prototype.close=_a;gt.prototype.closePopup=_a;gt.prototype.closeModal=_a;gt.prototype.closeToast=_a;gt.prototype.rejectPromise=Rp;gt.prototype.update=Hp;gt.prototype._destroy=Kp;Object.assign(gt,I2);Object.keys(c2).forEach(t=>{gt[t]=function(...a){if(sa&&sa[t])return sa[t](...a)}});gt.DismissReason=Mn;gt.version="11.26.25";const Rr=gt;Rr.default=Rr;typeof document<"u"&&(function(t,a){var n=t.createElement("style");if(t.getElementsByTagName("head")[0].appendChild(n),n.styleSheet)n.styleSheet.disabled||(n.styleSheet.cssText=a);else try{n.innerHTML=a}catch{n.innerText=a}})(document,':root{--swal2-outline: 0 0 0 3px rgba(100, 150, 200, 0.5);--swal2-container-padding: 0.625em;--swal2-backdrop: rgba(0, 0, 0, 0.4);--swal2-backdrop-transition: background-color 0.15s;--swal2-width: 32em;--swal2-padding: 0 0 1.25em;--swal2-border: none;--swal2-border-radius: 0.3125rem;--swal2-background: white;--swal2-color: #545454;--swal2-show-animation: swal2-show 0.3s;--swal2-hide-animation: swal2-hide 0.15s forwards;--swal2-icon-zoom: 1;--swal2-title-padding: 0.8em 1em 0;--swal2-html-container-padding: 1em 1.6em 0.3em;--swal2-input-border: 1px solid #d9d9d9;--swal2-input-border-radius: 0.1875em;--swal2-input-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;--swal2-input-background: transparent;--swal2-input-transition: border-color 0.2s, box-shadow 0.2s;--swal2-input-hover-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px transparent;--swal2-input-focus-border: 1px solid #b4dbed;--swal2-input-focus-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06), 0 0 0 3px rgba(100, 150, 200, 0.5);--swal2-progress-step-background: #add8e6;--swal2-validation-message-background: #f0f0f0;--swal2-validation-message-color: #666;--swal2-footer-border-color: #eee;--swal2-footer-background: transparent;--swal2-footer-color: inherit;--swal2-timer-progress-bar-background: rgba(0, 0, 0, 0.3);--swal2-close-button-position: initial;--swal2-close-button-inset: auto;--swal2-close-button-font-size: 2.5em;--swal2-close-button-color: #ccc;--swal2-close-button-transition: color 0.2s, box-shadow 0.2s;--swal2-close-button-outline: initial;--swal2-close-button-box-shadow: inset 0 0 0 3px transparent;--swal2-close-button-focus-box-shadow: inset var(--swal2-outline);--swal2-close-button-hover-transform: none;--swal2-actions-justify-content: center;--swal2-actions-width: auto;--swal2-actions-margin: 1.25em auto 0;--swal2-actions-padding: 0;--swal2-actions-border-radius: 0;--swal2-actions-background: transparent;--swal2-action-button-transition: background-color 0.2s, box-shadow 0.2s;--swal2-action-button-hover: black 10%;--swal2-action-button-active: black 10%;--swal2-confirm-button-box-shadow: none;--swal2-confirm-button-border-radius: 0.25em;--swal2-confirm-button-background-color: #7066e0;--swal2-confirm-button-color: #fff;--swal2-deny-button-box-shadow: none;--swal2-deny-button-border-radius: 0.25em;--swal2-deny-button-background-color: #dc3741;--swal2-deny-button-color: #fff;--swal2-cancel-button-box-shadow: none;--swal2-cancel-button-border-radius: 0.25em;--swal2-cancel-button-background-color: #6e7881;--swal2-cancel-button-color: #fff;--swal2-toast-show-animation: swal2-toast-show 0.5s;--swal2-toast-hide-animation: swal2-toast-hide 0.1s forwards;--swal2-toast-border: none;--swal2-toast-box-shadow: 0 0 1px hsl(0deg 0% 0% / 0.075), 0 1px 2px hsl(0deg 0% 0% / 0.075), 1px 2px 4px hsl(0deg 0% 0% / 0.075), 1px 3px 8px hsl(0deg 0% 0% / 0.075), 2px 4px 16px hsl(0deg 0% 0% / 0.075)}[data-swal2-theme=dark]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, 0.7)}@media(prefers-color-scheme: dark){[data-swal2-theme=auto]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, 0.7)}}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto !important}body.swal2-no-backdrop .swal2-container{background-color:rgba(0,0,0,0) !important;pointer-events:none}body.swal2-no-backdrop .swal2-container .swal2-popup{pointer-events:auto}body.swal2-no-backdrop .swal2-container .swal2-modal{box-shadow:0 0 10px var(--swal2-backdrop)}body.swal2-toast-shown .swal2-container{box-sizing:border-box;width:360px;max-width:100%;background-color:rgba(0,0,0,0);pointer-events:none}body.swal2-toast-shown .swal2-container.swal2-top{inset:0 auto auto 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{inset:0 0 auto auto}body.swal2-toast-shown .swal2-container.swal2-top-start,body.swal2-toast-shown .swal2-container.swal2-top-left{inset:0 auto auto 0}body.swal2-toast-shown .swal2-container.swal2-center-start,body.swal2-toast-shown .swal2-container.swal2-center-left{inset:50% auto auto 0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{inset:50% auto auto 50%;transform:translate(-50%, -50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{inset:50% 0 auto auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-start,body.swal2-toast-shown .swal2-container.swal2-bottom-left{inset:auto auto 0 0}body.swal2-toast-shown .swal2-container.swal2-bottom{inset:auto auto 0 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{inset:auto 0 0 auto}@media print{body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow-y:scroll !important}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown) .swal2-container{position:static !important}}div:where(.swal2-container){display:grid;position:fixed;z-index:1060;inset:0;box-sizing:border-box;grid-template-areas:"top-start top top-end" "center-start center center-end" "bottom-start bottom-center bottom-end";grid-template-rows:minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);height:100%;padding:var(--swal2-container-padding);overflow-x:hidden;transition:var(--swal2-backdrop-transition);-webkit-overflow-scrolling:touch}div:where(.swal2-container).swal2-backdrop-show,div:where(.swal2-container).swal2-noanimation{background:var(--swal2-backdrop)}div:where(.swal2-container).swal2-backdrop-hide{background:rgba(0,0,0,0) !important}div:where(.swal2-container).swal2-top-start,div:where(.swal2-container).swal2-center-start,div:where(.swal2-container).swal2-bottom-start{grid-template-columns:minmax(0, 1fr) auto auto}div:where(.swal2-container).swal2-top,div:where(.swal2-container).swal2-center,div:where(.swal2-container).swal2-bottom{grid-template-columns:auto minmax(0, 1fr) auto}div:where(.swal2-container).swal2-top-end,div:where(.swal2-container).swal2-center-end,div:where(.swal2-container).swal2-bottom-end{grid-template-columns:auto auto minmax(0, 1fr)}div:where(.swal2-container).swal2-top-start>.swal2-popup{align-self:start}div:where(.swal2-container).swal2-top>.swal2-popup{grid-column:2;place-self:start center}div:where(.swal2-container).swal2-top-end>.swal2-popup,div:where(.swal2-container).swal2-top-right>.swal2-popup{grid-column:3;place-self:start end}div:where(.swal2-container).swal2-center-start>.swal2-popup,div:where(.swal2-container).swal2-center-left>.swal2-popup{grid-row:2;align-self:center}div:where(.swal2-container).swal2-center>.swal2-popup{grid-column:2;grid-row:2;place-self:center center}div:where(.swal2-container).swal2-center-end>.swal2-popup,div:where(.swal2-container).swal2-center-right>.swal2-popup{grid-column:3;grid-row:2;place-self:center end}div:where(.swal2-container).swal2-bottom-start>.swal2-popup,div:where(.swal2-container).swal2-bottom-left>.swal2-popup{grid-column:1;grid-row:3;align-self:end}div:where(.swal2-container).swal2-bottom>.swal2-popup{grid-column:2;grid-row:3;place-self:end center}div:where(.swal2-container).swal2-bottom-end>.swal2-popup,div:where(.swal2-container).swal2-bottom-right>.swal2-popup{grid-column:3;grid-row:3;place-self:end end}div:where(.swal2-container).swal2-grow-row>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-column:1/4;width:100%}div:where(.swal2-container).swal2-grow-column>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-row:1/4;align-self:stretch}div:where(.swal2-container).swal2-no-transition{transition:none !important}div:where(.swal2-container)[popover]{width:auto;border:0}div:where(.swal2-container) div:where(.swal2-popup){display:none;position:relative;box-sizing:border-box;grid-template-columns:minmax(0, 100%);width:var(--swal2-width);max-width:100%;padding:var(--swal2-padding);border:var(--swal2-border);border-radius:var(--swal2-border-radius);background:var(--swal2-background);color:var(--swal2-color);font-family:inherit;font-size:1rem}div:where(.swal2-container) div:where(.swal2-popup):focus{outline:none}div:where(.swal2-container) div:where(.swal2-popup).swal2-loading{overflow-y:hidden}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable{cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable div:where(.swal2-icon){cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging{cursor:grabbing}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging div:where(.swal2-icon){cursor:grabbing}div:where(.swal2-container) h2:where(.swal2-title){position:relative;max-width:100%;margin:0;padding:var(--swal2-title-padding);color:inherit;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;overflow-wrap:break-word;cursor:initial}div:where(.swal2-container) div:where(.swal2-actions){display:flex;z-index:1;box-sizing:border-box;flex-wrap:wrap;align-items:center;justify-content:var(--swal2-actions-justify-content);width:var(--swal2-actions-width);margin:var(--swal2-actions-margin);padding:var(--swal2-actions-padding);border-radius:var(--swal2-actions-border-radius);background:var(--swal2-actions-background)}div:where(.swal2-container) div:where(.swal2-loader){display:none;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin:0 1.875em;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border-width:.25em;border-style:solid;border-radius:100%;border-color:#2778c4 rgba(0,0,0,0) #2778c4 rgba(0,0,0,0)}div:where(.swal2-container) button:where(.swal2-styled){margin:.3125em;padding:.625em 1.1em;transition:var(--swal2-action-button-transition);border:none;box-shadow:0 0 0 3px rgba(0,0,0,0);font-weight:500}div:where(.swal2-container) button:where(.swal2-styled):not([disabled]){cursor:pointer}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm){border-radius:var(--swal2-confirm-button-border-radius);background:initial;background-color:var(--swal2-confirm-button-background-color);box-shadow:var(--swal2-confirm-button-box-shadow);color:var(--swal2-confirm-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):hover{background-color:color-mix(in srgb, var(--swal2-confirm-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):active{background-color:color-mix(in srgb, var(--swal2-confirm-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny){border-radius:var(--swal2-deny-button-border-radius);background:initial;background-color:var(--swal2-deny-button-background-color);box-shadow:var(--swal2-deny-button-box-shadow);color:var(--swal2-deny-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):hover{background-color:color-mix(in srgb, var(--swal2-deny-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):active{background-color:color-mix(in srgb, var(--swal2-deny-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel){border-radius:var(--swal2-cancel-button-border-radius);background:initial;background-color:var(--swal2-cancel-button-background-color);box-shadow:var(--swal2-cancel-button-box-shadow);color:var(--swal2-cancel-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):hover{background-color:color-mix(in srgb, var(--swal2-cancel-button-background-color), var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):active{background-color:color-mix(in srgb, var(--swal2-cancel-button-background-color), var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):focus-visible{outline:none;box-shadow:var(--swal2-action-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-styled)[disabled]:not(.swal2-loading){opacity:.4}div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-footer){margin:1em 0 0;padding:1em 1em 0;border-top:1px solid var(--swal2-footer-border-color);background:var(--swal2-footer-background);color:var(--swal2-footer-color);font-size:1em;text-align:center;cursor:initial}div:where(.swal2-container) .swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;grid-column:auto !important;overflow:hidden;border-bottom-right-radius:var(--swal2-border-radius);border-bottom-left-radius:var(--swal2-border-radius)}div:where(.swal2-container) div:where(.swal2-timer-progress-bar){width:100%;height:.25em;background:var(--swal2-timer-progress-bar-background)}div:where(.swal2-container) img:where(.swal2-image){max-width:100%;margin:2em auto 1em;cursor:initial}div:where(.swal2-container) button:where(.swal2-close){position:var(--swal2-close-button-position);inset:var(--swal2-close-button-inset);z-index:2;align-items:center;justify-content:center;width:1.2em;height:1.2em;margin-top:0;margin-right:0;margin-bottom:-1.2em;padding:0;overflow:hidden;transition:var(--swal2-close-button-transition);border:none;border-radius:var(--swal2-border-radius);outline:var(--swal2-close-button-outline);background:rgba(0,0,0,0);color:var(--swal2-close-button-color);font-family:monospace;font-size:var(--swal2-close-button-font-size);cursor:pointer;justify-self:end}div:where(.swal2-container) button:where(.swal2-close):hover{transform:var(--swal2-close-button-hover-transform);background:rgba(0,0,0,0);color:#f27474}div:where(.swal2-container) button:where(.swal2-close):focus-visible{outline:none;box-shadow:var(--swal2-close-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-html-container){z-index:1;justify-content:center;margin:0;padding:var(--swal2-html-container-padding);overflow:auto;color:inherit;font-size:1.125em;font-weight:normal;line-height:normal;text-align:center;overflow-wrap:break-word;word-break:break-word;cursor:initial}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea),div:where(.swal2-container) select:where(.swal2-select),div:where(.swal2-container) div:where(.swal2-radio),div:where(.swal2-container) label:where(.swal2-checkbox){margin:1em 2em 3px}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea){box-sizing:border-box;width:auto;transition:var(--swal2-input-transition);border:var(--swal2-input-border);border-radius:var(--swal2-input-border-radius);background:var(--swal2-input-background);box-shadow:var(--swal2-input-box-shadow);color:inherit;font-size:1.125em}div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror{border-color:#f27474 !important;box-shadow:0 0 2px #f27474 !important}div:where(.swal2-container) input:where(.swal2-input):hover,div:where(.swal2-container) input:where(.swal2-file):hover,div:where(.swal2-container) textarea:where(.swal2-textarea):hover{box-shadow:var(--swal2-input-hover-box-shadow)}div:where(.swal2-container) input:where(.swal2-input):focus,div:where(.swal2-container) input:where(.swal2-file):focus,div:where(.swal2-container) textarea:where(.swal2-textarea):focus{border:var(--swal2-input-focus-border);outline:none;box-shadow:var(--swal2-input-focus-box-shadow)}div:where(.swal2-container) input:where(.swal2-input)::placeholder,div:where(.swal2-container) input:where(.swal2-file)::placeholder,div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder{color:#ccc}div:where(.swal2-container) .swal2-range{margin:1em 2em 3px;background:var(--swal2-background)}div:where(.swal2-container) .swal2-range input{width:80%}div:where(.swal2-container) .swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}div:where(.swal2-container) .swal2-range input,div:where(.swal2-container) .swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}div:where(.swal2-container) .swal2-input{height:2.625em;padding:0 .75em}div:where(.swal2-container) .swal2-file{width:75%;margin-right:auto;margin-left:auto;background:var(--swal2-input-background);font-size:1.125em}div:where(.swal2-container) .swal2-textarea{height:6.75em;padding:.75em}div:where(.swal2-container) .swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:var(--swal2-input-background);color:inherit;font-size:1.125em}div:where(.swal2-container) .swal2-radio,div:where(.swal2-container) .swal2-checkbox{align-items:center;justify-content:center;background:var(--swal2-background);color:inherit}div:where(.swal2-container) .swal2-radio label,div:where(.swal2-container) .swal2-checkbox label{margin:0 .6em;font-size:1.125em}div:where(.swal2-container) .swal2-radio input,div:where(.swal2-container) .swal2-checkbox input{flex-shrink:0;margin:0 .4em}div:where(.swal2-container) label:where(.swal2-input-label){display:flex;justify-content:center;margin:1em auto 0}div:where(.swal2-container) div:where(.swal2-validation-message){align-items:center;justify-content:center;margin:1em 0 0;padding:.625em;overflow:hidden;background:var(--swal2-validation-message-background);color:var(--swal2-validation-message-color);font-size:1em;font-weight:300}div:where(.swal2-container) div:where(.swal2-validation-message)::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}div:where(.swal2-container) .swal2-progress-steps{flex-wrap:wrap;align-items:center;max-width:100%;margin:1.25em auto;padding:0;background:rgba(0,0,0,0);font-weight:600}div:where(.swal2-container) .swal2-progress-steps li{display:inline-block;position:relative}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step{z-index:20;flex-shrink:0;width:2em;height:2em;border-radius:2em;background:#2778c4;color:#fff;line-height:2em;text-align:center}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#2778c4}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:var(--swal2-progress-step-background);color:#fff}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:var(--swal2-progress-step-background)}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line{z-index:10;flex-shrink:0;width:2.5em;height:.4em;margin:0 -1px;background:#2778c4}div:where(.swal2-icon){position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:2.5em auto .6em;zoom:var(--swal2-icon-zoom);border:.25em solid rgba(0,0,0,0);border-radius:50%;border-color:#000;font-family:inherit;line-height:5em;cursor:default;user-select:none}div:where(.swal2-icon) .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}div:where(.swal2-icon).swal2-error{border-color:#f27474;color:#f27474}div:where(.swal2-icon).swal2-error .swal2-x-mark{position:relative;flex-grow:1}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-error.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark{animation:swal2-animate-error-x-mark .5s}div:where(.swal2-icon).swal2-warning{border-color:#f8bb86;color:#f8bb86}div:where(.swal2-icon).swal2-warning.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .5s}div:where(.swal2-icon).swal2-info{border-color:#3fc3ee;color:#3fc3ee}div:where(.swal2-icon).swal2-info.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .8s}div:where(.swal2-icon).swal2-question{border-color:#87adbd;color:#87adbd}div:where(.swal2-icon).swal2-question.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content{animation:swal2-animate-question-mark .8s}div:where(.swal2-icon).swal2-success{border-color:#a5dc86;color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;border-radius:50%}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}div:where(.swal2-icon).swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-0.25em;left:-0.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}div:where(.swal2-icon).swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-animate-success-line-tip .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-animate-success-line-long .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right{animation:swal2-rotate-success-circular-line 4.25s ease-in}[class^=swal2]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.swal2-show{animation:var(--swal2-show-animation)}.swal2-hide{animation:var(--swal2-hide-animation)}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{margin-right:initial;margin-left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}.swal2-toast{box-sizing:border-box;grid-column:1/4 !important;grid-row:1/4 !important;grid-template-columns:min-content auto min-content;padding:1em;overflow-y:hidden;border:var(--swal2-toast-border);background:var(--swal2-background);box-shadow:var(--swal2-toast-box-shadow);pointer-events:auto}.swal2-toast>*{grid-column:2}.swal2-toast h2:where(.swal2-title){margin:.5em 1em;padding:0;font-size:1em;text-align:initial}.swal2-toast .swal2-loading{justify-content:center}.swal2-toast input:where(.swal2-input){height:2em;margin:.5em;font-size:1em}.swal2-toast .swal2-validation-message{font-size:1em}.swal2-toast div:where(.swal2-footer){margin:.5em 0 0;padding:.5em 0 0;font-size:.8em}.swal2-toast button:where(.swal2-close){grid-column:3/3;grid-row:1/99;align-self:center;width:.8em;height:.8em;margin:0;font-size:2em}.swal2-toast div:where(.swal2-html-container){margin:.5em 1em;padding:0;overflow:initial;font-size:1em;text-align:initial}.swal2-toast div:where(.swal2-html-container):empty{padding:0}.swal2-toast .swal2-loader{grid-column:1;grid-row:1/99;align-self:center;width:2em;height:2em;margin:.25em}.swal2-toast .swal2-icon{grid-column:1;grid-row:1/99;align-self:center;width:2em;min-width:2em;height:2em;margin:0 .5em 0 0}.swal2-toast .swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:1.8em;font-weight:bold}.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{top:.875em;width:1.375em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:.3125em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:.3125em}.swal2-toast div:where(.swal2-actions){justify-content:flex-start;height:auto;margin:0;margin-top:.5em;padding:0 .5em}.swal2-toast button:where(.swal2-styled){margin:.25em .5em;padding:.4em .6em;font-size:1em}.swal2-toast .swal2-success{border-color:#a5dc86}.swal2-toast .swal2-success [class^=swal2-success-circular-line]{position:absolute;width:1.6em;height:3em;border-radius:50%}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.8em;left:-0.5em;transform:rotate(-45deg);transform-origin:2em 2em;border-radius:4em 0 0 4em}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.25em;left:.9375em;transform-origin:0 1.5em;border-radius:0 4em 4em 0}.swal2-toast .swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-success .swal2-success-fix{top:0;left:.4375em;width:.4375em;height:2.6875em}.swal2-toast .swal2-success [class^=swal2-success-line]{height:.3125em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{top:1.125em;left:.1875em;width:.75em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{top:.9375em;right:.1875em;width:1.375em}.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-toast-animate-success-line-tip .75s}.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-toast-animate-success-line-long .75s}.swal2-toast.swal2-show{animation:var(--swal2-toast-show-animation)}.swal2-toast.swal2-hide{animation:var(--swal2-toast-hide-animation)}@keyframes swal2-show{0%{transform:translate3d(0, -50px, 0) scale(0.9);opacity:0}100%{transform:translate3d(0, 0, 0) scale(1);opacity:1}}@keyframes swal2-hide{0%{transform:translate3d(0, 0, 0) scale(1);opacity:1}100%{transform:translate3d(0, -50px, 0) scale(0.9);opacity:0}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-0.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(0.4);opacity:0}50%{margin-top:1.625em;transform:scale(0.4);opacity:0}80%{margin-top:-0.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0deg);opacity:1}}@keyframes swal2-rotate-loading{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes swal2-animate-question-mark{0%{transform:rotateY(-360deg)}100%{transform:rotateY(0)}}@keyframes swal2-animate-i-mark{0%{transform:rotateZ(45deg);opacity:0}25%{transform:rotateZ(-25deg);opacity:.4}50%{transform:rotateZ(15deg);opacity:.8}75%{transform:rotateZ(-5deg);opacity:1}100%{transform:rotateX(0);opacity:1}}@keyframes swal2-toast-show{0%{transform:translateY(-0.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(0.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0deg)}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-0.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}');function aA({token:t}){const[a,n]=i.useState(!0),{data:r,isLoading:o}=q(t!=null?[We.admitCardSetting.get,t]:null,([h,f])=>Y(h,f)),l=r?.data?.[0],d=async h=>{h.preventDefault();const f=new FormData(h.target);["subject_show","room_no","roll_no_convert","student_photo","student_address","ic_signature","invigilator_signature"].forEach(m=>{f.get(m)?f.set(m,1):f.append(m,0)});try{(await Ze(We.admitCardSetting.update,f,t))?.data?.Status==="Success"&&c()}catch{}},c=()=>{Rr.fire({icon:"success",title:"Successfully Updated",showConfirmButton:!1,timer:2e3})};return o?e.jsx(s.Spin,{}):e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Grid,{container:!0,spacing:6,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Admit Card Setting"})}),e.jsx(w,{p:3,children:e.jsx(s.Form,{layout:"vertical",onFinish:d,children:e.jsxs(s.Grid,{container:!0,spacing:2,style:{marginTop:8},children:[e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,md:4,children:e.jsx(s.Typography.Text,{style:{fontSize:"14px",fontWeight:"bold",display:"block"},children:"Subject Show"})}),e.jsx(s.Grid,{item:!0,md:8,children:e.jsxs(s.Form.Item,{name:"subject_show",valuePropName:"checked",rules:[{required:!1}],children:[e.jsx(s.Switch,{defaultChecked:l?.subject_show==1}),e.jsx("label",{style:{marginLeft:"5px"},children:"Show Subject List in Admit Card"})]})})]})}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,md:4,children:e.jsx(s.Typography.Text,{style:{fontSize:"14px",fontWeight:"bold",display:"block"},children:"Room No"})}),e.jsx(s.Grid,{item:!0,md:8,children:e.jsxs(s.Form.Item,{name:"room_no",valuePropName:"checked",children:[e.jsx(s.Switch,{defaultChecked:l?.room_no==1}),e.jsx("label",{style:{marginLeft:"5px"},children:"Show Room No in Admit Card"})]})})]})}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,md:4,children:e.jsx(s.Typography.Text,{style:{fontSize:"14px",fontWeight:"bold",display:"block"},children:"Roll No"})}),e.jsx(s.Grid,{item:!0,md:8,children:e.jsxs(s.Form.Item,{name:"roll_no_convert",valuePropName:"checked",children:[e.jsx(s.Switch,{defaultChecked:l?.roll_no_convert==1}),e.jsx("label",{style:{marginLeft:"5px"},children:"Show Roll No in Admit Card"})]})})]})}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,md:4,children:e.jsx(s.Typography.Text,{style:{fontSize:"14px",fontWeight:"bold",display:"block"},children:"Student Photo"})}),e.jsx(s.Grid,{item:!0,md:8,children:e.jsxs(s.Form.Item,{name:"student_photo",valuePropName:"checked",children:[e.jsx(s.Switch,{defaultChecked:l?.student_photo==1}),e.jsx("label",{style:{marginLeft:"5px"},children:"Show Student Photo in Admit Card"})]})})]})}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,md:4,children:e.jsx(s.Typography.Text,{style:{fontSize:"14px",fontWeight:"bold",display:"block"},children:"Student Address"})}),e.jsx(s.Grid,{item:!0,md:8,children:e.jsxs(s.Form.Item,{name:"student_address",valuePropName:"checked",children:[e.jsx(s.Switch,{defaultChecked:l?.student_address==1}),e.jsx("label",{style:{marginLeft:"5px"},children:"Show Student Address in Admit Card"})]})})]})}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,md:4,children:e.jsx(s.Typography.Text,{style:{fontSize:"14px",fontWeight:"bold",display:"block"},children:"IC Signature"})}),e.jsx(s.Grid,{item:!0,md:8,children:e.jsxs(s.Form.Item,{name:"ic_signature",valuePropName:"checked",children:[e.jsx(s.Switch,{defaultChecked:l?.ic_signature==1}),e.jsx("label",{style:{marginLeft:"5px"},children:"Show IC Signature in Admit Card"})]})})]})}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,md:4,children:e.jsx(s.Typography.Text,{style:{fontSize:"14px",fontWeight:"bold",display:"block"},children:"Invigilator Signature"})}),e.jsx(s.Grid,{item:!0,md:8,children:e.jsxs(s.Form.Item,{name:"invigilator_signature",valuePropName:"checked",children:[e.jsx(s.Switch,{defaultChecked:l?.invigilator_signature==1}),e.jsx("label",{style:{marginLeft:"5px"},children:"Show Invigilator Signature in Admit Card"})]})})]})}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsx(de,{type:"submit",value:"Update",color:"primary"})})]})})})]})})})]})}function nA({token:t}){return e.jsx(aA,{token:t})}function sA({token:t}){const[a,n]=i.useState(!1),[r,o]=i.useState(null),[l,d]=i.useState(1),[c,h]=i.useState(!1),[f,p]=i.useState(!1),[m,v]=i.useState({pagination:{current:1,pageSize:2}}),[S,y]=i.useState(null),[g,b]=i.useState(!1),[T,R]=i.useState(null),[I,A]=i.useState([]),{fetchAllPagesWithProgress:_,isMutating:u}=usePaginatedFetcher(),[x,j]=i.useState(!1),[M,O]=i.useState({current:0,total:1}),[z,k]=i.useState(""),{isLoading:F,data:C}=q(t!=null?[oa,t]:null,([te,se])=>Y(te,se)),[E,P]=i.useState({exam_id:""}),{isLoading:U,errorExam:H,data:W}=q(r,Y),{TextArea:L}=s.Input,{isLoading:B,error:$,data:N,mutate:V}=q(S!=null&&t!=null?[`${S}&page=${m.pagination.current}&per_page=${m.pagination.pageSize}`,t]:null,([te,se])=>Y(te,se),{onSuccess:te=>{const se=Array.isArray(te?.data)?te.data:[];A(se)}}),{data:Q}=q(t!=null?["/branchapi/GeneralSettings/getassign_templete",t]:null,([te,se])=>Y(te,se)),Z=(te,se)=>{if(se==="class_id"){n(`${la}?class_id=${te.value}`),o(`${We.examDropdownUrl}?class_id=${te.value}`),h(Ce=>!Ce),b(Ce=>!Ce);const le=Q?.data?.find(Ce=>Ce.class_id===te.value);d(le?.ui_id||1)}},{isLoading:J,data:K}=q(a,Y),X=async te=>{te.preventDefault(),y(`${We.studentMarklistBulk}?class_id=${te.target.class_id.value}&section_id=${te.target.section_id.value}&exam_id=${te.target.exam_id.value}`),d(te.target.template.value),k(te.target.exam_id.value),P(se=>({...se,exam_id:te.target.exam_id.value})),f||p(!0),te.target.reset()};i.useRef(null);const ee=Math.round(M.current/M.total*100),pe=async()=>{j(!0),R(null),O({current:0,total:Number(I.length)});const te=await _(I,z,(se,le)=>{O({current:se,total:le})});R(te),j(!1)};return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Grid,{container:!0,spacing:4,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Student Result"})}),e.jsx(w,{p:3,children:e.jsxs(s.Grid,{container:!0,spacing:3,children:[e.jsx(s.Grid,{item:!0,xs:12,children:e.jsx("form",{onSubmit:X,children:e.jsxs(s.Grid,{container:!0,spacing:3,children:[e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(ae,{required:!0,options:Array.isArray(C)?C:[],closeMenuOnSelect:!0,label:"Class",name:"class_id",onChange:te=>Z(te,"class_id"),allowSelectAll:!1})}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(ae,{options:Array.isArray(K)?K:[],closeMenuOnSelect:!0,label:"Section",name:"section_id",allowSelectAll:!1},`section1${c}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(ae,{options:Array.isArray(W)?W:[],closeMenuOnSelect:!0,label:"Exam",name:"exam_id",onChange:te=>{Z(te,"exam_id"),k(te.value)},allowSelectAll:!1},`exam1${g}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(s.Select,{defaultValue:l,style:{width:"100%"},onChange:te=>d(te),options:[{value:1,label:"Template 1"},{value:2,label:"Template 2"},{value:3,label:"Template 3"},{value:4,label:"Template 4"},{value:5,label:"Template 5"},{value:6,label:"Template 6"},{value:7,label:"Template 7"},{value:8,label:"Template 8"},{value:9,label:"Template 9"},{value:10,label:"Template 10"},{value:11,label:"Template 11"},{value:12,label:"Template 12"},{value:13,label:"Template 13"},{value:14,label:"Template 14"},{value:15,label:"Template 15"}]})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})})}),f&&e.jsxs(s.Grid,{item:!0,xs:12,style:{marginTop:16},children:[e.jsx(s.Button,{type:"primary",onClick:pe,loading:x,children:"Generate Report Cards"}),x&&e.jsx(s.Spin,{tip:`Generating... ${ee}%`,style:{marginLeft:16}})]}),f&&e.jsx(s.Grid,{item:!0,xs:12,style:{borderTop:"1px solid #ececec",borderTopWidth:"2px",marginTop:16},children:e.jsx(s.Table,{columns:[{title:"SL",dataIndex:"Sl_no",align:"center"},{title:"Student Name",dataIndex:"firstname",align:"center"},{title:"Full Marks",dataIndex:"full_marks",align:"center"},{title:"Marks Obtained",dataIndex:"marks_obtained",align:"center"},{title:"Percentage",dataIndex:"percentage",align:"center"},{title:"Attendance",dataIndex:"attendance",align:"center"}],dataSource:I,rowKey:"id",pagination:!1,bordered:!0,size:"small",loading:B})})]})})]})})})]})}function rA({token:t}){return e.jsx(sA,{token:t})}function iA({token:t}){const[a,n]=i.useState({page:0,rowsPerPage:1e3}),{isLoading:r,error:o,data:l,mutate:d}=q(t!=null?[We.examDropdown,t]:null,([c,h])=>Y(c,h));return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Grid,{container:!0,spacing:6,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Exam Dashboard"})}),e.jsx(w,{p:3,children:e.jsx(s.Table,{size:"small",bordered:!0,rowKey:"id",dataSource:l?.data??[],pagination:!1,loading:r})})]})})})]})}function oA({token:t}){return e.jsx(iA,{token:t})}function lA({token:t}){const n=new URLSearchParams(window.location.search).get("id"),r=i.useRef(!1),[o,l]=i.useState(null),[d,c]=i.useState([]),[h,f]=i.useState(!1),{data:p,isLoading:m,mutate:v}=q(t!=null&&n?[`${We.examSchedule.getById}?id=${n}`,t]:null,([u,x])=>Y(u,x)),{data:S}=q(t!=null?[We.examType.dropdown,t]:null,([u,x])=>Y(u,x)),{data:y}=q(t!=null&&o?[o,t]:null,([u,x])=>Y(u,x)),[g,b]=i.useState({exam_name:"",classes_id:"",section_id:"",exam_type:"",start_date:"",end_date:"",class_name:"",schedule:[]});i.useEffect(()=>{if(!p?.data?.length||r.current)return;r.current=!0;const u=p.data,x=u.map(j=>({subject:j.subjects_id??"",classes_id:j.classes_id??"",fk_section_id:j.fk_section_id??"",date:j.date_of_exam??"",start_time:j.start_to??"09:00",end_time:j.end_from??"10:00",full_marks:j.paper_type==="Theory"?j.full_marks:j.practical_full_marks??"",passing_marks:j.paper_type==="Theory"?j.passing_marks:j.practical_pass_marks??"",paper_type:j.paper_type??"",row_type:"old"}));b({exam_name:u[0].name,classes_id:u[0].classes_id,section_id:u[0].fk_section_id,exam_type:u[0].exam_type_id,start_date:u[0].start_date,end_date:u[0].end_date,class_name:u[0].class,schedule:x}),u[0].classes_id&&l(`${Fr}?class_id=${u[0].classes_id}`),f(!0)},[p]);const T=(u,x,j)=>{b(M=>{const O=[...M.schedule];return O[u][x]=j,{...M,schedule:O}})},R=(u,x)=>{if(g.schedule.some((M,O)=>M.subject===x.value&&O!==u)){s.notification.error({message:"Error",description:"Subject already exists in schedule!"});return}c(M=>M.filter(O=>O!==x.value)),x.is_theory==="yes"&&x.is_practical==="yes"&&b(M=>({...M,schedule:[...M.schedule,{subject:x.value,date:M.start_date,start_time:"09:00",end_time:"10:00",full_marks:"",passing_marks:"",paper_type:"Practical",row_type:"new"}]})),T(u,"subject",x.value),T(u,"paper_type",x.is_theory==="yes"?"Theory":"Practical")},I=()=>{b(u=>({...u,schedule:[...u.schedule,{subject:"",date:u.start_date,start_time:"09:00",end_time:"10:00",full_marks:"",passing_marks:"",paper_type:"",row_type:"new"}]}))},A=u=>{const x=g.schedule[u].subject;g.schedule[u].row_type==="old"&&c(j=>[...j,x]),b(j=>{const M=j.schedule.filter(O=>O.subject!==x);return{...j,schedule:M}})},_=async u=>{u.preventDefault();const x={id:n,exam_name:g.exam_name,exam_type:g.exam_type,start_date:g.start_date,end_date:g.end_date,class_name:g.class_name,classes_id:g.classes_id,section_id:g.section_id,schedule:g.schedule.map(j=>({subjects_id:j.subject,date_of_exam:j.date,start_to:j.start_time,end_from:j.end_time,full_marks:j.full_marks,passing_marks:j.passing_marks,paper_type:j.paper_type})),deleted_subjects:d};try{const j=await Ze("exam/exam/editExamSchedule",x,t);v(),j?s.notification.success({message:"Success",description:"Updated Successfully"}):s.notification.error({message:"Error",description:"Failed"})}catch{s.notification.error({message:"Error",description:"Failed"})}};return m||!S||!h?e.jsx("p",{children:"Loading..."}):e.jsx(w,{pt:6,children:e.jsxs(s.Card,{children:[e.jsx(w,{p:2,bgcolor:"info",borderRadius:2,children:e.jsx(he,{color:"white",variant:"h6",children:"Edit Exam"})}),e.jsx(w,{p:3,children:e.jsxs("form",{onSubmit:_,children:[e.jsxs(s.Grid,{container:!0,spacing:2,children:[e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(G,{label:"Exam Name",value:g.exam_name,onChange:u=>b({...g,exam_name:u.target.value})})}),e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(ae,{label:"Exam Type",options:S,isDisabled:!0,value:S.find(u=>u.value===g.exam_type),onChange:u=>b({...g,exam_type:u?.value})})}),e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(Ge,{label:"Start Date",defaultValue:ne(g?.start_date,"YYYY-MM-DD"),onChange:u=>b({...g,start_date:ne(u).format("YYYY-MM-DD")})})}),e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(Ge,{label:"End Date",defaultValue:ne(g?.end_date,"YYYY-MM-DD"),onChange:u=>b({...g,end_date:ne(u).format("YYYY-MM-DD")})})}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(s.Button,{fullWidth:!0,type:"primary",onClick:I,children:"Add Row"})})]}),e.jsx(w,{mt:3,children:g.schedule.map((u,x)=>{const j=g.schedule.findIndex(O=>O.subject===u.subject),M=x===g.schedule.length-1||g.schedule[x+1].subject!==u.subject;return e.jsxs(i.Fragment,{children:[e.jsxs(s.Grid,{container:!0,spacing:1,alignItems:"center",style:{padding:"8px"},children:[e.jsx(s.Grid,{item:!0,xs:12,md:2,children:u.subject&&j!==x?e.jsx("span",{style:{visibility:"hidden"},children:"-"}):u.subject?e.jsx("strong",{children:(y||[]).find(O=>O.value===u.subject)?.label}):e.jsx(ae,{label:"Subject",options:y||[],value:(y||[]).find(O=>O.value===u.subject)||null,onChange:O=>R(x,O)})}),e.jsx(s.Grid,{item:!0,xs:12,md:1,children:u.paper_type}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(Ge,{label:"Date",defaultValue:ne(u.date),onChange:O=>T(x,"date",ne(O).format("YYYY-MM-DD"))})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(s.TimePicker,{format:"h:mm a",defaultValue:ne(u.start_time,"HH:mm"),onChange:O=>T(x,"start_time",O?ne(O).format("HH:mm"):"")})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(s.TimePicker,{format:"h:mm a",defaultValue:ne(u.end_time,"HH:mm"),onChange:O=>T(x,"end_time",O?ne(O).format("HH:mm"):"")})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(G,{label:"Full Marks",type:"number",value:u.full_marks,onChange:O=>T(x,"full_marks",O.target.value)})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(G,{label:"Passing Marks",type:"number",value:u.passing_marks,onChange:O=>T(x,"passing_marks",O.target.value)})}),e.jsx(s.Grid,{item:!0,xs:12,md:1,children:j===x?e.jsx(s.Button,{type:"text",icon:e.jsx(re.CloseCircleOutlined,{style:{color:"red"}}),size:"small",onClick:()=>A(x)}):e.jsx("span",{style:{opacity:0},children:"-"})})]}),M&&e.jsx(s.Divider,{style:{margin:"16px 0",borderWidth:2}})]},x)})}),e.jsx(w,{mt:3,display:"flex",justifyContent:"flex-end",children:e.jsx(de,{type:"submit",value:"Save"})})]})})]})})}function dA({token:t}){return e.jsx(lA,{token:t})}const Qt=({label:t,data:a})=>e.jsxs("div",{style:{marginBottom:8},children:[e.jsx(s.Typography.Text,{type:"secondary",style:{display:"block",fontSize:12},children:t}),e.jsx(s.Typography.Text,{children:a})]});function cA({token:t}){const a=window.location.search,r=new URLSearchParams(a).get("id"),{isLoading:o,error:l,data:d}=q(t!=null&&r?[`${We.examSchedule.getById}?id=${r}`,t]:null,([c,h])=>Y(c,h));return o?e.jsx("p",{children:"Loading..."}):e.jsx(w,{pt:8,pb:1,children:e.jsx(s.Grid,{container:!0,spacing:6,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Exam Details"})}),e.jsx(w,{p:3,children:d&&e.jsxs("form",{children:[e.jsxs(s.Grid,{container:!0,spacing:3,children:[e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(w,{children:e.jsx(Qt,{label:"Exam Name",data:d?.data[0]?.name})})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(Qt,{label:"Start Date",data:d?.data[0]?.start_date})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(Qt,{label:"End Date",data:d?.data[0]?.end_date})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(Qt,{label:"Class",data:d?.data[0]?.schedule[0]?.class})})]}),e.jsx(s.Grid,{container:!0,spacing:3,mt:2,children:e.jsx(s.Grid,{item:!0,xs:12,children:Array.isArray(d?.data[0]?.schedule)&&d?.data[0]?.schedule.map((c,h)=>e.jsxs(s.Grid,{container:!0,spacing:3,pt:1,children:[e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(Qt,{label:"Subject",data:c.subject})}),e.jsx(s.Grid,{item:!0,xs:12,md:2,children:e.jsx(Qt,{label:"Date",data:c.date_of_exam})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.3,children:e.jsx(Qt,{label:"Start Time",data:c.start_to})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.3,children:e.jsx(Qt,{label:"End Time",data:c.end_from})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.3,children:e.jsx(Qt,{label:"Room No",data:c.room_no})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.3,children:e.jsx(Qt,{label:"Full Marks",data:c.full_marks})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.3,children:e.jsx(Qt,{label:"Passing Marks",data:c.passing_marks})})]},h+"exam"))})})]})})]})})})})}function uA({token:t}){return e.jsx(cA,{token:t})}function pA({token:t}){i.useRef(null);const[a,n]=i.useState(!1),[r,o]=i.useState(null),[l,d]=i.useState(!1),[c,h]=i.useState(!1),[f,p]=i.useState(null),[m,v]=i.useState(!1),[S,y]=i.useState([]),[g,b]=i.useState(null),[T,R]=i.useState(null),{SHOW_PARENT:I}=s.TreeSelect,A=async($,N)=>{N==="class_id"?(v($.value),n(`${la}?class_id=${$.value}`),p(`${We.examSchedule.dropdown}?class_id=${$.value}`),d(V=>!V)):N==="exam_id"&&(o(`${Fr}?class_id=${m}&exam_id=${$.value}`),await _({exam_id:$.value,class_id:m}),h(V=>!V))},{trigger:_,data:u}=it(We.examSchedule.groupList,($,{arg:N})=>Kr($,N,t)),{isLoading:x,error:j,data:M,mutate:O}=q(t!=null?["/exam/exam/getExamGrouplist?page=1&per_page=100",t]:null,([$,N])=>Y($,N)),{isLoading:z,errorSubject:k,data:F}=q(r,Y),{isLoading:C,errorExam:E,data:P}=q(f,Y),{isLoading:U,errorClass:H,data:W}=q(t!=null?[oa,t]:null,([$,N])=>Y($,N)),L=[{title:"Class name",dataIndex:"class",key:"class"},{title:"Exam Name",dataIndex:"parent_exam_title",key:"parent_exam_title"}],B=async $=>{try{await _({arg:$}),O()}catch{}};return e.jsx(w,{pt:5,pb:1,children:e.jsx(s.Grid,{container:!0,spacing:3,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Exam Link"})}),e.jsxs(w,{p:3,children:[e.jsx(s.Form,{layout:"vertical",onFinish:B,children:e.jsxs(s.Grid,{container:!0,spacing:3,children:[e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(ae,{options:Array.isArray(W)?W:[],closeMenuOnSelect:!0,label:"Class",name:"class_id",required:!0,onChange:$=>A($,"class_id"),allowSelectAll:!1})}),e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(ae,{options:Array.isArray(section)?section:[],closeMenuOnSelect:!0,label:"Section",name:"section_id",allowSelectAll:!1},`section1${l}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(ae,{options:Array.isArray(P)?P:[],closeMenuOnSelect:!0,label:"Exam",name:"exam_id",required:!0,onChange:$=>A($,"exam_id"),allowSelectAll:!1})}),e.jsx(s.Grid,{item:!0,xs:12,md:3,children:e.jsx(ae,{options:Array.isArray(F)?F:[],closeMenuOnSelect:!0,label:"Subject",name:"subject_id",allowSelectAll:!1},`sub${c}`)}),e.jsx(s.Grid,{item:!0,xs:12,children:e.jsx(s.Form.Item,{children:e.jsx(de,{type:"submit",value:"Save",color:"primary"})})})]})}),e.jsx(w,{pt:3,children:e.jsx(s.Table,{columns:L,dataSource:M?.data??[],rowKey:"id",pagination:!1,loading:x,bordered:!0,size:"small"})})]})]})})})})}function mA({token:t}){return e.jsx(pA,{token:t})}function hA({token:t}){const[a,n]=i.useState(!1),r=i.useRef(null),[o,l]=i.useState([]),[d,c]=i.useState(!1),[h,f]=i.useState(null),[p,m]=i.useState(!1),[v,S]=i.useState(null),[y,g]=i.useState(!1),[b,T]=i.useState(!1),[R,I]=i.useState(null),[A,_]=i.useState(!1),[u,x]=i.useState(null),[j,M]=i.useState(null),[O,z]=i.useState(!1),k=i.useRef(),F=async(se,le)=>{le==="class_id"?(_(se.value),c(`${la}?class_id=${se.value}`),I(`${We.examSchedule.dropdown}?class_id=${se.value}`),M(`${We.coscholasticCategoryDropdown}?class_id=${se.value}`),g(Ce=>!Ce)):le==="exam_id"&&(S(`${Fr}?class_id=${A}&exam_id=${se.value}`),(await C({exam_id:se.value,class_id:A}))[0].exam_type==="periodic_test"?z(!1):z(!0),T(Le=>!Le))},{trigger:C,isLoading:E,data:P}=it(We.examSetting.typeByExamId,(se,{arg:le})=>Kr(se,le,t)),{isLoading:U,errorSubject:H,data:W}=q(v,Y),{isLoading:L,errorExam:B,data:$}=q(R,Y),{isLoading:N,errorClass:V,data:Q}=q(t!=null?[oa,t]:null,([se,le])=>Y(se,le)),{isLoading:Z,data:J,mutate:K}=q(j,Y),{isLoading:X,data:ee}=q(d,Y),pe=i.useMemo(()=>O?[{title:"SL",dataIndex:"Sl_no",align:"center"},{title:"Student Name",dataIndex:"firstname",align:"center"},{title:"Full Marks",dataIndex:"full_marks",align:"center"},{title:"Marks Obtained",dataIndex:"marks_obtained",align:"center"},{title:"Percentage",dataIndex:"percentage",align:"center"},{title:"Attendance",dataIndex:"attendance",align:"center"}]:[{title:"SL",dataIndex:"Sl_no",align:"center"},{title:"Student Name",dataIndex:"firstname",align:"center"},{title:"Full Marks",dataIndex:"full_marks",align:"center"},{title:"Periodic Test",dataIndex:"PeriodicTest",align:"center"},{title:"Portfolio(CW/HW)",dataIndex:"Portfolio",align:"center"},{title:"Subject Enrichment",dataIndex:"Enrichment",align:"center"},{title:"Multiple Assessment",dataIndex:"Assessment",align:"center"},{title:"Attendance",dataIndex:"attendance",align:"center"}],[O]),te=se=>{se.preventDefault();const le=new FormData(se.target),Ce={};le.forEach((Le,Re)=>Ce[Re]=Le),l(Ce),f(`exam/exam/getstudentlistforCoscholastic?class_id=${se.target.class_id.value}&section_id=${se.target.section_id.value}&CoScholastic_category_id=${se.target.CoScholastic_category_id.value}&exam_id=${se.target.exam_id.value}&`),r.current&&r.current.click(),n(!1),m(Le=>!Le)};return e.jsxs(w,{pt:5,pb:1,children:[e.jsx(D.Toaster,{toastOptions:{position:"top-center"}}),e.jsx(s.Grid,{container:!0,spacing:6,children:e.jsx(s.Grid,{item:!0,xs:12,children:e.jsxs(s.Card,{children:[e.jsx(w,{mx:2,mt:-3,py:1,px:1,variant:"gradient",bgColor:"info",borderRadius:"lg",coloredShadow:"info",children:e.jsx(he,{variant:"h6",color:"white",children:"Co-Scholastic Area Marks"})}),e.jsxs(w,{p:3,children:[e.jsx(s.Form,{layout:"vertical",onFinish:te,children:e.jsxs(s.Grid,{container:!0,spacing:3,justifyContent:"center",children:[e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray(Q)?Q:[],closeMenuOnSelect:!0,label:"Class",name:"class_id",required:!0,onChange:se=>F(se,"class_id"),allowSelectAll:!1})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray(ee)?ee:[],closeMenuOnSelect:!0,label:"Section",name:"section_id",allowSelectAll:!1},`section1${y}`)}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray(J?.data)?J.data:[],closeMenuOnSelect:!0,label:"Co-Scholastic Category",name:"CoScholastic_category_id",allowSelectAll:!1})}),e.jsx(s.Grid,{item:!0,xs:12,md:2.625,children:e.jsx(ae,{options:Array.isArray($)?$:[],closeMenuOnSelect:!0,label:"Exam",name:"exam_id",required:!0,onChange:se=>F(se,"exam_id"),allowSelectAll:!1})}),e.jsx(s.Grid,{item:!0,xs:12,md:1.5,children:e.jsx(de,{type:"submit",value:"Search",color:"primary"})})]})}),e.jsx(s.Grid,{container:!0,spacing:3,style:{marginTop:16},children:e.jsx(s.Grid,{item:!0,xs:12,style:{borderTop:"1px solid #ececec",borderTopWidth:"2px"},children:h&&!a&&e.jsx(s.Table,{ref:k,columns:pe,dataSource:[],pagination:!1,bordered:!0,size:"small"})})})]})]})})})]})}function fA({token:t}){return e.jsx(hA,{token:t})}const gA=({routes:t=[],onNavigate:a})=>e.jsx(s.Row,{gutter:[16,16],children:t.map((n,r)=>e.jsx(s.Col,{xs:24,md:8,lg:8,children:e.jsx(w,{children:e.jsx(wc,{icon:n?.icon??"",title:n?.title??"",path:n?.path??"",onClick:a})})},`${r}route001`))});exports.About=Bv;exports.AcademicYear=jv;exports.Academics=TS;exports.AddBook=Gy;exports.AddDriver=Uy;exports.AddExpense=mS;exports.AddHomework=Vy;exports.AddIncome=sS;exports.AddStaff=bb;exports.AdmissionEnquiry=xg;exports.AdmitCardSetting=nA;exports.ApplyLeave=nj;exports.AprroveLeaveRequest=Jb;exports.Assessment=nC;exports.AssignByClass=tw;exports.AssignMarks=cC;exports.AssignStudentSubject=_S;exports.AssignStudentToTransport=Ly;exports.AssignSubjects=XS;exports.AssignTimeGroup=dw;exports.AssignVehicles=Ry;exports.AttendanceDashboard=Uj;exports.BookList=Jy;exports.BulkUpload=DS;exports.BuySellProduct=Mx;exports.Category=wx;exports.Chat=g0;exports.ChatBar=Uu;exports.Class=US;exports.CoScholasticArea=yw;exports.CoScholasticAreaMarks=fA;exports.Complain=gy;exports.CreateTimeGroup=sw;exports.DailyAttendance=Wj;exports.Department=dj;exports.Designation=pj;exports.DownloadExpense=xS;exports.ErpDashboard=sm;exports.Exam=G1;exports.ExamDashboard=oA;exports.ExamDetails=uA;exports.ExamEdit=dA;exports.ExamInstruction=rC;exports.ExamLink=mA;exports.ExamList=Q1;exports.ExamSetting=tC;exports.ExamType=Z1;exports.ExpenseHead=SS;exports.FeeReceiptSetting=Cv;exports.FeesInfo=Vv;exports.GatePass=Ay;exports.GeneralSetting=qw;exports.Holidays=KS;exports.IncomeHead=oS;exports.IssueReturn=Xy;exports.LeaveType=ij;exports.LibraryAssignStudent=Zy;exports.LibraryCategory=ex;exports.LibraryRenewalReport=ax;exports.LibraryReport=tx;exports.ManageStock=Vx;exports.MarksReport=rA;exports.MarksheetSetting=Pv;exports.MedicalReport=vS;exports.MenuSubmenu=Wf;exports.MonthlyReport=Kj;exports.Notes=ww;exports.NpmReport=Xx;exports.Organization=hv;exports.PaymentGateway=a0;exports.Payroll=Wb;exports.PayrollReceiptDetails=Cj;exports.PayrollSettings=Xv;exports.PhoneCallLog=Kg;exports.PostalDispatch=ey;exports.PostalReceive=iy;exports.Privacy=$v;exports.Products=xx;exports.PromoteStudents=mw;exports.RoomManagment=lC;exports.RoutePage=gA;exports.RouteTimeTable=Ny;exports.SearchExpense=bS;exports.SearchIncome=rS;exports.Sections=OS;exports.SellReports=qx;exports.SetupFrontOffice=vy;exports.Shift=fj;exports.Sms=s0;exports.SmsAlertSetting=o0;exports.SmsSetting=l0;exports.StaffAttendance=$b;exports.StaffAttendanceReport=Ub;exports.StaffDailyAttendance=Sj;exports.StaffDirectory=Cb;exports.StockReport=Qx;exports.Stoppage=qy;exports.StudentAttendance=zj;exports.StudentLoginCredential=wS;exports.StudentResult=z1;exports.SubCategory=Tx;exports.Subjects=YS;exports.SubmissionDetails=Hy;exports.Syllabus=Iw;exports.Terms=Ev;exports.TimeTable=zw;exports.TransferCertificate=Dw;exports.TransportBulkUpload=Yy;exports.TransportRoutes=Dy;exports.TransportVehicles=Ty;exports.Unit=Fx;exports.Vendor=cx;exports.VisitorBook=Lg;exports.YearlyReport=Xj;exports.getImageBaseUrl=ut;exports.setBaseUrl=Nh;exports.setImageBaseUrl=zh;