@obe-loms/coms-parser 1.5.0 → 1.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bundle.js CHANGED
@@ -1,62 +1,62 @@
1
- import _0x2c16b2 from 'papaparse';
2
- import * as _0x3fb52f from 'xlsx';
1
+ import _0x4d14f7 from 'papaparse';
2
+ import * as _0xf8a8f8 from 'xlsx';
3
3
 
4
- function parseCurriculum(_0x16bc8d){let _0x1b8b01='',_0x259327='',_0x3101bd=0x0,_0xc548b7=null;const _0x26dd22=[];return _0x2c16b2['parse'](_0x16bc8d,{'skipEmptyLines':!![],'complete':_0x401a9c=>{_0x401a9c['data']['forEach'](_0x54401=>{const _0x568284=_0x54401['map'](_0x581b2c=>(_0x581b2c??'')['toString']()['trim']()),_0xba7b95=_0x568284[0x0]??'';if(_0xba7b95['includes']('Rev#')){const _0x5e58d4=_0xba7b95['match'](/([A-Z0-9]+)\s*-\s*.*:\s*(.*?)\s+Rev#\s*(\d+)/i);_0x5e58d4&&(_0x1b8b01=_0x5e58d4[0x1]?.['trim']()??'',_0x259327=_0x5e58d4[0x2]?.['trim']()??'',_0x3101bd=parseInt(_0x5e58d4[0x3]??'0',0xa));return;}if(/FIRST YEAR/i['test'](_0xba7b95)){_0xc548b7=0x1;return;}if(/SECOND YEAR/i['test'](_0xba7b95)){_0xc548b7=0x2;return;}if(/THIRD YEAR/i['test'](_0xba7b95)){_0xc548b7=0x3;return;}if(/FOURTH YEAR/i['test'](_0xba7b95)){_0xc548b7=0x4;return;}if(/FIFTH YEAR/i['test'](_0xba7b95)){_0xc548b7=0x5;return;}if(/First Semester/i['test'](_0xba7b95)||/Second Semester/i['test'](_0xba7b95)||/Summer/i['test'](_0xba7b95))return;const _0x2849ca=[{'sem':0x1,'offset':0x0},{'sem':0x2,'offset':0x6},{'sem':0x3,'offset':0xc}];_0x2849ca['forEach'](({sem:_0x3d0542,offset:_0x86a442})=>{const _0x952ec6=_0x568284[_0x86a442]??'',_0x1a133f=_0x568284[_0x86a442+0x1]??'',_0x4b9031=_0x568284[_0x86a442+0x2]??'',_0x39c37d=_0x568284[_0x86a442+0x3]??'',_0x65eb6=_0x568284[_0x86a442+0x4]??'';_0x952ec6&&_0xc548b7&&_0x26dd22['push']({'curr_id':_0x1b8b01,'program_name':_0x259327,'revision_no':_0x3101bd,'year_level':_0xc548b7,'sem':_0x3d0542,'course_id':_0x952ec6,'course_desc':_0x1a133f,'total_units':_0x4b9031,'lec_unit':_0x39c37d,'lab_unit':_0x65eb6});});});}}),_0x26dd22;}
4
+ function parseCurriculum(_0x44cea8){let _0x4ce8ca='',_0x192441='',_0x152549=0x0,_0x315429=null;const _0x59acd6=[];return _0x4d14f7['parse'](_0x44cea8,{'skipEmptyLines':!![],'complete':_0x4d9b2e=>{_0x4d9b2e['data']['forEach'](_0x2664cd=>{const _0x4d913d=_0x2664cd['map'](_0x55e1b7=>(_0x55e1b7??'')['toString']()['trim']()),_0x8fa2a0=_0x4d913d[0x0]??'';if(_0x8fa2a0['includes']('Rev#')){const _0x129de4=_0x8fa2a0['match'](/([A-Z0-9]+)\s*-\s*.*:\s*(.*?)\s+Rev#\s*(\d+)/i);_0x129de4&&(_0x4ce8ca=_0x129de4[0x1]?.['trim']()??'',_0x192441=_0x129de4[0x2]?.['trim']()??'',_0x152549=parseInt(_0x129de4[0x3]??'0',0xa));return;}if(/FIRST YEAR/i['test'](_0x8fa2a0)){_0x315429=0x1;return;}if(/SECOND YEAR/i['test'](_0x8fa2a0)){_0x315429=0x2;return;}if(/THIRD YEAR/i['test'](_0x8fa2a0)){_0x315429=0x3;return;}if(/FOURTH YEAR/i['test'](_0x8fa2a0)){_0x315429=0x4;return;}if(/FIFTH YEAR/i['test'](_0x8fa2a0)){_0x315429=0x5;return;}if(/First Semester/i['test'](_0x8fa2a0)||/Second Semester/i['test'](_0x8fa2a0)||/Summer/i['test'](_0x8fa2a0))return;const _0x39727b=[{'sem':0x1,'offset':0x0},{'sem':0x2,'offset':0x6},{'sem':0x3,'offset':0xc}];_0x39727b['forEach'](({sem:_0x249e26,offset:_0x2a73de})=>{const _0x2e6ec1=_0x4d913d[_0x2a73de]??'',_0x48daf4=_0x4d913d[_0x2a73de+0x1]??'',_0x4faaff=_0x4d913d[_0x2a73de+0x2]??'',_0x5035b7=_0x4d913d[_0x2a73de+0x3]??'',_0x2c09c7=_0x4d913d[_0x2a73de+0x4]??'';_0x2e6ec1&&_0x315429&&_0x59acd6['push']({'curr_id':_0x4ce8ca,'program_name':_0x192441,'revision_no':_0x152549,'year_level':_0x315429,'sem':_0x249e26,'course_id':_0x2e6ec1,'course_desc':_0x48daf4,'total_units':_0x4faaff,'lec_unit':_0x5035b7,'lab_unit':_0x2c09c7});});});}}),_0x59acd6;}
5
5
 
6
- function convertToCSVFile(_0x2757d3,_0x4f4eac){return new Promise((_0x8f777e,_0x2067dd)=>{const _0x3d7443=new FileReader();_0x3d7443['onload']=_0xb4d60=>{const _0x50e240=_0xb4d60['target']?.['result'];if(!_0x50e240){_0x2067dd(new Error('Failed\x20to\x20read\x20file'));return;}try{const _0x4c16ea=_0x3fb52f['read'](_0x50e240,{'type':'array'});!_0x4f4eac&&(_0x4f4eac=_0x4c16ea['SheetNames'][0x0]);if(!_0x4f4eac){_0x2067dd(new Error('No\x20sheets\x20found\x20in\x20workbook'));return;}const _0xea02e6=_0x4c16ea['Sheets'][_0x4f4eac];if(!_0xea02e6){_0x2067dd(new Error('No\x20sheets\x20found\x20in\x20worksheet'));return;}const _0x40d04e=_0x3fb52f['utils']['sheet_to_csv'](_0xea02e6,{'strip':!![]}),_0x2d618f=_0x2757d3['name']['replace'](/\.[^/.]+$/,'.csv'),_0x21ea73=new File([_0x40d04e],_0x2d618f,{'type':'text/csv','lastModified':Date['now']()});_0x8f777e(_0x21ea73);}catch(_0x24d803){_0x2067dd(_0x24d803);}},_0x3d7443['onerror']=()=>{_0x2067dd(new Error('File\x20reading\x20failed'));},_0x3d7443['readAsArrayBuffer'](_0x2757d3);});}
6
+ function convertToCSVFile(_0x8d38f9,_0x2a8131){return new Promise((_0x187c19,_0x475614)=>{const _0x2762b9=new FileReader();_0x2762b9['onload']=_0x4e4536=>{const _0x313871=_0x4e4536['target']?.['result'];if(!_0x313871){_0x475614(new Error('Failed\x20to\x20read\x20file'));return;}try{const _0x1903d1=_0xf8a8f8['read'](_0x313871,{'type':'array'});!_0x2a8131&&(_0x2a8131=_0x1903d1['SheetNames'][0x0]);if(!_0x2a8131){_0x475614(new Error('No\x20sheets\x20found\x20in\x20workbook'));return;}const _0x53ea44=_0x1903d1['Sheets'][_0x2a8131];if(!_0x53ea44){_0x475614(new Error('No\x20sheets\x20found\x20in\x20worksheet'));return;}const _0x107040=_0xf8a8f8['utils']['sheet_to_csv'](_0x53ea44,{'strip':!![]}),_0x191191=_0x8d38f9['name']['replace'](/\.[^/.]+$/,'.csv'),_0x1a591d=new File([_0x107040],_0x191191,{'type':'text/csv','lastModified':Date['now']()});_0x187c19(_0x1a591d);}catch(_0x2c393d){_0x475614(_0x2c393d);}},_0x2762b9['onerror']=()=>{_0x475614(new Error('File\x20reading\x20failed'));},_0x2762b9['readAsArrayBuffer'](_0x8d38f9);});}
7
7
 
8
- async function uploadCurriculum(_0xadace7,_0x64f6cf){try{const _0x296a5e=await convertToCSVFile(_0x64f6cf),_0x399f2=await _0x296a5e['text'](),_0xb00988=parseCurriculum(_0x399f2),_0x3df969=_0x2c16b2['unparse'](_0xb00988),_0x48f664=new File([_0x3df969],_0x296a5e['name'],{'type':'text/csv'}),_0x193363=new FormData();_0x193363['append']('csvFile',_0x48f664);const _0x451e7e=await fetch(_0xadace7+'/curr-courses/upload',{'method':'POST','body':_0x193363});if(!_0x451e7e['ok']){const _0x423719=await _0x451e7e['json']();throw _0x423719;}return _0x451e7e['json']();}catch(_0x28a0a7){throw _0x28a0a7;}}
8
+ async function uploadCurriculum(_0x39bc91,_0x4802d0){try{const _0x236d3e=await convertToCSVFile(_0x4802d0),_0x5df739=await _0x236d3e['text'](),_0x3f6fcd=parseCurriculum(_0x5df739),_0x44d780=_0x4d14f7['unparse'](_0x3f6fcd),_0x326159=new File([_0x44d780],_0x236d3e['name'],{'type':'text/csv'}),_0x3e0500=new FormData();_0x3e0500['append']('csvFile',_0x326159);const _0x436076=await fetch(_0x39bc91+'/curr-courses/upload',{'method':'POST','body':_0x3e0500});if(!_0x436076['ok']){const _0x2ad229=await _0x436076['json']();throw _0x2ad229;}return _0x436076['json']();}catch(_0x49c882){throw _0x49c882;}}
9
9
 
10
- function parseCourseOffering(_0x37404f){let _0x2c6c3a='',_0x8085c7='';const _0xa9503=[],_0x43d142=_0x2c16b2['parse'](_0x37404f,{'header':![],'skipEmptyLines':!![],'delimiter':','}),_0x20f466=_0x43d142['data'];for(let _0x1a0c27=0x0;_0x1a0c27<Math['min'](0x5,_0x20f466['length']);_0x1a0c27++){const _0x3d74f6=_0x20f466[_0x1a0c27];if(_0x3d74f6&&_0x3d74f6['length']>0x0){const _0x478240=_0x3d74f6[0x0]?.['toString']()||'',_0x11ad55=_0x478240['match'](/(First|Second)\s+Sem\s+S\/Y\s+(\d{4}-\d{4})/i);if(_0x11ad55){_0x2c6c3a=_0x11ad55[0x1]?.['toLowerCase']()==='first'?'1':'2';if(_0x11ad55[0x2]){const _0x568c98=_0x11ad55[0x2]['match'](/(\d{2})(\d{2})-(\d{2})(\d{2})/);_0x568c98&&_0x568c98[0x2]&&_0x568c98[0x4]&&(_0x8085c7=_0x568c98[0x2]+_0x568c98[0x4]);}}}}let _0x50ed71=-1;for(let _0x10cc65=0x0;_0x10cc65<_0x20f466['length'];_0x10cc65++){const _0x2671b3=_0x20f466[_0x10cc65];if(_0x2671b3&&_0x2671b3['some'](_0xed3457=>_0xed3457?.['toString']()['toUpperCase']()['includes']('CODE'))){_0x50ed71=_0x10cc65;break;}}if(_0x50ed71===-1)throw new Error('Could\x20not\x20find\x20header\x20row\x20in\x20CSV\x20data');let _0x1c2a87={'code':'','description':'','unit':0x0};for(let _0x545367=_0x50ed71+0x1;_0x545367<_0x20f466['length'];_0x545367++){const _0x23c635=_0x20f466[_0x545367];if(!_0x23c635||_0x23c635['length']<0x8)continue;const _0x2adf6f=_0x23c635[0x1]?.['toString']()['trim']()||'',_0x2ddd26=_0x23c635[0x4]?.['toString']()['trim']()||'',_0x5c8e13=_0x23c635[0x5]?.['toString']()['trim']()||'',_0x2f0165=_0x23c635[0x6]?.['toString']()['trim']()||'',_0x467c42=_0x23c635[0x7]?.['toString']()['trim']()||'',_0x57b4de=_0x23c635[0x3]?.['toString']()['trim']()||'';let _0xfbf2c7=_0x23c635[0x0]?.['toString']()['trim']()||'',_0x159d39=_0x23c635[0x2]?.['toString']()['trim']()||'';if(!_0x2adf6f)continue;if(!_0xfbf2c7)_0xfbf2c7=_0x1c2a87['code'];if(!_0x159d39)_0x159d39=_0x1c2a87['description'];let _0x5d0848=_0x1c2a87['unit'];if(_0x57b4de){const _0x3548d0=_0x57b4de['match'](/(\d+)/);_0x3548d0&&_0x3548d0[0x1]&&(_0x5d0848=parseInt(_0x3548d0[0x1],0xa));}const _0x4deafe={'sem':_0x2c6c3a,'school_year':_0x8085c7,'code':_0xfbf2c7,'course_no':_0x2adf6f,'course_desc':_0x159d39,'unit':_0x5d0848,'time':_0x2ddd26,'days':_0x5c8e13,'faculty':_0x2f0165,'room':_0x467c42};_0x1c2a87['code']=_0xfbf2c7,_0x1c2a87['description']=_0x159d39,_0x1c2a87['unit']=_0x5d0848,_0xa9503['push'](_0x4deafe);}return _0xa9503;}
10
+ function parseCourseOffering(_0x35b1a1){let _0x3754c5='',_0x3d9d0b='';const _0x18ddb4=[],_0x469247=_0x4d14f7['parse'](_0x35b1a1,{'header':![],'skipEmptyLines':!![],'delimiter':','}),_0x128f88=_0x469247['data'];for(let _0x59e9f7=0x0;_0x59e9f7<Math['min'](0x5,_0x128f88['length']);_0x59e9f7++){const _0x3017b1=_0x128f88[_0x59e9f7];if(_0x3017b1&&_0x3017b1['length']>0x0){const _0xda74c0=_0x3017b1[0x0]?.['toString']()||'',_0x1c9d3d=_0xda74c0['match'](/(First|Second)\s+Sem\s+S\/Y\s+(\d{4}-\d{4})/i);if(_0x1c9d3d){_0x3754c5=_0x1c9d3d[0x1]?.['toLowerCase']()==='first'?'1':'2';if(_0x1c9d3d[0x2]){const _0x7a0eff=_0x1c9d3d[0x2]['match'](/(\d{2})(\d{2})-(\d{2})(\d{2})/);_0x7a0eff&&_0x7a0eff[0x2]&&_0x7a0eff[0x4]&&(_0x3d9d0b=_0x7a0eff[0x2]+_0x7a0eff[0x4]);}}}}let _0x47807f=-1;for(let _0x105803=0x0;_0x105803<_0x128f88['length'];_0x105803++){const _0x3e8c34=_0x128f88[_0x105803];if(_0x3e8c34&&_0x3e8c34['some'](_0x41769b=>_0x41769b?.['toString']()['toUpperCase']()['includes']('CODE'))){_0x47807f=_0x105803;break;}}if(_0x47807f===-1)throw new Error('Could\x20not\x20find\x20header\x20row\x20in\x20CSV\x20data');let _0x186cfe={'code':'','description':'','unit':0x0};for(let _0x1bc4f3=_0x47807f+0x1;_0x1bc4f3<_0x128f88['length'];_0x1bc4f3++){const _0x2baefe=_0x128f88[_0x1bc4f3];if(!_0x2baefe||_0x2baefe['length']<0x8)continue;const _0x110fae=_0x2baefe[0x1]?.['toString']()['trim']()||'',_0x57f096=_0x2baefe[0x4]?.['toString']()['trim']()||'',_0x35e21b=_0x2baefe[0x5]?.['toString']()['trim']()||'',_0x2b9b6d=_0x2baefe[0x6]?.['toString']()['trim']()||'',_0x43cd73=_0x2baefe[0x7]?.['toString']()['trim']()||'',_0x21b91f=_0x2baefe[0x3]?.['toString']()['trim']()||'';let _0x21d1f1=_0x2baefe[0x0]?.['toString']()['trim']()||'',_0x1ee6be=_0x2baefe[0x2]?.['toString']()['trim']()||'';if(!_0x110fae)continue;if(!_0x21d1f1)_0x21d1f1=_0x186cfe['code'];if(!_0x1ee6be)_0x1ee6be=_0x186cfe['description'];let _0x4c9eea=_0x186cfe['unit'];if(_0x21b91f){const _0x1d1582=_0x21b91f['match'](/(\d+)/);_0x1d1582&&_0x1d1582[0x1]&&(_0x4c9eea=parseInt(_0x1d1582[0x1],0xa));}const _0x33d067={'sem':_0x3754c5,'school_year':_0x3d9d0b,'code':_0x21d1f1,'course_no':_0x110fae,'course_desc':_0x1ee6be,'unit':_0x4c9eea,'time':_0x57f096,'days':_0x35e21b,'faculty':_0x2b9b6d,'room':_0x43cd73};_0x186cfe['code']=_0x21d1f1,_0x186cfe['description']=_0x1ee6be,_0x186cfe['unit']=_0x4c9eea,_0x18ddb4['push'](_0x33d067);}return _0x18ddb4;}
11
11
 
12
- async function uploadCourseOffering(_0xe80371,_0x2bf3b7){try{const _0x4995c1=await convertToCSVFile(_0x2bf3b7),_0x3e2475=await _0x4995c1['text'](),_0x1f501a=parseCourseOffering(_0x3e2475),_0x6429ca=_0x2c16b2['unparse'](_0x1f501a),_0x5d5b78=new File([_0x6429ca],_0x4995c1['name'],{'type':'text/csv'}),_0x8e6209=new FormData();_0x8e6209['append']('csvFile',_0x5d5b78);const _0x1f1c5e=await fetch(_0xe80371+'/course-offerings/upload',{'method':'POST','body':_0x8e6209});if(!_0x1f1c5e['ok']){const _0x5e6a84=await _0x1f1c5e['json']();throw _0x5e6a84;}return _0x1f1c5e['json']();}catch(_0x2e6c2d){throw _0x2e6c2d;}}
12
+ async function uploadCourseOffering(_0x5da0be,_0x21b745){try{const _0x5ad5a1=await convertToCSVFile(_0x21b745),_0x30d4a2=await _0x5ad5a1['text'](),_0x1e3041=parseCourseOffering(_0x30d4a2),_0x45bb43=_0x4d14f7['unparse'](_0x1e3041),_0x4a64c6=new File([_0x45bb43],_0x5ad5a1['name'],{'type':'text/csv'}),_0x453d15=new FormData();_0x453d15['append']('csvFile',_0x4a64c6);const _0x419edc=await fetch(_0x5da0be+'/course-offerings/upload',{'method':'POST','body':_0x453d15});if(!_0x419edc['ok']){const _0x349164=await _0x419edc['json']();throw _0x349164;}return _0x419edc['json']();}catch(_0x255614){throw _0x255614;}}
13
13
 
14
- function performaceTarget(_0x3004c7){if(!_0x3004c7)return {'performance_target':null,'passing_score':null};const _0xce6c00=_0x3004c7['match'](/\d+/g);return {'performance_target':_0xce6c00?.[0x0]?parseInt(_0xce6c00[0x0],0xa):null,'passing_score':_0xce6c00?.[0x1]?parseInt(_0xce6c00[0x1],0xa):null};}
14
+ function performaceTarget(_0x1e39d4){if(!_0x1e39d4)return {'performance_target':null,'passing_score':null};const _0x3a5b66=_0x1e39d4['match'](/\d+/g);return {'performance_target':_0x3a5b66?.[0x0]?parseInt(_0x3a5b66[0x0],0xa):null,'passing_score':_0x3a5b66?.[0x1]?parseInt(_0x3a5b66[0x1],0xa):null};}
15
15
 
16
- const HEADERS$1={'co':['course\x20outcome','co\x20statement','outcome\x20statement'],'ilo':['intended\x20learning','ilo','learning\x20outcome'],'assessTool':['assessment\x20tool','assessment\x20method','tool'],'perfTarget':['performance\x20target','target','passing']};function getCoaepHeader(_0x4dc17e){let _0x1a21db={'headerRowIndex':-1,'coIdx':-1,'iloIdx':-1,'assessToolIdx':-1,'perfTargetIdx':-1};for(let _0x569210=0x0;_0x569210<Math['min'](_0x4dc17e['length'],0x14);_0x569210++){const _0x450e5a=(_0x4dc17e[_0x569210]??[])['map'](_0x3f1a2b=>_0x3f1a2b['toLowerCase']()['trim']()),_0x597bdb=_0x450e5a['findIndex'](_0x280192=>HEADERS$1['co']['some'](_0x5975bb=>_0x280192['includes'](_0x5975bb))),_0x5a0023=_0x450e5a['findIndex'](_0x4ffdd2=>HEADERS$1['ilo']['some'](_0x5e624d=>_0x4ffdd2['includes'](_0x5e624d))),_0x4f9435=_0x450e5a['findIndex'](_0x54c13a=>HEADERS$1['assessTool']['some'](_0x65541=>_0x54c13a['includes'](_0x65541))),_0x56649c=_0x450e5a['findIndex'](_0x354ef1=>HEADERS$1['perfTarget']['some'](_0x33c351=>_0x354ef1['includes'](_0x33c351))),_0x14b5d4=[_0x597bdb,_0x5a0023,_0x4f9435,_0x56649c]['filter'](_0x20c867=>_0x20c867!==-1)['length'];if(_0x14b5d4>=0x3){_0x1a21db={'headerRowIndex':_0x569210,'coIdx':_0x597bdb,'iloIdx':_0x5a0023,'assessToolIdx':_0x4f9435,'perfTargetIdx':_0x56649c};break;}}return _0x1a21db;}
16
+ const HEADERS$1={'co':['course\x20outcome','co\x20statement','outcome\x20statement'],'ilo':['intended\x20learning','ilo','learning\x20outcome'],'assessTool':['assessment\x20tool','assessment\x20method','tool'],'perfTarget':['performance\x20target','target','passing']};function getCoaepHeader(_0x3629a4){let _0x1ea373={'headerRowIndex':-1,'coIdx':-1,'iloIdx':-1,'assessToolIdx':-1,'perfTargetIdx':-1};for(let _0x4eb6e3=0x0;_0x4eb6e3<Math['min'](_0x3629a4['length'],0x14);_0x4eb6e3++){const _0x19da62=(_0x3629a4[_0x4eb6e3]??[])['map'](_0x26db22=>_0x26db22['toLowerCase']()['trim']()),_0x44bf26=_0x19da62['findIndex'](_0x2f0a37=>HEADERS$1['co']['some'](_0x4d85ea=>_0x2f0a37['includes'](_0x4d85ea))),_0x22eede=_0x19da62['findIndex'](_0x1358ac=>HEADERS$1['ilo']['some'](_0x5ad7f6=>_0x1358ac['includes'](_0x5ad7f6))),_0x199d8e=_0x19da62['findIndex'](_0x1ce8cc=>HEADERS$1['assessTool']['some'](_0x59e704=>_0x1ce8cc['includes'](_0x59e704))),_0x357eca=_0x19da62['findIndex'](_0x5c220e=>HEADERS$1['perfTarget']['some'](_0x4edebf=>_0x5c220e['includes'](_0x4edebf))),_0x46d030=[_0x44bf26,_0x22eede,_0x199d8e,_0x357eca]['filter'](_0x1379cc=>_0x1379cc!==-1)['length'];if(_0x46d030>=0x3){_0x1ea373={'headerRowIndex':_0x4eb6e3,'coIdx':_0x44bf26,'iloIdx':_0x22eede,'assessToolIdx':_0x199d8e,'perfTargetIdx':_0x357eca};break;}}return _0x1ea373;}
17
17
 
18
- function extractFromObjective(_0x43f929){const _0x19e1ee={'cognitive_level':null,'taxonomy_level':null,'verb':null},_0x1952a9=/(?:\(([IED])\))?\s*(\w+)\s*:\s*(\w+)/,_0x1c5416=_0x43f929['match'](_0x1952a9);if(_0x1c5416){if(_0x1c5416[0x1])_0x19e1ee['cognitive_level']=_0x1c5416[0x1];if(_0x1c5416[0x2])_0x19e1ee['taxonomy_level']=_0x1c5416[0x2]['toLowerCase']();if(_0x1c5416[0x3])_0x19e1ee['verb']=_0x1c5416[0x3]['toLowerCase']();}return _0x19e1ee;}
18
+ function extractFromObjective(_0x4d70d4){const _0x192f21={'cognitive_level':null,'taxonomy_level':null,'verb':null},_0x22d32d=/(?:\(([IED])\))?\s*(\w+)\s*:\s*(\w+)/,_0x66f012=_0x4d70d4['match'](_0x22d32d);if(_0x66f012){if(_0x66f012[0x1])_0x192f21['cognitive_level']=_0x66f012[0x1];if(_0x66f012[0x2])_0x192f21['taxonomy_level']=_0x66f012[0x2]['toLowerCase']();if(_0x66f012[0x3])_0x192f21['verb']=_0x66f012[0x3]['toLowerCase']();}return _0x192f21;}
19
19
 
20
- function parseCOAEP(_0x9c9ce4){const _0x530ee9=_0x2c16b2['parse'](_0x9c9ce4,{'skipEmptyLines':![]})['data'],_0x1b7f4b={'COAEP':{'faculty':null,'course':null,'sy':null,'semester':null,'co':[]}},{headerRowIndex:_0x4b6dac,coIdx:_0x264868,iloIdx:_0x161fe6,assessToolIdx:_0x4fc09a,perfTargetIdx:_0x9a9a27}=getCoaepHeader(_0x530ee9);if(_0x4b6dac===-1)return {'error':'Could\x20not\x20auto-detect\x20header\x20row.','message':'Please\x20ensure\x20the\x20CSV\x20file\x20is\x20in\x20the\x20correct\x20COAEP\x20format.'};_0x530ee9['forEach'](_0x275b47=>{const _0x575a91=_0x275b47['indexOf']('Name\x20of\x20Faculty:'),_0x163ddd=_0x275b47['indexOf']('School\x20Year'),_0x3edef0=_0x275b47['indexOf']('Course:'),_0x4a3029=_0x275b47['indexOf']('Semester');_0x575a91!==-1&&(_0x1b7f4b['COAEP']['faculty']=_0x275b47[_0x575a91+0x1]?.['trim']()||_0x1b7f4b['COAEP']['faculty']);_0x163ddd!==-1&&(_0x1b7f4b['COAEP']['sy']=_0x275b47[_0x163ddd+0x1]?.['trim']()||_0x1b7f4b['COAEP']['sy']);_0x3edef0!==-1&&(_0x1b7f4b['COAEP']['course']=_0x275b47[_0x3edef0+0x1]?.['trim']()||_0x1b7f4b['COAEP']['course']);if(_0x4a3029!==-1){const _0x3557f1=_0x275b47[_0x4a3029+0x1]?.['trim']()||'',_0x5d8b35=_0x3557f1['match'](/\d+/)?.[0x0];_0x1b7f4b['COAEP']['semester']=_0x5d8b35?parseInt(_0x5d8b35,0xa):_0x1b7f4b['COAEP']['semester'];}});let _0xfdc2dd=null;return _0x530ee9['forEach']((_0x41494e,_0xb69d99)=>{if(_0xb69d99<=_0x4b6dac)return;let _0x3b3944=_0x41494e[_0x264868-0x1]?.['trim']()||'',_0x1d4f9c=_0x41494e[_0x264868]?.['trim']()||'';/^\d+$/['test'](_0x41494e[_0x264868]?.['trim']()||'')&&(_0x3b3944=_0x41494e[_0x264868]?.['trim']()||'',_0x1d4f9c=_0x41494e[_0x264868+0x1]?.['trim']()||'');const _0x14b7e1=_0x41494e[_0x161fe6]?.['trim']()||'',_0x455c02=_0x41494e[_0x4fc09a]?.['replace'](/^ILO\d+[:.]?\s*/,'')['trim']()||'',_0xf35ee7=_0x41494e[_0x9a9a27]?.['replace'](/\s+/g,'\x20')['trim']()||'';if(_0x3b3944&&/^\d+$/['test'](_0x3b3944)){_0xfdc2dd&&_0x1b7f4b['COAEP']['co']['push'](_0xfdc2dd);const _0x5ebcb7=_0x1d4f9c,{verb:_0x134cb2,cognitive_level:_0x3ba46c,taxonomy_level:_0x337b53}=extractFromObjective(_0x5ebcb7);_0xfdc2dd={'statement':_0x5ebcb7,'ilo':[],'verb':_0x134cb2,'cognitive_level':_0x3ba46c,'taxonomy_level':_0x337b53};}if(_0xfdc2dd&&_0x14b7e1&&_0xf35ee7){const _0x57f0dc=_0x14b7e1['replace'](/^ILO\d+[:.]?\s*/,'');if(_0x57f0dc['match'](/^(Revision|Prepared|Date|Approved|Effectivity|Page)/i)||_0x57f0dc['length']<0xa)return;let _0x28cc22=_0x455c02;if(!_0x28cc22&&_0x57f0dc['includes'](':')){const _0x5dd1e3=_0x57f0dc['match'](/^ILO\d+:\s*(.+?)(?:\s*\(|$)/);_0x5dd1e3&&(_0x28cc22=_0x5dd1e3[0x1]?.['trim']()||'');}const {performance_target:_0x4eb844,passing_score:_0x12a635}=performaceTarget(_0xf35ee7),{verb:_0x516eab,cognitive_level:_0x5bc8d7,taxonomy_level:_0x4079e7}=extractFromObjective(_0x57f0dc);_0xfdc2dd['ilo']['push']({'statement':_0x57f0dc,'assessment_tool':_0x28cc22,'performance_target':_0x4eb844,'passing_score':_0x12a635,'verb':_0x516eab,'cognitive_level':_0x5bc8d7,'taxonomy_level':_0x4079e7});}}),_0xfdc2dd&&_0x1b7f4b['COAEP']['co']['push'](_0xfdc2dd),_0x1b7f4b;}
20
+ function parseCOAEP(_0x241623){const _0x2429c0=_0x4d14f7['parse'](_0x241623,{'skipEmptyLines':![]})['data'],_0x5edf20={'COAEP':{'faculty':null,'course':null,'sy':null,'semester':null,'co':[]}},{headerRowIndex:_0x45ce85,coIdx:_0x3843b2,iloIdx:_0x56157e,assessToolIdx:_0x15cf97,perfTargetIdx:_0x3a6116}=getCoaepHeader(_0x2429c0);if(_0x45ce85===-1)return {'error':'Could\x20not\x20auto-detect\x20header\x20row.','message':'Please\x20ensure\x20the\x20CSV\x20file\x20is\x20in\x20the\x20correct\x20COAEP\x20format.'};_0x2429c0['forEach'](_0x29017d=>{const _0x11ccae=_0x29017d['indexOf']('Name\x20of\x20Faculty:'),_0x46f171=_0x29017d['indexOf']('School\x20Year'),_0x4d7119=_0x29017d['indexOf']('Course:'),_0x25ab83=_0x29017d['indexOf']('Semester');_0x11ccae!==-1&&(_0x5edf20['COAEP']['faculty']=_0x29017d[_0x11ccae+0x1]?.['trim']()||_0x5edf20['COAEP']['faculty']);_0x46f171!==-1&&(_0x5edf20['COAEP']['sy']=_0x29017d[_0x46f171+0x1]?.['trim']()||_0x5edf20['COAEP']['sy']);_0x4d7119!==-1&&(_0x5edf20['COAEP']['course']=_0x29017d[_0x4d7119+0x1]?.['trim']()||_0x5edf20['COAEP']['course']);if(_0x25ab83!==-1){const _0x320f49=_0x29017d[_0x25ab83+0x1]?.['trim']()||'',_0x30a4e3=_0x320f49['match'](/\d+/)?.[0x0];_0x5edf20['COAEP']['semester']=_0x30a4e3?parseInt(_0x30a4e3,0xa):_0x5edf20['COAEP']['semester'];}});let _0x421f6d=null;return _0x2429c0['forEach']((_0x4990ce,_0x1316e4)=>{if(_0x1316e4<=_0x45ce85)return;let _0x58a345=_0x4990ce[_0x3843b2-0x1]?.['trim']()||'',_0x25ecad=_0x4990ce[_0x3843b2]?.['trim']()||'';/^\d+$/['test'](_0x4990ce[_0x3843b2]?.['trim']()||'')&&(_0x58a345=_0x4990ce[_0x3843b2]?.['trim']()||'',_0x25ecad=_0x4990ce[_0x3843b2+0x1]?.['trim']()||'');const _0x128f28=_0x4990ce[_0x56157e]?.['trim']()||'',_0x206bb1=_0x4990ce[_0x15cf97]?.['replace'](/^ILO\d+[:.]?\s*/,'')['trim']()||'',_0x5e3ec0=_0x4990ce[_0x3a6116]?.['replace'](/\s+/g,'\x20')['trim']()||'';if(_0x58a345&&/^\d+$/['test'](_0x58a345)){_0x421f6d&&_0x5edf20['COAEP']['co']['push'](_0x421f6d);const _0x3cdd37=_0x25ecad,{verb:_0xb645c9,cognitive_level:_0x593222,taxonomy_level:_0x31b547}=extractFromObjective(_0x3cdd37);_0x421f6d={'statement':_0x3cdd37,'ilo':[],'verb':_0xb645c9,'cognitive_level':_0x593222,'taxonomy_level':_0x31b547};}if(_0x421f6d&&_0x128f28&&_0x5e3ec0){const _0x4b9b77=_0x128f28['replace'](/^ILO\d+[:.]?\s*/,'');if(_0x4b9b77['match'](/^(Revision|Prepared|Date|Approved|Effectivity|Page)/i)||_0x4b9b77['length']<0xa)return;let _0x545c23=_0x206bb1;if(!_0x545c23&&_0x4b9b77['includes'](':')){const _0xa194a4=_0x4b9b77['match'](/^ILO\d+:\s*(.+?)(?:\s*\(|$)/);_0xa194a4&&(_0x545c23=_0xa194a4[0x1]?.['trim']()||'');}const {performance_target:_0x3cdf94,passing_score:_0xf8f64c}=performaceTarget(_0x5e3ec0),{verb:_0x2a97ab,cognitive_level:_0x1b971,taxonomy_level:_0x1553ff}=extractFromObjective(_0x4b9b77);_0x421f6d['ilo']['push']({'statement':_0x4b9b77,'assessment_tool':_0x545c23,'performance_target':_0x3cdf94,'passing_score':_0xf8f64c,'verb':_0x2a97ab,'cognitive_level':_0x1b971,'taxonomy_level':_0x1553ff});}}),_0x421f6d&&_0x5edf20['COAEP']['co']['push'](_0x421f6d),_0x5edf20;}
21
21
 
22
- async function uploadCOAEP(_0x5df05b,_0x4be34f,_0x110da6){try{const _0x13ac85=await convertToCSVFile(_0x4be34f),_0x5064cc=await _0x13ac85['text'](),_0x2465cf=parseCOAEP(_0x5064cc);console['log'](_0x2465cf);const _0x22026a=await fetch(_0x5df05b+'/coaeps/upload?course_id='+_0x110da6,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](_0x2465cf)});if(!_0x22026a['ok']){const _0x2681b9=await _0x22026a['json']();throw _0x2681b9;}return _0x22026a['json']();}catch(_0x1cd54f){throw _0x1cd54f;}}
22
+ async function uploadCOAEP(_0x32444a,_0x46142a,_0x43f8aa){try{const _0x64b5c9=await convertToCSVFile(_0x46142a),_0x188854=await _0x64b5c9['text'](),_0x23ff44=parseCOAEP(_0x188854);console['log'](_0x23ff44);const _0x30ed76=await fetch(_0x32444a+'/coaeps/upload?course_id='+_0x43f8aa,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](_0x23ff44)});if(!_0x30ed76['ok']){const _0x366405=await _0x30ed76['json']();throw _0x366405;}return _0x30ed76['json']();}catch(_0x41682b){throw _0x41682b;}}
23
23
 
24
- async function uploadEnrolledStudent(_0x2d7709,_0x2754f0){try{const _0x57ec44=await convertToCSVFile(_0x2754f0),_0x209a77=new FormData();_0x209a77['append']('csvFile',_0x57ec44);const _0x33af94=await fetch(_0x2d7709+'/enrolled-students/upload',{'method':'POST','body':_0x209a77});if(!_0x33af94['ok']){const _0x4c52ec=await _0x33af94['json']();throw _0x4c52ec;}return _0x33af94['json']();}catch(_0x5bf99a){throw _0x5bf99a;}}
24
+ async function uploadEnrolledStudent(_0x54bc4e,_0x330aec){try{const _0x555a8a=await convertToCSVFile(_0x330aec),_0x258156=new FormData();_0x258156['append']('csvFile',_0x555a8a);const _0x6ef890=await fetch(_0x54bc4e+'/enrolled-students/upload',{'method':'POST','body':_0x258156});if(!_0x6ef890['ok']){const _0x51b2df=await _0x6ef890['json']();throw _0x51b2df;}return _0x6ef890['json']();}catch(_0x4dd94c){throw _0x4dd94c;}}
25
25
 
26
- function parseClassList(_0x2cfcd1){const _0x2e375a=_0x2c16b2['parse'](_0x2cfcd1,{'skipEmptyLines':!![]})['data'];let _0x1b848c='',_0x2519da='',_0x47ef58='';const _0x18323b=[];return _0x2e375a['forEach'](_0x1bfc40=>{const _0x1eaebc=_0x1bfc40['map'](_0x1888d6=>(_0x1888d6??'')['toString']()['trim']()),_0x4b7a7e=_0x1eaebc[0x0]??'';if(_0x4b7a7e['startsWith']('Course\x20No:')){const _0x235c3b=_0x4b7a7e['replace']('Course\x20No:','')['trim'](),_0x18e706=_0x235c3b['split'](/\s+/);_0x47ef58=_0x18e706[0x0]??'';const [_0x23c08c,_0x291d54]=(_0x18e706[0x1]??'')['split']('-');_0x2519da=_0x23c08c??'';const _0x5bcbf0=(_0x291d54??'')['match'](/[a-z]$/);_0x1b848c=_0x5bcbf0?_0x5bcbf0[0x0]:'';}if(/^\d+$/['test'](_0x4b7a7e)){const _0x45f88f=_0x1eaebc[0x2]??'';_0x18323b['push']({'subj_code':_0x47ef58,'student_no':_0x45f88f,'course_id':_0x2519da,'section':_0x1b848c});}}),{'enrolledCourses':_0x18323b};}
26
+ function parseClassList(_0x5bf874){const _0x2d8a02=_0x4d14f7['parse'](_0x5bf874,{'skipEmptyLines':!![]})['data'];let _0x2f3000='',_0x2e8ef2='',_0x346d7c='';const _0x38db13=[];return _0x2d8a02['forEach'](_0x10750e=>{const _0x133284=_0x10750e['map'](_0x9aa2bf=>(_0x9aa2bf??'')['toString']()['trim']()),_0x81f1e=_0x133284[0x0]??'';if(_0x81f1e['startsWith']('Course\x20No:')){const _0x2e5f93=_0x81f1e['replace']('Course\x20No:','')['trim'](),_0x128caf=_0x2e5f93['split'](/\s+/);_0x346d7c=_0x128caf[0x0]??'';const [_0x1f398c,_0x35a26d]=(_0x128caf[0x1]??'')['split']('-');_0x2e8ef2=_0x1f398c??'';const _0x5da15a=(_0x35a26d??'')['match'](/[a-z]$/);_0x2f3000=_0x5da15a?_0x5da15a[0x0]:'';}if(/^\d+$/['test'](_0x81f1e)){const _0x58f372=_0x133284[0x2]??'';_0x38db13['push']({'subj_code':_0x346d7c,'student_no':_0x58f372,'course_id':_0x2e8ef2,'section':_0x2f3000});}}),{'enrolledCourses':_0x38db13};}
27
27
 
28
- async function uploadClassList(_0x3dc2a2,_0x5c64de,_0x6997a8,_0x500b1a){try{const _0x3c16d9=await convertToCSVFile(_0x5c64de),_0x32687c=await _0x3c16d9['text'](),_0x1ece1a=parseClassList(_0x32687c),_0x127aa6='subj_code='+_0x6997a8+'&period_id='+_0x500b1a,_0x5024d1=await fetch(_0x3dc2a2+'/enrolled-courses/upload?'+_0x127aa6,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](_0x1ece1a)});if(!_0x5024d1['ok']){const _0x3aa4d6=await _0x5024d1['json']();throw _0x3aa4d6;}return _0x5024d1['json']();}catch(_0xff1795){throw _0xff1795;}}
28
+ async function uploadClassList(_0x65df4e,_0x5981e0,_0x5604d8,_0x1ff4cc){try{const _0x40b4c5=await convertToCSVFile(_0x5981e0),_0x3c17b6=await _0x40b4c5['text'](),_0x9b61f1=parseClassList(_0x3c17b6),_0x4053c9='subj_code='+_0x5604d8+'&period_id='+_0x1ff4cc,_0x5843f7=await fetch(_0x65df4e+'/enrolled-courses/upload?'+_0x4053c9,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](_0x9b61f1)});if(!_0x5843f7['ok']){const _0x326d07=await _0x5843f7['json']();throw _0x326d07;}return _0x5843f7['json']();}catch(_0x245f61){throw _0x245f61;}}
29
29
 
30
- function parseAssessmentCsv(_0xf43657){const {data:_0x4b7e7c}=_0x2c16b2['parse'](_0xf43657,{'skipEmptyLines':!![]}),_0xfd28d=_0x4b7e7c['filter'](_0x4434aa=>_0x4434aa['length']>0x0),_0x487297=_0xfd28d['find'](_0x18a84e=>_0x18a84e['some'](_0x312b9f=>_0x312b9f?.['includes']('Faculty'))),_0x4c797f=_0x487297?_0x487297['findIndex'](_0x5ee1b3=>_0x5ee1b3?.['includes']('Faculty')):-1,_0x599850=_0x4c797f!==-1&&_0x487297?_0x487297[_0x4c797f+0x2]?.['replace'](/"/g,'')['trim']()??'':'',_0x5570fe=_0xfd28d['find'](_0x65bab4=>_0x65bab4['some'](_0x31ebcb=>_0x31ebcb?.['includes']('Semester'))),_0x2a7703=_0x5570fe?_0x5570fe['findIndex'](_0x24d52a=>_0x24d52a?.['includes']('Semester')):-1,_0x3e89ea=_0x2a7703!==-1&&_0x5570fe?_0x5570fe[_0x2a7703+0x2]?.['trim']()??'':'',_0x39b823=_0x3e89ea['includes']('1st')?0x1:_0x3e89ea['includes']('2nd')?0x2:0x0,_0x2e24d2=_0xfd28d['find'](_0x5a2af9=>_0x5a2af9['some'](_0x484aa4=>_0x484aa4?.['includes']('Course\x20&\x20Sec'))),_0x1d9df2=_0x2e24d2?_0x2e24d2['findIndex'](_0x13ed56=>_0x13ed56?.['includes']('Course\x20&\x20Sec')):-1,_0x166d02=_0x1d9df2!==-1&&_0x2e24d2?_0x2e24d2[_0x1d9df2+0x2]?.['trim']()??'':'';let _0x20c39c='',_0x58eb99='';if(_0x166d02){const _0x14e457=_0x166d02['match'](/^([A-Za-z0-9]+)-?([A-Za-z]+)?/);_0x14e457&&(_0x20c39c=_0x14e457[0x1]??'',_0x14e457[0x2]&&(_0x58eb99=_0x14e457[0x2]['replace'](/^OC/i,'')));}const _0xf2357a=_0xfd28d['find'](_0x4f4376=>_0x4f4376['some'](_0x166bbf=>_0x166bbf?.['includes']('School\x20Year'))),_0x4befcf=_0xf2357a?_0xf2357a['findIndex'](_0x973e5e=>_0x973e5e?.['includes']('School\x20Year')):-1,_0x144357=_0x4befcf!==-1&&_0xf2357a?_0xf2357a[_0x4befcf+0x2]?.['trim']()??'':'';let _0xa78947=0x0;if(_0x144357){const _0x4170d3=_0x144357['match'](/(\d{4})-(\d{4})/);if(_0x4170d3){const _0x4eff7f=(_0x4170d3[0x1]??'')['slice'](0x2),_0x4afa2f=(_0x4170d3[0x2]??'')['slice'](0x2);_0xa78947=parseInt(_0x4eff7f+_0x4afa2f,0xa);}}const _0x1b4dbe={'faculty':_0x599850,'course':_0x20c39c,'section':_0x58eb99,'semester':_0x39b823,'sy':_0xa78947},_0x4fe180=_0xfd28d['findIndex'](_0x40c55e=>_0x40c55e['some'](_0x4c0a3c=>_0x4c0a3c?.['trim']()==='CO\x20#'));if(_0x4fe180===-1)throw new Error('CO\x20header\x20row\x20not\x20found\x20in\x20CSV');const _0x3246cc=_0xfd28d[_0x4fe180+0x1];if(!_0x3246cc)throw new Error('ILO\x20header\x20row\x20not\x20found\x20in\x20CSV');const _0x171d3e={};let _0x4de145=0x1,_0x50d6d7=0x1;for(let _0xe70431=0x3;_0xe70431<_0x3246cc['length'];_0xe70431++){const _0x1dfc61=_0x3246cc[_0xe70431];if(!_0x1dfc61)continue;const _0x3513e9='co'+_0x4de145;if(!_0x171d3e[_0x3513e9])_0x171d3e[_0x3513e9]=[];_0x171d3e[_0x3513e9]['push']('ilo'+_0x50d6d7),_0x50d6d7++,_0x50d6d7>0x3&&(_0x4de145++,_0x50d6d7=0x1);}const _0xcc2b7c=_0xfd28d['findIndex'](_0x56048b=>_0x56048b['includes']('Name\x20of\x20Students'));if(_0xcc2b7c===-1)throw new Error('Student\x20header\x20row\x20not\x20found\x20in\x20CSV');const _0x4f8a6a=_0xfd28d[_0xcc2b7c];if(!_0x4f8a6a)throw new Error('Student\x20header\x20row\x20is\x20missing');const _0x3fe732=_0x4f8a6a['findIndex'](_0x3a2cea=>_0x3a2cea?.['includes']('Name\x20of\x20Students'));if(_0x3fe732===-1)throw new Error('Name\x20of\x20Students\x20column\x20not\x20found\x20in\x20CSV');const _0x4c68d3=_0x3fe732+0x2,_0x266ca0=[];for(let _0x45f415=_0xcc2b7c+0x1;_0x45f415<_0xfd28d['length'];_0x45f415++){const _0x39dafe=_0xfd28d[_0x45f415];if(!_0x39dafe)continue;if(_0x39dafe['some'](_0x53ab35=>_0x53ab35?.['toUpperCase']()['includes']('TOTAL\x20STUDENTS')||_0x53ab35?.['toUpperCase']()['includes']('ACHIEVED\x20THE\x20MINIMUM')||_0x53ab35?.['toUpperCase']()['includes']('INACTIVE')||_0x53ab35?.['toUpperCase']()['includes']('AVERAGE')))continue;if(!_0x39dafe[_0x3fe732])continue;const _0x47ad45=_0x39dafe[_0x3fe732]['replace'](/"/g,'')['trim'](),_0x2a63f3=_0x39dafe['slice'](_0x4c68d3)['map'](_0x26df65=>_0x26df65===null?null:!isNaN(Number(_0x26df65))?parseFloat(_0x26df65):0x0);let _0x2a2eb3=0x0;const _0x1c9d78={};Object['entries'](_0x171d3e)['forEach'](([_0x12c646,_0x30437b])=>{const _0x29ee68={};_0x30437b['forEach'](_0x5da037=>{_0x29ee68[_0x5da037]=_0x2a63f3[_0x2a2eb3]??0x0,_0x2a2eb3++;}),_0x1c9d78[_0x12c646]={'transmuted_score':_0x29ee68};}),_0x266ca0['push']({'student_name':_0x47ad45,'coaep':_0x1c9d78});}const _0x21c829=_0xfd28d['find'](_0x323824=>_0x323824['some'](_0x5977a5=>_0x5977a5?.['includes']('ACHIEVED\x20THE\x20MINIMUM'))),_0x7e263b=_0xfd28d['find'](_0x176930=>_0x176930['some'](_0x6ac965=>_0x6ac965?.['includes']('AVERAGE'))),_0x34c4d1=_0x21c829?_0x21c829['slice'](_0x4c68d3)['map'](_0x1e3ea2=>_0x1e3ea2&&!isNaN(Number(_0x1e3ea2))?parseInt(_0x1e3ea2):0x0):[],_0x45c279=_0x7e263b?_0x7e263b['slice'](_0x4c68d3)['map'](_0x4adc28=>_0x4adc28&&_0x4adc28!=='#DIV/0!'&&!isNaN(Number(_0x4adc28))?parseInt(_0x4adc28):0x0):[],_0x5e6dcb={};let _0x23e3ed=0x0;return Object['entries'](_0x171d3e)['forEach'](([_0x3ed63d,_0x5cb280])=>{if(!_0x5e6dcb[_0x3ed63d])_0x5e6dcb[_0x3ed63d]={};_0x5cb280['forEach'](_0x203b27=>{_0x5e6dcb[_0x3ed63d][_0x203b27]={'achievedMinimum':_0x34c4d1[_0x23e3ed]??0x0,'average':_0x45c279[_0x23e3ed]??0x0},_0x23e3ed++;});}),{'assessmentData':{'classAssignment':_0x1b4dbe,'student':_0x266ca0,'total':_0x5e6dcb}};}
30
+ function parseAssessmentCsv(_0x446725){const {data:_0x36a5dd}=_0x4d14f7['parse'](_0x446725,{'skipEmptyLines':!![]}),_0x2cadcb=_0x36a5dd['filter'](_0x219ed1=>_0x219ed1['length']>0x0),_0x58397e=_0x2cadcb['find'](_0x23893d=>_0x23893d['some'](_0x1c619b=>_0x1c619b?.['includes']('Faculty'))),_0x819cc=_0x58397e?_0x58397e['findIndex'](_0xcf18db=>_0xcf18db?.['includes']('Faculty')):-1,_0x136c1e=_0x819cc!==-1&&_0x58397e?_0x58397e[_0x819cc+0x2]?.['replace'](/"/g,'')['trim']()??'':'',_0x31fd30=_0x2cadcb['find'](_0x5b6fd7=>_0x5b6fd7['some'](_0x1286f0=>_0x1286f0?.['includes']('Semester'))),_0x38f9d5=_0x31fd30?_0x31fd30['findIndex'](_0x6435c6=>_0x6435c6?.['includes']('Semester')):-1,_0x5295ac=_0x38f9d5!==-1&&_0x31fd30?_0x31fd30[_0x38f9d5+0x2]?.['trim']()??'':'',_0x9b42bc=_0x5295ac['includes']('1st')?0x1:_0x5295ac['includes']('2nd')?0x2:0x0,_0x565f9a=_0x2cadcb['find'](_0x23e072=>_0x23e072['some'](_0x5ca548=>_0x5ca548?.['includes']('Course\x20&\x20Sec'))),_0x1132d0=_0x565f9a?_0x565f9a['findIndex'](_0x26bdc9=>_0x26bdc9?.['includes']('Course\x20&\x20Sec')):-1,_0x4c8a65=_0x1132d0!==-1&&_0x565f9a?_0x565f9a[_0x1132d0+0x2]?.['trim']()??'':'';let _0x5cad55='',_0x476578='';if(_0x4c8a65){const _0x3c6844=_0x4c8a65['match'](/^([A-Za-z0-9]+)-?([A-Za-z]+)?/);_0x3c6844&&(_0x5cad55=_0x3c6844[0x1]??'',_0x3c6844[0x2]&&(_0x476578=_0x3c6844[0x2]['replace'](/^OC/i,'')));}const _0x52b818=_0x2cadcb['find'](_0x12ad68=>_0x12ad68['some'](_0x2fb100=>_0x2fb100?.['includes']('School\x20Year'))),_0x475a80=_0x52b818?_0x52b818['findIndex'](_0x44e632=>_0x44e632?.['includes']('School\x20Year')):-1,_0x25e41c=_0x475a80!==-1&&_0x52b818?_0x52b818[_0x475a80+0x2]?.['trim']()??'':'';let _0x23462a=0x0;if(_0x25e41c){const _0x437141=_0x25e41c['match'](/(\d{4})-(\d{4})/);if(_0x437141){const _0x5030ab=(_0x437141[0x1]??'')['slice'](0x2),_0x3ef955=(_0x437141[0x2]??'')['slice'](0x2);_0x23462a=parseInt(_0x5030ab+_0x3ef955,0xa);}}const _0x30f35b={'faculty':_0x136c1e,'course':_0x5cad55,'section':_0x476578,'semester':_0x9b42bc,'sy':_0x23462a},_0x5c0733=_0x2cadcb['findIndex'](_0x1a1eb4=>_0x1a1eb4['some'](_0x211621=>_0x211621?.['trim']()==='CO\x20#'));if(_0x5c0733===-1)throw new Error('CO\x20header\x20row\x20not\x20found\x20in\x20CSV');const _0x59c01f=_0x2cadcb[_0x5c0733+0x1];if(!_0x59c01f)throw new Error('ILO\x20header\x20row\x20not\x20found\x20in\x20CSV');const _0x50e9dd={};let _0x16ddf5=0x1,_0x124f11=0x1;for(let _0x4e01e8=0x3;_0x4e01e8<_0x59c01f['length'];_0x4e01e8++){const _0x231b80=_0x59c01f[_0x4e01e8];if(!_0x231b80)continue;const _0xb43c93='co'+_0x16ddf5;if(!_0x50e9dd[_0xb43c93])_0x50e9dd[_0xb43c93]=[];_0x50e9dd[_0xb43c93]['push']('ilo'+_0x124f11),_0x124f11++,_0x124f11>0x3&&(_0x16ddf5++,_0x124f11=0x1);}const _0x471ee7=_0x2cadcb['findIndex'](_0x108ed7=>_0x108ed7['includes']('Name\x20of\x20Students'));if(_0x471ee7===-1)throw new Error('Student\x20header\x20row\x20not\x20found\x20in\x20CSV');const _0x59ba6b=_0x2cadcb[_0x471ee7];if(!_0x59ba6b)throw new Error('Student\x20header\x20row\x20is\x20missing');const _0xdc1ff8=_0x59ba6b['findIndex'](_0x4971f7=>_0x4971f7?.['includes']('Name\x20of\x20Students'));if(_0xdc1ff8===-1)throw new Error('Name\x20of\x20Students\x20column\x20not\x20found\x20in\x20CSV');const _0xbaf48e=_0xdc1ff8+0x2,_0x236d29=[];for(let _0x419c70=_0x471ee7+0x1;_0x419c70<_0x2cadcb['length'];_0x419c70++){const _0xe85f64=_0x2cadcb[_0x419c70];if(!_0xe85f64)continue;if(_0xe85f64['some'](_0xeb7ecd=>_0xeb7ecd?.['toUpperCase']()['includes']('TOTAL\x20STUDENTS')||_0xeb7ecd?.['toUpperCase']()['includes']('ACHIEVED\x20THE\x20MINIMUM')||_0xeb7ecd?.['toUpperCase']()['includes']('INACTIVE')||_0xeb7ecd?.['toUpperCase']()['includes']('AVERAGE')))continue;if(!_0xe85f64[_0xdc1ff8])continue;const _0x1afbbe=_0xe85f64[_0xdc1ff8]['replace'](/"/g,'')['trim'](),_0x209bb8=_0xe85f64['slice'](_0xbaf48e)['map'](_0x4752a9=>_0x4752a9===null?null:!isNaN(Number(_0x4752a9))?parseFloat(_0x4752a9):0x0);let _0x500792=0x0;const _0x31774d={};Object['entries'](_0x50e9dd)['forEach'](([_0x9675df,_0x19cbb1])=>{const _0x5a11e2={};_0x19cbb1['forEach'](_0x257766=>{_0x5a11e2[_0x257766]=_0x209bb8[_0x500792]??0x0,_0x500792++;}),_0x31774d[_0x9675df]={'transmuted_score':_0x5a11e2};}),_0x236d29['push']({'student_name':_0x1afbbe,'coaep':_0x31774d});}const _0xf840a0=_0x2cadcb['find'](_0x1de6b2=>_0x1de6b2['some'](_0x3691da=>_0x3691da?.['includes']('ACHIEVED\x20THE\x20MINIMUM'))),_0x6f1f6c=_0x2cadcb['find'](_0x401d70=>_0x401d70['some'](_0x4c132f=>_0x4c132f?.['includes']('AVERAGE'))),_0x2d4efc=_0xf840a0?_0xf840a0['slice'](_0xbaf48e)['map'](_0x599f2a=>_0x599f2a&&!isNaN(Number(_0x599f2a))?parseInt(_0x599f2a):0x0):[],_0x475bd0=_0x6f1f6c?_0x6f1f6c['slice'](_0xbaf48e)['map'](_0x4cd253=>_0x4cd253&&_0x4cd253!=='#DIV/0!'&&!isNaN(Number(_0x4cd253))?parseInt(_0x4cd253):0x0):[],_0x414367={};let _0x4c358e=0x0;return Object['entries'](_0x50e9dd)['forEach'](([_0x1892c2,_0x5c7965])=>{if(!_0x414367[_0x1892c2])_0x414367[_0x1892c2]={};_0x5c7965['forEach'](_0x1993f6=>{_0x414367[_0x1892c2][_0x1993f6]={'achievedMinimum':_0x2d4efc[_0x4c358e]??0x0,'average':_0x475bd0[_0x4c358e]??0x0},_0x4c358e++;});}),{'assessmentData':{'classAssignment':_0x30f35b,'student':_0x236d29,'total':_0x414367}};}
31
31
 
32
- async function uploadAssessmentData(_0x5232b0,_0x507718){try{const _0x446223=await convertToCSVFile(_0x507718),_0x34e68c=await _0x446223['text'](),_0x562ac6=parseAssessmentCsv(_0x34e68c),_0x3e8f98=await fetch(_0x5232b0+'/assessment-data/upload',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](_0x562ac6)});if(!_0x3e8f98['ok']){const _0x16cd1e=await _0x3e8f98['json']();throw _0x16cd1e;}return _0x3e8f98['json']();}catch(_0x42f3c0){throw _0x42f3c0;}}
32
+ async function uploadAssessmentData(_0x56b849,_0x409d15){try{const _0x5ab5dd=await convertToCSVFile(_0x409d15),_0xc20e9f=await _0x5ab5dd['text'](),_0x2a8d65=parseAssessmentCsv(_0xc20e9f),_0x79ce51=await fetch(_0x56b849+'/assessment-data/upload',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](_0x2a8d65)});if(!_0x79ce51['ok']){const _0x3d5897=await _0x79ce51['json']();throw _0x3d5897;}return _0x79ce51['json']();}catch(_0xb509e9){throw _0xb509e9;}}
33
33
 
34
- async function uploadDeptFaculty(_0x27392f,_0xfbe46f){try{const _0x57fd3a=await convertToCSVFile(_0xfbe46f),_0x811d44=new FormData();_0x811d44['append']('csvFile',_0x57fd3a);const _0x16505b=await fetch(_0x27392f+'/dept-faculties/upload',{'method':'POST','body':_0x811d44});if(!_0x16505b['ok']){const _0x3b32a8=await _0x16505b['json']();throw _0x3b32a8;}return _0x16505b['json']();}catch(_0x1ab2c4){throw _0x1ab2c4;}}
34
+ async function uploadDeptFaculty(_0x326300,_0x34a24e){try{const _0x2f5a77=await convertToCSVFile(_0x34a24e),_0x15de9c=new FormData();_0x15de9c['append']('csvFile',_0x2f5a77);const _0x21a494=await fetch(_0x326300+'/dept-faculties/upload',{'method':'POST','body':_0x15de9c});if(!_0x21a494['ok']){const _0x328903=await _0x21a494['json']();throw _0x328903;}return _0x21a494['json']();}catch(_0x52f1e7){throw _0x52f1e7;}}
35
35
 
36
- const HEADERS={'po':['program\x20outcome','po\x20statement','outcome\x20statement'],'tl':['taxonomy','level'],'pi':['performance\x20indicator'],'fc':['formative'],'sc':['summative'],'at':['assessment\x20tool','assessment\x20method','tool'],'pt':['performance\x20target','target','passing']};function getPoaepHeader(_0xf20c19){let _0x390f9a={'headerIdx':-1,'poIdx':-1,'tlIdx':-1,'piIdx':-1,'fcIdx':-1,'scIdx':-1,'atIdx':-1,'ptIdx':-1};for(let _0x5740d0=0x0;_0x5740d0<Math['min'](_0xf20c19['length'],0x14);_0x5740d0++){const _0x4b8e93=(_0xf20c19[_0x5740d0]??[])['map'](_0x41bf08=>_0x41bf08['toLowerCase']()['trim']()),_0x14d4ae=_0x4b8e93['findIndex'](_0x503f68=>HEADERS['po']['some'](_0x1d6fef=>_0x503f68['toLowerCase']()['includes'](_0x1d6fef))),_0x5288a7=_0x4b8e93['findIndex'](_0x1bfef0=>HEADERS['tl']['some'](_0x339408=>_0x1bfef0['toLowerCase']()['includes'](_0x339408))),_0xb7b6d1=_0x4b8e93['findIndex'](_0x341da8=>HEADERS['pi']['some'](_0x383a7a=>_0x341da8['toLowerCase']()['includes'](_0x383a7a))),_0x47aeea=_0x4b8e93['findIndex'](_0xa3c0b8=>HEADERS['fc']['some'](_0x20ccd9=>_0xa3c0b8['toLowerCase']()['includes'](_0x20ccd9))),_0x19cc28=_0x4b8e93['findIndex'](_0x5270=>HEADERS['sc']['some'](_0x2e6cd5=>_0x5270['toLowerCase']()['includes'](_0x2e6cd5))),_0x3c2c55=_0x4b8e93['findIndex'](_0x3df52d=>HEADERS['at']['some'](_0x1078b6=>_0x3df52d['toLowerCase']()['includes'](_0x1078b6))),_0x3ce1ad=_0x4b8e93['findIndex'](_0x46857f=>HEADERS['pt']['some'](_0x2b4d0=>_0x46857f['toLowerCase']()['includes'](_0x2b4d0))),_0x2a882b=[_0x14d4ae,_0x5288a7,_0xb7b6d1,_0x47aeea,_0x19cc28,_0x3c2c55,_0x3ce1ad]['filter'](_0x45de51=>_0x45de51!==-1)['length'];if(_0x2a882b>=0x3){_0x390f9a={'headerIdx':_0x5740d0,'poIdx':_0x14d4ae,'tlIdx':_0x5288a7,'piIdx':_0xb7b6d1,'fcIdx':_0x47aeea,'scIdx':_0x19cc28,'atIdx':_0x3c2c55,'ptIdx':_0x3ce1ad};break;}}if(_0x390f9a['headerIdx']===-1)throw new Error('No\x20valid\x20headers\x20found\x20in\x20POAEP\x20file.');return _0x390f9a;}
36
+ const HEADERS={'po':['program\x20outcome','po\x20statement','outcome\x20statement'],'tl':['taxonomy','level'],'pi':['performance\x20indicator'],'fc':['formative'],'sc':['summative'],'at':['assessment\x20tool','assessment\x20method','tool'],'pt':['performance\x20target','target','passing']};function getPoaepHeader(_0x39df05){let _0x31e5bf={'headerIdx':-1,'poIdx':-1,'tlIdx':-1,'piIdx':-1,'fcIdx':-1,'scIdx':-1,'atIdx':-1,'ptIdx':-1};for(let _0x2fe1e6=0x0;_0x2fe1e6<Math['min'](_0x39df05['length'],0x14);_0x2fe1e6++){const _0x1633f1=(_0x39df05[_0x2fe1e6]??[])['map'](_0x5c8500=>_0x5c8500['toLowerCase']()['trim']()),_0x30343d=_0x1633f1['findIndex'](_0x4083b5=>HEADERS['po']['some'](_0x21594a=>_0x4083b5['toLowerCase']()['includes'](_0x21594a))),_0xc1d0f2=_0x1633f1['findIndex'](_0x7cd2e9=>HEADERS['tl']['some'](_0x185237=>_0x7cd2e9['toLowerCase']()['includes'](_0x185237))),_0xdcc12=_0x1633f1['findIndex'](_0xf42742=>HEADERS['pi']['some'](_0x33db01=>_0xf42742['toLowerCase']()['includes'](_0x33db01))),_0xcef350=_0x1633f1['findIndex'](_0x2db493=>HEADERS['fc']['some'](_0x1bba23=>_0x2db493['toLowerCase']()['includes'](_0x1bba23))),_0xd8b7fc=_0x1633f1['findIndex'](_0x3c20ac=>HEADERS['sc']['some'](_0x24c188=>_0x3c20ac['toLowerCase']()['includes'](_0x24c188))),_0x26b731=_0x1633f1['findIndex'](_0x534e16=>HEADERS['at']['some'](_0x154189=>_0x534e16['toLowerCase']()['includes'](_0x154189))),_0x137345=_0x1633f1['findIndex'](_0x4b2dfa=>HEADERS['pt']['some'](_0x1526c0=>_0x4b2dfa['toLowerCase']()['includes'](_0x1526c0))),_0x2830b6=[_0x30343d,_0xc1d0f2,_0xdcc12,_0xcef350,_0xd8b7fc,_0x26b731,_0x137345]['filter'](_0x1724f8=>_0x1724f8!==-1)['length'];if(_0x2830b6>=0x3){_0x31e5bf={'headerIdx':_0x2fe1e6,'poIdx':_0x30343d,'tlIdx':_0xc1d0f2,'piIdx':_0xdcc12,'fcIdx':_0xcef350,'scIdx':_0xd8b7fc,'atIdx':_0x26b731,'ptIdx':_0x137345};break;}}if(_0x31e5bf['headerIdx']===-1)throw new Error('No\x20valid\x20headers\x20found\x20in\x20POAEP\x20file.');return _0x31e5bf;}
37
37
 
38
- const parseFormativeCourses=_0x1e4e4d=>{let _0xf754af=_0x1e4e4d['split'](',')['reduce']((_0x19c382,_0x15c880)=>{const _0x23aec2=_0x15c880['trim']();if(_0x23aec2)_0x19c382['push'](_0x23aec2);return _0x19c382;},[]);return _0xf754af;};
38
+ const parseFormativeCourses=_0x5b831c=>{let _0x1f1618=_0x5b831c['split'](',')['reduce']((_0x5031e6,_0x41fdb5)=>{const _0x425c3f=_0x41fdb5['trim']();if(_0x425c3f)_0x5031e6['push'](_0x425c3f);return _0x5031e6;},[]);return _0x1f1618;};
39
39
 
40
- const parsePOAEP=_0x31dbf8=>{try{const _0x305ff8=_0x2c16b2['parse'](_0x31dbf8,{'skipEmptyLines':![]})['data'],{headerIdx:_0x4f7179,poIdx:_0x21ab7e,tlIdx:_0x2bca00,piIdx:_0x39d7fb,fcIdx:_0x182975,scIdx:_0x38c88f,atIdx:_0x1c7d13,ptIdx:_0x1579c5}=getPoaepHeader(_0x305ff8),_0x48bdb2=[];let _0xc4852e={'po_desc':'','seq_no':0x0,'PerfIndicators':[]},_0x862024='',_0x40d6d2='',_0x54b9e6='';for(let _0x495f05=_0x4f7179+0x1;_0x495f05<_0x305ff8['length'];_0x495f05++){const _0x32bbf2=_0x305ff8[_0x495f05];if(!_0x32bbf2)break;const _0x39aaec=_0x32bbf2[_0x21ab7e]?.['trim']()||'';_0x39aaec!==''&&(_0xc4852e={'po_desc':_0x39aaec,'seq_no':_0xc4852e['seq_no']+0x1,'PerfIndicators':[]},_0x48bdb2['push'](_0xc4852e),_0x862024='',_0x40d6d2='',_0x54b9e6='');if(_0xc4852e['po_desc']==='')throw new Error('Invalid\x20Program\x20Outcome\x20at\x20row\x20'+_0x495f05+'.');const _0x19cab3=_0x32bbf2[_0x39d7fb]?.['trim']()||'';if(_0x19cab3==='')break;const _0x4d8099=_0x32bbf2[_0x182975]?.['trim']()||'';if(_0x4d8099==='')throw new Error('Empty\x20Formative\x20Courses\x20at\x20row\x20'+_0x495f05+'.');const _0x1b6fc3=_0x32bbf2[_0x38c88f]?.['trim']()||_0x862024;if(_0x1b6fc3==='')throw new Error('Empty\x20Summative\x20Course\x20at\x20row\x20'+_0x495f05+'.');_0x862024=_0x1b6fc3;const _0x534322=_0x32bbf2[_0x1c7d13]?.['trim']()||_0x40d6d2;if(_0x534322==='')throw new Error('Empty\x20Assessment\x20Tool\x20at\x20row\x20'+_0x495f05+'.');_0x40d6d2=_0x534322;const _0x954c16=_0x32bbf2[_0x1579c5]?.['trim']()||_0x54b9e6;if(_0x954c16==='')throw new Error('Empty\x20Performance\x20Target\x20at\x20row\x20'+_0x495f05+'.');_0x54b9e6=_0x954c16;const _0x33d028=parseFormativeCourses(_0x4d8099);if(_0x33d028['length']===0x0)throw new Error('Invalid\x20Formative\x20Courses\x20format\x20at\x20row\x20'+_0x495f05+'.');const _0xdfb051=performaceTarget(_0x954c16);if(!_0xdfb051['performance_target']||!_0xdfb051['passing_score'])throw new Error('Invalid\x20Performance\x20Targets\x20format\x20at\x20row\x20'+_0x495f05+'.');const _0x2c2dab={'pi_desc':_0x19cab3,'FormativeCourses':_0x33d028['map'](_0x1d3792=>({'course_id':_0x1d3792,'cognitive_level':0x0})),'SummativeCourse':{'course_id':_0x1b6fc3},'AssessmentTool':{'at_desc':_0x534322},'PerformanceTargets':{'target_percent':_0xdfb051['performance_target'],'min_score':_0xdfb051['passing_score']}};_0xc4852e['PerfIndicators']['push'](_0x2c2dab);}return {'success':!![],'message':'Successfully\x20parsed\x20POAEP\x20file.','data':{'POAEP':_0x48bdb2}};}catch(_0xef6815){return {'success':![],'error':_0xef6815 instanceof Error?_0xef6815['message']:_0xef6815,'message':'Please\x20ensure\x20the\x20file\x20follows\x20the\x20POAEP\x20template.'};}};
40
+ const parsePOAEP=_0x4d947e=>{try{const _0x2313c4=_0x4d14f7['parse'](_0x4d947e,{'skipEmptyLines':![]})['data'],{headerIdx:_0x112e22,poIdx:_0x113ffd,tlIdx:_0x12cdc6,piIdx:_0x41bf0d,fcIdx:_0x1aaf9a,scIdx:_0x37d6b3,atIdx:_0x33176f,ptIdx:_0x19b6d0}=getPoaepHeader(_0x2313c4),_0xf07ba9=[];let _0x32de96={'po_desc':'','seq_no':0x0,'PerfIndicators':[]},_0x2b062f='',_0x4bf855='',_0x87bc58='';for(let _0x20ae10=_0x112e22+0x1;_0x20ae10<_0x2313c4['length'];_0x20ae10++){const _0x42ae12=_0x2313c4[_0x20ae10];if(!_0x42ae12)break;const _0x136a74=_0x42ae12[_0x113ffd]?.['trim']()||'';_0x136a74!==''&&(_0x32de96={'po_desc':_0x136a74,'seq_no':_0x32de96['seq_no']+0x1,'PerfIndicators':[]},_0xf07ba9['push'](_0x32de96),_0x2b062f='',_0x4bf855='',_0x87bc58='');if(_0x32de96['po_desc']==='')throw new Error('Invalid\x20Program\x20Outcome\x20at\x20row\x20'+_0x20ae10+'.');const _0x10dca9=_0x42ae12[_0x41bf0d]?.['trim']()||'';if(_0x10dca9==='')break;const _0x2fc350=_0x42ae12[_0x1aaf9a]?.['trim']()||'';if(_0x2fc350==='')throw new Error('Empty\x20Formative\x20Courses\x20at\x20row\x20'+_0x20ae10+'.');const _0x171916=_0x42ae12[_0x37d6b3]?.['trim']()||_0x2b062f;if(_0x171916==='')throw new Error('Empty\x20Summative\x20Course\x20at\x20row\x20'+_0x20ae10+'.');_0x2b062f=_0x171916;const _0x306bed=_0x42ae12[_0x33176f]?.['trim']()||_0x4bf855;if(_0x306bed==='')throw new Error('Empty\x20Assessment\x20Tool\x20at\x20row\x20'+_0x20ae10+'.');_0x4bf855=_0x306bed;const _0x2ab42c=_0x42ae12[_0x19b6d0]?.['trim']()||_0x87bc58;if(_0x2ab42c==='')throw new Error('Empty\x20Performance\x20Target\x20at\x20row\x20'+_0x20ae10+'.');_0x87bc58=_0x2ab42c;const _0x7ac250=parseFormativeCourses(_0x2fc350);if(_0x7ac250['length']===0x0)throw new Error('Invalid\x20Formative\x20Courses\x20format\x20at\x20row\x20'+_0x20ae10+'.');const _0xa778c5=performaceTarget(_0x2ab42c);if(!_0xa778c5['performance_target']||!_0xa778c5['passing_score'])throw new Error('Invalid\x20Performance\x20Targets\x20format\x20at\x20row\x20'+_0x20ae10+'.');const _0x267b01={'pi_desc':_0x10dca9,'FormativeCourses':_0x7ac250['map'](_0x3e9024=>({'course_id':_0x3e9024,'cognitive_level':0x0})),'SummativeCourse':{'course_id':_0x171916},'AssessmentTool':{'at_desc':_0x306bed},'PerformanceTargets':{'target_percent':_0xa778c5['performance_target'],'min_score':_0xa778c5['passing_score']}};_0x32de96['PerfIndicators']['push'](_0x267b01);}return {'success':!![],'message':'Successfully\x20parsed\x20POAEP\x20file.','data':{'POAEP':_0xf07ba9}};}catch(_0x56e886){return {'success':![],'error':_0x56e886 instanceof Error?_0x56e886['message']:_0x56e886,'message':'Please\x20ensure\x20the\x20file\x20follows\x20the\x20POAEP\x20template.'};}};
41
41
 
42
- async function uploadPOAEP(_0x5d5c1e,_0x3bce65,_0x5e621c,_0x98e11f,_0x59b274){try{const _0x3fef48=await convertToCSVFile(_0x3bce65),_0x4bacfa=await _0x3fef48['text'](),_0x133b50=parsePOAEP(_0x4bacfa),_0x36710f=await fetch(_0x5d5c1e+'/program-outcomes/poaep/upload?curr_id='+_0x98e11f+'&period_id='+_0x59b274,{'method':'POST','headers':{'Content-Type':'application/json','Authorization':'Bearer\x20'+_0x5e621c},'credentials':'include','body':JSON['stringify'](_0x133b50)});if(!_0x36710f['ok']){const _0x5cc6a5=await _0x36710f['json']();throw _0x5cc6a5;}return _0x36710f['json']();}catch(_0x501625){throw _0x501625;}}
42
+ async function uploadPOAEP(_0x1b9a65,_0x28c2bd,_0x580487,_0x57c37f,_0x3cb306){try{const _0x3eb3fc=await convertToCSVFile(_0x28c2bd),_0x54c53e=await _0x3eb3fc['text'](),_0x2d9e40=parsePOAEP(_0x54c53e),_0x2008a1=await fetch(_0x1b9a65+'/program-outcomes/poaep/upload?curr_id='+_0x57c37f+'&period_id='+_0x3cb306,{'method':'POST','headers':{'Content-Type':'application/json','Authorization':'Bearer\x20'+_0x580487},'credentials':'include','body':JSON['stringify'](_0x2d9e40)});if(!_0x2008a1['ok']){const _0x5d1995=await _0x2008a1['json']();throw _0x5d1995;}return _0x2008a1['json']();}catch(_0x15f79d){throw _0x15f79d;}}
43
43
 
44
- const getAssessmentData=async _0x51b144=>{try{const _0x3de07f=await convertToCSVFile(_0x51b144),_0x2f14ed=await _0x3de07f['text'](),_0x63d18=parseAssessmentCsv(_0x2f14ed),_0x61a5ca={'success':!![],'message':'Successfully\x20parsed\x20Assessment\x20Data.','data':_0x63d18};return Promise['resolve'](_0x61a5ca);}catch(_0x16caa3){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Assessment\x20Data.','error':_0x16caa3});}};
44
+ const getAssessmentDataFromXLSX=async _0x387540=>{try{const _0x142fe2=await convertToCSVFile(_0x387540),_0x1f00a4=await _0x142fe2['text'](),_0x5e264d=parseAssessmentCsv(_0x1f00a4),_0x28ea14={'success':!![],'message':'Successfully\x20parsed\x20Assessment\x20Data.','data':_0x5e264d};return Promise['resolve'](_0x28ea14);}catch(_0x26a2d5){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Assessment\x20Data.','error':_0x26a2d5});}};
45
45
 
46
- const getClassList=async _0x256e4b=>{try{const _0x351fbf=await convertToCSVFile(_0x256e4b),_0x47d702=await _0x351fbf['text'](),_0x2599ce=parseClassList(_0x47d702),_0x39b263={'success':!![],'message':'Successfully\x20parsed\x20Class\x20List.','data':_0x2599ce};return Promise['resolve'](_0x39b263);}catch(_0xafbcf5){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Assessment\x20Data.','error':_0xafbcf5});}};
46
+ const getClassListFromXLSX=async _0xe0a81f=>{try{const _0x19d0a1=await convertToCSVFile(_0xe0a81f),_0x14b76a=await _0x19d0a1['text'](),_0x19db04=parseClassList(_0x14b76a),_0x311c2e={'success':!![],'message':'Successfully\x20parsed\x20Class\x20List.','data':_0x19db04};return Promise['resolve'](_0x311c2e);}catch(_0x6dc2c6){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Assessment\x20Data.','error':_0x6dc2c6});}};
47
47
 
48
- async function getCOAEP(_0x598c69){try{const _0x27347b=await convertToCSVFile(_0x598c69),_0x1d0ad0=await _0x27347b['text'](),_0x430902=parseCOAEP(_0x1d0ad0);if('error'in _0x430902)return Promise['reject']({'success':![],'message':_0x430902['message'],'error':_0x430902['error']});const _0x571994={'success':!![],'message':'Successfully\x20parsed\x20COAEP\x20Data.','data':_0x430902};return Promise['resolve'](_0x571994);}catch(_0x26afe0){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20COAEP\x20Data.','error':_0x26afe0});}}
48
+ async function getCOAEPFromXLSX(_0x2e4f30){try{const _0x45b287=await convertToCSVFile(_0x2e4f30),_0x5720c7=await _0x45b287['text'](),_0xc12b6f=parseCOAEP(_0x5720c7);if('error'in _0xc12b6f)return Promise['reject']({'success':![],'message':_0xc12b6f['message'],'error':_0xc12b6f['error']});const _0x3a1978={'success':!![],'message':'Successfully\x20parsed\x20COAEP\x20Data.','data':_0xc12b6f};return Promise['resolve'](_0x3a1978);}catch(_0x2830f8){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20COAEP\x20Data.','error':_0x2830f8});}}async function getCOAEPFromCSV(_0x2375ee){try{const _0xdd9da0=parseCOAEP(_0x2375ee);if(!_0xdd9da0['success'])return Promise['reject'](_0xdd9da0);return Promise['resolve'](_0xdd9da0);}catch(_0x9418d0){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20COAEP','error':_0x9418d0});}}
49
49
 
50
- const getCourseOffering=async _0x58b196=>{try{const _0x12f75b=await convertToCSVFile(_0x58b196),_0x27654=await _0x12f75b['text'](),_0x147679=parseCourseOffering(_0x27654),_0x54b9de={'success':!![],'message':'Successfully\x20parsed\x20Course\x20Offering.','data':{'courseOfferings':_0x147679}};return Promise['resolve'](_0x54b9de);}catch(_0x36a9df){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Course\x20Offering.','error':_0x36a9df});}};
50
+ const getCourseOfferingFromXLSX=async _0x1f47b5=>{try{const _0x118b61=await convertToCSVFile(_0x1f47b5),_0x1d936e=await _0x118b61['text'](),_0x17af45=parseCourseOffering(_0x1d936e),_0x487fa7={'success':!![],'message':'Successfully\x20parsed\x20Course\x20Offering.','data':{'courseOfferings':_0x17af45}};return Promise['resolve'](_0x487fa7);}catch(_0x1d63be){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Course\x20Offering.','error':_0x1d63be});}};
51
51
 
52
- const getCurriculum=async _0x403bd8=>{try{const _0x536ea7=await convertToCSVFile(_0x403bd8),_0x3f30fc=await _0x536ea7['text'](),_0x6dce8f=parseCurriculum(_0x3f30fc),_0x46e1b3={'success':!![],'message':'Successfully\x20parsed\x20Curriculum.','data':{'curriculums':_0x6dce8f}};return Promise['resolve'](_0x46e1b3);}catch(_0x3f74d9){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Curriculum.','error':_0x3f74d9});}};
52
+ const getCurriculumFromXLSX=async _0x560bea=>{try{const _0x26439d=await convertToCSVFile(_0x560bea),_0x25735f=await _0x26439d['text'](),_0x6a12da=parseCurriculum(_0x25735f),_0x231560={'success':!![],'message':'Successfully\x20parsed\x20Curriculum.','data':{'curriculums':_0x6a12da}};return Promise['resolve'](_0x231560);}catch(_0x17c5b8){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Curriculum.','error':_0x17c5b8});}};
53
53
 
54
- const getPOAEP=async _0x24f585=>{try{const _0x272fc1=await convertToCSVFile(_0x24f585),_0x53f789=await _0x272fc1['text'](),_0x327618=parsePOAEP(_0x53f789);if(!_0x327618['success'])return Promise['reject'](_0x327618);return Promise['resolve'](_0x327618);}catch(_0x5d4034){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20POAEP.','error':_0x5d4034});}};
54
+ const getPOAEPFromXLSX=async _0x380272=>{try{const _0x1960de=await convertToCSVFile(_0x380272),_0x3279e4=await _0x1960de['text'](),_0x31cd40=parsePOAEP(_0x3279e4);if(!_0x31cd40['success'])return Promise['reject'](_0x31cd40);return Promise['resolve'](_0x31cd40);}catch(_0x2e3947){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20POAEP.','error':_0x2e3947});}};const getPOAEPFromCSV=async _0x57af9b=>{try{const _0x11ece6=parsePOAEP(_0x57af9b);if(!_0x11ece6['success'])return Promise['reject'](_0x11ece6);return Promise['resolve'](_0x11ece6);}catch(_0x2bba98){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20POAEP','error':_0x2bba98});}};
55
55
 
56
- const getDeptFaculty=async _0x385a49=>{try{const _0x2dfaf9=await convertToCSVFile(_0x385a49),_0x42c707=new FormData();_0x42c707['append']('csvFile',_0x2dfaf9);const _0x398c7a={'success':!![],'message':'Successfully\x20parsed\x20Dept\x20Faculty.','data':{'body':_0x42c707}};return Promise['resolve'](_0x398c7a);}catch(_0x5dc0c5){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Dept\x20Faculty.','error':_0x5dc0c5});}};
56
+ const getDeptFacultyFromXLSX=async _0x26936d=>{try{const _0x42c031=await convertToCSVFile(_0x26936d),_0x3e792c=new FormData();_0x3e792c['append']('csvFile',_0x42c031);const _0x57ed38={'success':!![],'message':'Successfully\x20parsed\x20Dept\x20Faculty.','data':{'body':_0x3e792c}};return Promise['resolve'](_0x57ed38);}catch(_0x47014d){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Dept\x20Faculty.','error':_0x47014d});}};
57
57
 
58
- const getEnrolledStudents=async _0x2d9a01=>{try{const _0x3355cc=await convertToCSVFile(_0x2d9a01),_0x1756e4=new FormData();_0x1756e4['append']('csvFile',_0x3355cc);const _0x4dc436={'success':!![],'message':'Successfully\x20parsed\x20Enrolled\x20Students.','data':{'body':_0x1756e4}};return Promise['resolve'](_0x4dc436);}catch(_0x52c5b1){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Enrolled\x20Students.','error':_0x52c5b1});}};
58
+ const getEnrolledStudentsFromXLSX=async _0x5a6e16=>{try{const _0x4d9fc8=await convertToCSVFile(_0x5a6e16),_0x486f74=new FormData();_0x486f74['append']('csvFile',_0x4d9fc8);const _0x396600={'success':!![],'message':'Successfully\x20parsed\x20Enrolled\x20Students.','data':{'body':_0x486f74}};return Promise['resolve'](_0x396600);}catch(_0x40e73d){return Promise['reject']({'success':![],'message':'Error\x20parsing\x20Enrolled\x20Students.','error':_0x40e73d});}};
59
59
 
60
- class Client{['BASE_URL'];constructor(_0x4adee4){this['BASE_URL']=_0x4adee4;}['Parser'](){return {'curriculum':async _0x3beefd=>{const _0x8176fa=await uploadCurriculum(this['BASE_URL'],_0x3beefd);return _0x8176fa;},'courseOffering':async _0x8e7de7=>{const _0x38b169=await uploadCourseOffering(this['BASE_URL'],_0x8e7de7);return _0x38b169;},'coaep':async(_0x55df1b,_0x290b47)=>{const _0x3b5281=await uploadCOAEP(this['BASE_URL'],_0x55df1b,_0x290b47);return _0x3b5281;},'enrolledStudent':async _0x3c423e=>{const _0x4e6d2d=await uploadEnrolledStudent(this['BASE_URL'],_0x3c423e);return _0x4e6d2d;},'classlist':async(_0x446819,_0x40de2a,_0x121a5a)=>{const _0x1c5f71=await uploadClassList(this['BASE_URL'],_0x446819,_0x40de2a,_0x121a5a);return _0x1c5f71;},'assessmentData':async _0x3c382a=>{const _0xb2ea85=await uploadAssessmentData(this['BASE_URL'],_0x3c382a);return _0xb2ea85;},'deptFaculty':async _0x4ea5d3=>{const _0x5f3ed3=await uploadDeptFaculty(this['BASE_URL'],_0x4ea5d3);return _0x5f3ed3;},'poaep':async(_0x3a7a14,_0x3fb7bd,_0x122410,_0x5364b4)=>{const _0x2ea67d=await uploadPOAEP(this['BASE_URL'],_0x3a7a14,_0x3fb7bd,_0x122410,_0x5364b4);return _0x2ea67d;},'getAssessmentData':getAssessmentData,'getClassList':getClassList,'getCOAEP':getCOAEP,'getCourseOffering':getCourseOffering,'getCurriculum':getCurriculum,'getPOAEP':getPOAEP,'getDeptFaculty':getDeptFaculty,'getEnrolledStudents':getEnrolledStudents};}}
60
+ class Client{['BASE_URL'];constructor(_0x16d716){this['BASE_URL']=_0x16d716;}['Parser'](){return {'curriculum':async _0x4d2d34=>{const _0x3adcdd=await uploadCurriculum(this['BASE_URL'],_0x4d2d34);return _0x3adcdd;},'courseOffering':async _0x3a31ed=>{const _0x27e920=await uploadCourseOffering(this['BASE_URL'],_0x3a31ed);return _0x27e920;},'coaep':async(_0x39f30e,_0x4f9212)=>{const _0xeb67dc=await uploadCOAEP(this['BASE_URL'],_0x39f30e,_0x4f9212);return _0xeb67dc;},'enrolledStudent':async _0x193966=>{const _0x514d9d=await uploadEnrolledStudent(this['BASE_URL'],_0x193966);return _0x514d9d;},'classlist':async(_0x20b849,_0x3f5d48,_0x42a35b)=>{const _0x5c3168=await uploadClassList(this['BASE_URL'],_0x20b849,_0x3f5d48,_0x42a35b);return _0x5c3168;},'assessmentData':async _0x382dba=>{const _0x5b3a57=await uploadAssessmentData(this['BASE_URL'],_0x382dba);return _0x5b3a57;},'deptFaculty':async _0x2749c0=>{const _0x6b5ed5=await uploadDeptFaculty(this['BASE_URL'],_0x2749c0);return _0x6b5ed5;},'poaep':async(_0x5601ac,_0x26690a,_0x415690,_0x4067ee)=>{const _0xd13e4e=await uploadPOAEP(this['BASE_URL'],_0x5601ac,_0x26690a,_0x415690,_0x4067ee);return _0xd13e4e;},'getAssessmentDataFromXLSX':getAssessmentDataFromXLSX,'getClassListFromXLSX':getClassListFromXLSX,'getCOAEPFromCSV':getCOAEPFromCSV,'getCOAEPFromXLSX':getCOAEPFromXLSX,'getCourseOfferingFromXLSX':getCourseOfferingFromXLSX,'getCurriculumFromXLSX':getCurriculumFromXLSX,'getPOAEPFromCSV':getPOAEPFromCSV,'getPOAEPFromXLSX':getPOAEPFromXLSX,'getDeptFacultyFromXLSX':getDeptFacultyFromXLSX,'getEnrolledStudentsFromXLSX':getEnrolledStudentsFromXLSX};}}
61
61
 
62
62
  export { Client as default };
package/main.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { getCOAEP } from "./payloads/getCOAEP";
1
+ import { getCOAEPFromCSV, getCOAEPFromXLSX } from "./payloads/getCOAEP";
2
2
  export default class Client {
3
3
  private BASE_URL;
4
4
  constructor(url: string);
@@ -25,30 +25,34 @@ export default class Client {
25
25
  * Functions that parse then return the payload
26
26
  * instead of directly calling the backend and returning the response
27
27
  */
28
- getAssessmentData: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
28
+ getAssessmentDataFromXLSX: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
29
29
  assessmentData: import("./types/assessmentdata").AssessmentData;
30
30
  }>>;
31
- getClassList: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
31
+ getClassListFromXLSX: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
32
32
  enrolledCourses: import("./types/classList").classList[];
33
33
  }>>;
34
- getCOAEP: typeof getCOAEP;
35
- getCourseOffering: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
34
+ getCOAEPFromCSV: typeof getCOAEPFromCSV;
35
+ getCOAEPFromXLSX: typeof getCOAEPFromXLSX;
36
+ getCourseOfferingFromXLSX: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
36
37
  courseOfferings: import("./types/courseOffering").CourseOffering[];
37
38
  }>>;
38
- getCurriculum: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
39
+ getCurriculumFromXLSX: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
39
40
  curriculums: import("./types/curriculum").CurriculumCourses[];
40
41
  }>>;
41
- getPOAEP: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
42
+ getPOAEPFromCSV: (csv: string) => Promise<import("./types/parserResult").ParserResult<{
43
+ POAEP: import("./types/poaep").PO[];
44
+ }>>;
45
+ getPOAEPFromXLSX: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
42
46
  POAEP: import("./types/poaep").PO[];
43
47
  }>>;
44
48
  /**
45
49
  * Functions that converts the xls to csv
46
50
  * then returns the csv as formdata
47
51
  */
48
- getDeptFaculty: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
52
+ getDeptFacultyFromXLSX: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
49
53
  body: FormData;
50
54
  }>>;
51
- getEnrolledStudents: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
55
+ getEnrolledStudentsFromXLSX: (xls: File) => Promise<import("./types/parserResult").ParserResult<{
52
56
  body: FormData;
53
57
  }>>;
54
58
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@obe-loms/coms-parser",
3
- "version": "1.5.0",
3
+ "version": "1.5.2",
4
4
  "license": "ISC",
5
5
  "dependencies": {
6
6
  "papaparse": "^5.5.3",
@@ -1,6 +1,5 @@
1
1
  import { AssessmentData } from "../types/assessmentdata";
2
2
  import { ParserResult } from "../types/parserResult";
3
- declare const getAssessmentData: (xls: File) => Promise<ParserResult<{
3
+ export declare const getAssessmentDataFromXLSX: (xls: File) => Promise<ParserResult<{
4
4
  assessmentData: AssessmentData;
5
5
  }>>;
6
- export default getAssessmentData;
@@ -1,5 +1,8 @@
1
1
  import { COAEP } from "../types/coaep";
2
2
  import { ParserResult } from "../types/parserResult";
3
- export declare function getCOAEP(xls: File): Promise<ParserResult<{
3
+ export declare function getCOAEPFromXLSX(xls: File): Promise<ParserResult<{
4
+ COAEP: COAEP;
5
+ }>>;
6
+ export declare function getCOAEPFromCSV(csv: string): Promise<ParserResult<{
4
7
  COAEP: COAEP;
5
8
  }>>;
@@ -1,6 +1,5 @@
1
1
  import { classList } from "../types/classList";
2
2
  import { ParserResult } from "../types/parserResult";
3
- declare const getClassList: (xls: File) => Promise<ParserResult<{
3
+ export declare const getClassListFromXLSX: (xls: File) => Promise<ParserResult<{
4
4
  enrolledCourses: classList[];
5
5
  }>>;
6
- export default getClassList;
@@ -1,6 +1,5 @@
1
1
  import { ParserResult } from "../types/parserResult";
2
2
  import { CourseOffering } from "../types/courseOffering";
3
- declare const getCourseOffering: (xls: File) => Promise<ParserResult<{
3
+ export declare const getCourseOfferingFromXLSX: (xls: File) => Promise<ParserResult<{
4
4
  courseOfferings: CourseOffering[];
5
5
  }>>;
6
- export default getCourseOffering;
@@ -1,6 +1,5 @@
1
1
  import { ParserResult } from "../types/parserResult";
2
2
  import { CurriculumCourses } from "../types/curriculum";
3
- declare const getCurriculum: (xls: File) => Promise<ParserResult<{
3
+ export declare const getCurriculumFromXLSX: (xls: File) => Promise<ParserResult<{
4
4
  curriculums: CurriculumCourses[];
5
5
  }>>;
6
- export default getCurriculum;
@@ -1,5 +1,4 @@
1
1
  import { ParserResult } from "../types/parserResult";
2
- declare const getDeptFaculty: (xls: File) => Promise<ParserResult<{
2
+ export declare const getDeptFacultyFromXLSX: (xls: File) => Promise<ParserResult<{
3
3
  body: FormData;
4
4
  }>>;
5
- export default getDeptFaculty;
@@ -1,5 +1,4 @@
1
1
  import { ParserResult } from "../types/parserResult";
2
- declare const getEnrolledStudents: (xls: File) => Promise<ParserResult<{
2
+ export declare const getEnrolledStudentsFromXLSX: (xls: File) => Promise<ParserResult<{
3
3
  body: FormData;
4
4
  }>>;
5
- export default getEnrolledStudents;
@@ -1,6 +1,8 @@
1
1
  import { ParserResult } from "../types/parserResult";
2
2
  import { PO } from "../types/poaep";
3
- declare const getPOAEP: (xls: File) => Promise<ParserResult<{
3
+ export declare const getPOAEPFromXLSX: (xls: File) => Promise<ParserResult<{
4
+ POAEP: PO[];
5
+ }>>;
6
+ export declare const getPOAEPFromCSV: (csv: string) => Promise<ParserResult<{
4
7
  POAEP: PO[];
5
8
  }>>;
6
- export default getPOAEP;