{"version":3,"sources":["webpack:///./src/pages/skill-hub/index.vue?dca4","webpack:///./src/assets/images/dashboard/alumni/FCHS.png","webpack:///./src/components/students/StudentTileShimmer.vue","webpack:///./src/components/students/StudentTileShimmer.vue?c5a2","webpack:///./src/assets/images/dashboard/alumni/ATS.png","webpack:///./src/assets/images/dashboard/alumni/ADVETI.png","webpack:///./src/components/icons/IconMagnifyingGlass.vue","webpack:///./src/components/icons/IconMagnifyingGlass.vue?72df","webpack:///./src/pages/skill-hub/index.vue","webpack:///./src/pages/skill-hub/index.vue?3e86","webpack:///./src/assets/images/dashboard/alumni/ADPOLY.png","webpack:///./src/components/shared/search.vue","webpack:///./src/components/shared/search.vue?4250"],"names":["module","exports","class","name","components","IconEye","IconPen","render","xmlns","fill","viewBox","stroke-width","stroke","stroke-linecap","stroke-linejoin","d","script","src","alt","value","scope","to","isDashboardLoading","totalCount","isShowChart","atsCount","adpolyCount","fchsCount","advetiCount","type","width","options","chartOptions1","series","series1","noItems","isExportExcel","class-list","text","text-class-list","generateReport","icon","filterByEntity","filteredEntities","item","index","entity","key","getEntityName","filterBySponsor","sponsorsList","filterByLocalOrNonLocal","onSearch","clearAllFilter","$apollo","queries","skill_hubs","loading","first","sts","filteredItems","paginatorInfo","firstItem","openPreviewImgModal","student_id","getProfilePicture","viewStudentProfile","name_en","name_ar","sponsor","skill","training_location","assessment_status","assessment_completion_status","assessment_result","assessed_by","assessment_date","marks","training_hours","getFormattedDate","reg_date","hasPermission","setPage","mode","previewImageModal","title","height","closePreviewImageModal","previewImg","showStudentProfileFullModal","closeFullModal","student-id","studentId","Pagination","StudentTileShimmer","StudentProfile","Search","page","entities","isApiCallRecurisive","generatedReport","searchText","this","getSponsorsList","getSkillHubDashboard","watch","newVal","error","error_code","$router","replace","alert","message","computed","length","data","$store","getters","role","count","push","labels","getLabelBasedOnEntity","chart","responsive","breakpoint","legend","position","apollo","query","fetchPolicy","local_or_non_local","search","methods","variables","student_status","console","log","date","filterName","labesls","skillHubDashboardData","total_count","ats_count","adpoly_count","fchs_count","adveti_count","crudName","permissions","permissionsArray","split","includes","limit","responseData","fetchForExporting","map","obj","eid","campus","campus_code","program_name","getSpecialization","study_program","program_code","cluster_e","last_school_name","exportToExcel","pageNo","limitSize","generateSkillHubStudentsReport","reportName","XLSX","header","worksheet","utils","json_to_sheet","v","t","workbook","book_new","book_append_sheet","writeFile","studyProgram","programName","programCode","clusterE","specialization","__scopeId","classList","placeholder","props","emits","IconMagnifyingGlass","$emit"],"mappings":"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","file":"js/chunk-6a0db837.11e3d8a5.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./index.vue?vue&type=style&index=0&id=6f18d4a8&lang=scss&scoped=true\"","module.exports = __webpack_public_path__ + \"img/FCHS.514f5af8.png\";","<template>\n    <div class=\"border-b border-dashed dark:border-neutral-500 w-full flex justify-start animate-pulse\">\n        <div class=\"px-6 py-2 flex flex-col justify-center items-center w-12 lg:w-16\">\n            <div class=\"h-4 lg:h-6 w-4 lg:w-6 bg-gray-600 animate-pulse\"></div>\n        </div>\n        <div class=\"whitespace-nowrap px-6 py-2 flex-grow\">\n            <div class=\"flex items-center\">\n                <div class=\"flex-shrink-0 mr-2 md:mr-3\">\n                    <div class=\"h-10 lg:h-12 w-10 lg:w-12 rounded-lg bg-indigo-300 animate-pulse\"></div>\n                </div>\n                <div class=\"flex-grow w-20 md:w-auto flex flex-col\">\n                    <h1 class=\"h-4 bg-gray-600 animate-pulse\"></h1>\n                    <p class=\"mt-2 h-2 bg-gray-300 animate-pulse\"></p>\n                </div>\n            </div>\n        </div>\n        <div class=\"flex flex-col justify-center items-center px-6 py-2\">\n            <div class=\"h-4 w-24 lg:w-40 bg-gray-300 animate-pulse\"></div>\n        </div>\n        <div class=\"flex flex-col justify-center items-center px-6 py-2\">\n            <div class=\"h-4 w-24 lg:w-40 bg-gray-300 animate-pulse\"></div>\n        </div>\n        <div class=\"flex flex-col justify-center items-center px-6 py-2\">\n            <div class=\"h-4 w-24 lg:w-40 bg-gray-300 animate-pulse\"></div>\n        </div>\n        <div class=\"w-24 lg:w-40 px-6 py-2 flex flex-col justify-center items-center\">\n            <div class=\"flex\">\n                <div class=\"animate-pulse bg-gray-100 hover:bg-blue-50 w-8 h-8 flex justify-center items-center rounded-lg group cursor-pointer mr-2\">\n                    <icon-eye class=\"animate-pulse w-4 h-4 transform group-hover:text-purple-pink group-hover:scale-110 hover:scale-110\"></icon-eye>\n                </div>\n                <div class=\"animate-pulse bg-gray-100 hover:bg-blue-50 w-8 h-8 flex justify-center items-center rounded-lg group cursor-pointer mr-2\">\n                    <icon-pen class=\"animate-pulse w-4 h-4 transform group-hover:text-purple-pink group-hover:scale-110 hover:scale-110\"></icon-pen>\n                </div>\n            </div>\n        </div>\n    </div>\n</template>\n\n<script>\nimport IconEye from '../icons/IconEye.vue'\nimport IconPen from '../icons/IconPen.vue'\nexport default {\n    name: \"student-tile-shimmer\",\n    components: { IconEye, IconPen, },\n}\n</script>","import { render } from \"./StudentTileShimmer.vue?vue&type=template&id=0e79c71e\"\nimport script from \"./StudentTileShimmer.vue?vue&type=script&lang=js\"\nexport * from \"./StudentTileShimmer.vue?vue&type=script&lang=js\"\nscript.render = render\n\nexport default script","module.exports = __webpack_public_path__ + \"img/ATS.5a50fa15.png\";","module.exports = __webpack_public_path__ + \"img/ADVETI.8eafc501.png\";","<template>\n    <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\" class=\"\">\n        <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z\" />\n    </svg>\n</template>","import { render } from \"./IconMagnifyingGlass.vue?vue&type=template&id=3f325d64\"\nconst script = {}\nscript.render = render\n\nexport default script","<template>\n    <div class=\"h-full w-full flex flex-col\">\n        <div class=\"h-full container mx-auto\">\n            <div class=\"px-4 sm:px-8 flex flex-col h-full w-full py-4 sm:py-8\">\n                <div class=\"w-full bg-white rounded-2xl border shadow-lg px-6 md:px-8 py-4 flex flex-col\">\n                    <div class=\"flex items-center text-sm font-light\">\n                        <router-link to=\"/dashboard\" class=\"opacity-50 hover:opacity-100\">Dashboard</router-link>\n                        <span class=\"mx-2\">/</span>\n                        <router-link to=\"/sponsorship-management\"\n                            class=\"opacity-50 hover:opacity-100\">Sponsorship</router-link>\n                        <span class=\"mx-2\">/</span>\n                        <span>Skill Hub</span>\n                    </div>\n                    <div class=\"font-bold\">Skill Hub</div>\n                </div>\n\n                <!-- Sponsorship Dashboard Start -->\n                <div class=\"flex flex-col mt-8\">\n                    <div class=\"grid grid-col-1 sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 gap-8\">\n                        <div class=\"bg-white rounded-2xl border shadow-lg px-8 py-6\">\n                            <div class=\"flex justify-between items-center\">\n                                <div class=\"flex-grow flex flex-col\">\n                                    <p class=\"text-xl\">Total</p>\n                                    <h1 v-if=\"isDashboardLoading\" class=\"h-9 bg-gray-200 animate-pulse mt-1 mr-2\"></h1>\n                                    <h1 v-else class=\"text-3xl font-bold mt-1\">{{ totalCount }}</h1>\n                                </div>\n                            </div>\n                        </div>\n                        <div v-if=\"isShowChart('ATHS', atsCount)\"\n                            class=\"bg-white rounded-2xl border shadow-lg px-8 py-6\">\n                            <div class=\"flex justify-between items-center\">\n                                <div class=\"flex-grow flex flex-col\">\n                                    <p class=\"text-xl\">ATS</p>\n                                    <h1 v-if=\"isDashboardLoading\" class=\"h-9 bg-gray-200 animate-pulse mt-1 mr-2\"></h1>\n                                    <h1 v-else class=\"text-3xl font-bold mt-1\">{{ atsCount }}</h1>\n                                </div>\n                                <div class=\"flex-shrink-0\">\n                                    <img class=\"h-8\" src=\"../../assets/images/dashboard/alumni/ATS.png\" alt=\"ATS\">\n                                </div>\n                            </div>\n                        </div>\n                        <div v-if=\"isShowChart('ADPOLY', adpolyCount)\"\n                            class=\"bg-white rounded-2xl border shadow-lg px-8 py-6\">\n                            <div class=\"flex justify-between items-center\">\n                                <div class=\"flex-grow flex flex-col\">\n                                    <p class=\"text-xl\">ADPOLY</p>\n                                    <h1 v-if=\"isDashboardLoading\" class=\"h-9 bg-gray-200 animate-pulse mt-1 mr-2\"></h1>\n                                    <h1 v-else class=\"text-3xl font-bold mt-1\">{{ adpolyCount }}</h1>\n                                </div>\n                                <div class=\"flex-shrink-0\">\n                                    <img class=\"h-12\" src=\"../../assets/images/dashboard/alumni/ADPOLY.png\"\n                                        alt=\"ADPOLY\">\n                                </div>\n                            </div>\n                        </div>\n                        <div v-if=\"isShowChart('FCHS', fchsCount)\"\n                            class=\"bg-white rounded-2xl border shadow-lg px-8 py-6\">\n                            <div class=\"flex justify-between items-center\">\n                                <div class=\"flex-grow flex flex-col\">\n                                    <p class=\"text-xl\">FCHS</p>\n                                    <h1 v-if=\"isDashboardLoading\" class=\"h-9 bg-gray-200 animate-pulse mt-1 mr-2\"></h1>\n                                    <h1 v-else class=\"text-3xl font-bold mt-1\">{{ fchsCount }}</h1>\n                                </div>\n                                <div class=\"flex-shrink-0\">\n                                    <img class=\"h-14\" src=\"../../assets/images/dashboard/alumni/FCHS.png\" alt=\"FCHS\">\n                                </div>\n                            </div>\n                        </div>\n                        <div v-if=\"isShowChart('ADVETI', advetiCount)\"\n                            class=\"bg-white rounded-2xl border shadow-lg px-8 py-6\">\n                            <div class=\"flex justify-between items-center\">\n                                <div class=\"flex-grow flex flex-col\">\n                                    <p class=\"text-xl\">ADVETI</p>\n                                    <h1 v-if=\"isDashboardLoading\" class=\"h-9 bg-gray-200 animate-pulse mt-1 mr-2\"></h1>\n                                    <h1 v-else class=\"text-3xl font-bold mt-1\">{{ advetiCount }}</h1>\n                                </div>\n                                <div class=\"flex-shrink-0\">\n                                    <img class=\"h-16\" src=\"../../assets/images/dashboard/alumni/ADVETI.png\"\n                                        alt=\"ADVETI\">\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n\n                    <div class=\"grid grid-cols-1 lg:grid-cols-2 2xl:grid-cols-3 gap-8 mt-8\">\n                        <div class=\"bg-white rounded-2xl border shadow-lg px-8 py-6\">\n                            <h1 class=\"text-lg font-bold\">Sponsorship / Entity</h1>\n                            <div v-if=\"isDashboardLoading\" class=\"wd-380 ht-242-7 flex items-center\">\n                                <div class=\"\">\n                                    <div class=\"ml-8 wd-216 ht-216 rounded-full bg-gray-200 animate-pulse\"></div>\n                                </div>\n                            </div>\n                            <apexchart v-else type=\"pie\" width=\"380\" :options=\"chartOptions1\" :series=\"series1\">\n                            </apexchart>\n                        </div>\n                    </div>\n\n                </div>\n                <!-- Sponsorship Dashboard End -->\n\n                <div v-if=\"!noItems\" class=\"mt-4 flex justify-end items-center\">\n                    <div v-if=\"isExportExcel\"\n                        class=\"w-44 flex items-center justify-center hover:bg-purple-50 bg-ternary border-ternary hover:border-ternary border px-4 py-2 rounded-lg hover:text-ternary text-white\">\n                        <base-spinner-with-text class-list=\"w-4 h-4\" text=\"\"\n                            text-class-list=\"text-white\"></base-spinner-with-text>\n                        <span class=\"text-xs\">Exporting Excel</span>\n                    </div>\n                    <div v-else @click=\"generateReport\"\n                        class=\"w-44 flex items-center justify-center hover:bg-purple-50 bg-ternary border-ternary hover:border-ternary border px-4 py-2 rounded-lg cursor-pointer hover:text-ternary text-white\">\n                        <font-awesome-icon :icon=\"['fas', 'file-excel']\" />\n                        <span class=\"text-xs ml-2\">Export Excel</span>\n                    </div>\n                </div>\n\n                <section class=\"mt-4 h-full w-full flex flex-col bg-white rounded-2xl border shadow-lg p-6 md:p-8\">\n                    <div class=\"flex justify-between items-center flex-wrap\">\n                        <h1 class=\"text-base md:text-lg font-semibold text-ternary mb-4\">Skill Hub Students List</h1>\n                        <div class=\"flex justify-start items-center flex-wrap\">\n                            <div class=\"w-full sm:w-auto mb-4 border rounded-lg px-4 h-8 flex items-center\">\n                                <div class=\"text-sm mr-2\">Entity:</div>\n                                <select v-model=\"filterByEntity\" class=\"outline-none text-sm flex-grow\">\n                                    <option value=\"\">All</option>\n                                    <option :value=\"item.entity\" v-for=\"(item, index) in filteredEntities\" :key=\"index\">\n                                        {{ getEntityName(item.entity) }}</option>\n                                </select>\n                            </div>\n                            <div\n                                class=\"w-full sm:w-auto ml-0 sm:ml-8 mb-4 border rounded-lg px-4 h-8 flex items-center\">\n                                <div class=\"text-sm mr-2\">Employer:</div>\n                                <select v-model=\"filterBySponsor\" class=\"outline-none text-sm flex-grow\">\n                                    <option value=\"\">All</option>\n                                    <option :value=\"item\" v-for=\"(item, index) in sponsorsList\" :key=\"index\">{{ item }}\n                                    </option>\n                                </select>\n                            </div>\n                            <div\n                                class=\"w-full sm:w-auto ml-0 sm:ml-8 mb-4 border rounded-lg px-4 h-8 flex items-center\">\n                                <div class=\"text-sm mr-2\">Local or Non Local:</div>\n                                <select v-model=\"filterByLocalOrNonLocal\" class=\"outline-none text-sm flex-grow\">\n                                    <option value=\"\">All</option>\n                                    <option value=\"Local\">Local</option>\n                                    <option value=\"Non Local\">Non Local</option>\n                                </select>\n                            </div>\n                        </div>\n                    </div>\n\n                    <div class=\"w-full mb-4\">\n                        <search @on-search=\"onSearch\" class-list=\"px-4 h-8\"></search>\n                    </div>\n\n                    <div class=\"flex justify-start\">\n                        <div @click.stop=\"clearAllFilter()\"\n                            class=\"px-3 py-1 text-sm border border-red-500 bg-red-500 hover:bg-white text-white hover:text-red-500 rounded-lg cursor-pointer\">\n                            Clear All Filter</div>\n                    </div>\n\n                    <div class=\"flex flex-col\" v-if=\"$apollo.queries.skill_hubs.loading\">\n                        <div class=\"flex flex-col overflow-x-auto\">\n                            <div class=\"inline-block min-w-full py-2\">\n                                <div class=\"overflow-x-auto\">\n                                    <div class=\"min-w-full text-left text-sm font-light\">\n                                        <div class=\"border-b font-medium dark:border-neutral-500\">\n                                            <div class=\"flex\">\n                                                <div class=\"px-6 py-2 text-gray-400 w-12 lg:w-16\">#</div>\n                                                <div class=\"flex-grow px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-32 md:w-auto\">Name</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Entity</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Employer</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Skill</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Training Location</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Assessment Status</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Assessment Completion Status</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Assessment Result</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Assessed By</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Assessment Date</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Marks</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Training Hours</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400\">\n                                                    <div class=\"w-24 lg:w-40\">Registration Date</div>\n                                                </div>\n                                                <div class=\"px-6 py-2 text-gray-400 w-24 lg:w-40\">Actions</div>\n                                            </div>\n                                        </div>\n                                        <div>\n                                            <student-tile-shimmer v-for=\"(sts, index) in first\"\n                                                :key=\"index\"></student-tile-shimmer>\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                    <div v-else-if=\"noItems\" class=\"h-full flex justify-center items-center\">\n                        <h1 class=\"text-center text-xl font-medium\">No skill hub users found!</h1>\n                    </div>\n                    <div v-else class=\"flex flex-col\">\n                        <div class=\"flex flex-col overflow-x-auto\">\n                            <div class=\"inline-block min-w-full py-2\">\n                                <div class=\"overflow-x-auto\">\n                                    <table class=\"min-w-full text-left text-sm font-light\">\n                                        <thead class=\"border-b font-medium dark:border-neutral-500\">\n                                            <tr>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400 w-8\">#</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Name</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Entity</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Employer</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Skill</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Training Location</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Assessment Status</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Assessment Completion\n                                                    Status</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Assessment Result</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Assessed By</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Assessment Date</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Marks</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Training Hours</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Registration Date</th>\n                                                <th scope=\"col\" class=\"px-6 py-2 text-gray-400\">Actions</th>\n                                            </tr>\n                                        </thead>\n                                        <tbody>\n                                            <tr v-for=\"(item, index) in filteredItems\" :key=\"index\"\n                                                class=\"border-b border-dashed dark:border-neutral-500\">\n                                                <td class=\"whitespace-nowrap px-6 py-2 font-medium\">{{\n                                                    paginatorInfo.firstItem + index }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">\n                                                    <div class=\"flex items-center\">\n                                                        <div class=\"flex-shrink-0 mr-3\">\n                                                            <img @click.stop=\"openPreviewImgModal(item.student_id, item.entity)\"\n                                                                class=\"h-12 w-12 rounded-lg object-cover cursor-pointer\"\n                                                                :src=\"getProfilePicture(item.student_id, item.entity)\"\n                                                                alt=\"\">\n                                                        </div>\n                                                        <div class=\"flex-grow flex flex-col\">\n                                                            <h1 class=\"text-sm font-semibold flex items-center\">\n                                                                <span @click.stop=\"viewStudentProfile(item.student_id)\"\n                                                                    class=\"text-heading hover:text-blue-600 hover:underline cursor-pointer\">{{\n                                                                        item.name_en }}</span>\n                                                            </h1>\n                                                            <p class=\"text-xs text-gray-400\">{{ item.name_ar }}</p>\n                                                        </div>\n                                                    </div>\n                                                </td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{ getEntityName(item.entity) }}\n                                                </td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{ item.sponsor }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{ item.skill_hubs[0].skill }}\n                                                </td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    item.skill_hubs[0].training_location }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    item.skill_hubs[0].assessment_status }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    item.skill_hubs[0].assessment_completion_status }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    item.skill_hubs[0].assessment_result }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    item.skill_hubs[0].assessed_by }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    item.skill_hubs[0].assessment_date }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{ item.skill_hubs[0].marks }}\n                                                </td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    item.skill_hubs[0].training_hours }}</td>\n                                                <td class=\"whitespace-nowrap px-6 py-2\">{{\n                                                    getFormattedDate(item.skill_hubs[0].reg_date) }}</td>\n                                                <td class=\"px-6 py-2\">\n                                                    <div class=\"flex\">\n                                                        <div v-if=\"hasPermission('students-show')\"\n                                                            @click.stop=\"viewStudentProfile(item.student_id)\"\n                                                            class=\"bg-gray-100 hover:bg-blue-50 w-8 h-8 flex justify-center items-center rounded-lg group cursor-pointer mr-2\">\n                                                            <icon-eye\n                                                                class=\"w-4 h-4 transform group-hover:text-purple-pink group-hover:scale-110 hover:scale-110\"></icon-eye>\n                                                        </div>\n                                                    </div>\n                                                </td>\n                                            </tr>\n                                        </tbody>\n                                    </table>\n                                </div>\n                            </div>\n                        </div>\n                        <div class=\"mt-4\">\n                            <pagination :paginatorInfo=\"paginatorInfo\" :setPage=\"setPage\"></pagination>\n                        </div>\n                    </div>\n\n                    <transition name=\"fade\" mode=\"out-in\">\n                        <base-modal v-if=\"previewImageModal\" title=\"\" height=\"50vh\" @close=\"closePreviewImageModal\">\n                            <img class=\"h-full w-full object-contain\" :src=\"previewImg\" />\n                        </base-modal>\n                    </transition>\n\n                    <transition name=\"fade\" mode=\"out-in\">\n                        <base-full-modal v-if=\"showStudentProfileFullModal\" title=\"Student Profile\"\n                            @close=\"closeFullModal\">\n                            <student-profile :student-id=\"studentId\"></student-profile>\n                        </base-full-modal>\n                    </transition>\n\n                </section>\n            </div>\n        </div>\n        <div class=\"h-full flex justify-center items-center\" v-if=\"isExportExcel\">\n            <base-page-spinner type=\"spin\" class-list=\"h-20\"></base-page-spinner>\n        </div>\n    </div>\n</template>\n<script>\nimport IconEye from \"../../components/icons/IconEye.vue\";\nimport gql from 'graphql-tag';\nimport Pagination from \"../../components/shared/pagination.vue\";\nimport StudentTileShimmer from '../../components/students/StudentTileShimmer.vue';\nimport StudentProfile from \"../student-profile/index.vue\";\nimport xlsx from \"xlsx/dist/xlsx.full.min.js\";\nimport { formattedDate } from \"../../helpers/utils\";\nimport Search from \"../../components/shared/search.vue\";\nexport default {\n    name: \"skill-hub-index\",\n    components: {\n        IconEye,\n        Pagination,\n        StudentTileShimmer,\n        StudentProfile,\n        Search,\n    },\n    data() {\n        return {\n            skill_hubs: [],\n            first: 10,\n            page: 1,\n            studentId: null,\n            filterByEntity: \"\",\n            filterBySponsor: \"\",\n            filterByLocalOrNonLocal: \"\",\n            previewImageModal: false,\n            previewImg: \"\",\n            entities: [],\n            sponsorsList: [],\n            showStudentProfileFullModal: false,\n            isDashboardLoading: false,\n            totalCount: 0,\n            atsCount: 0,\n            adpolyCount: 0,\n            fchsCount: 0,\n            advetiCount: 0,\n            isExportExcel: false,\n            isApiCallRecurisive: false,\n            generatedReport: [],\n            searchText: \"\",\n        };\n    },\n    created() {\n        this.getSponsorsList();\n        this.getSkillHubDashboard();\n    },\n    watch: {\n        searchText() {\n            this.page = 1;\n        },\n        skill_hubs(newVal) {\n            if (newVal.error) {\n                if (newVal.error_code == 403) {\n                    this.$router.replace('/no-permission');\n                } else if (newVal.error_code == 401) {\n                    this.$router.replace('/');\n                } else {\n                    alert(newVal.message);\n                    this.$router.replace('/');\n                }\n            }\n        },\n        filterByEntity() {\n            this.clearAllFilter('filterByEntity');\n            this.page = 1;\n            this.getSponsorsList();\n            this.getSkillHubDashboard();\n        },\n        filterBySponsor() {\n            this.page = 1;\n            this.getSkillHubDashboard();\n        },\n        filterByLocalOrNonLocal() {\n            this.page = 1;\n            this.getSkillHubDashboard();\n        },\n    },\n    computed: {\n        noItems() {\n            if (!this.$apollo.queries.skill_hubs.loading && this.filteredItems.length <= 0) {\n                return true;\n            } else {\n                return false;\n            }\n        },\n        filteredItems() {\n            return this.skill_hubs.data;\n        },\n        paginatorInfo() {\n            return this.skill_hubs.paginatorInfo;\n        },\n        role() {\n            return this.$store.getters.role;\n        },\n        filteredEntities() {\n            if (this.entities.data && this.entities.data.length > 0) {\n                return this.entities.data;\n            } else {\n                return [];\n            }\n        },\n        series1() {\n            if (this.filterByEntity == 'ATHS') {\n                return [this.atsCount];\n            } else if (this.filterByEntity == 'ADPOLY') {\n                return [this.adpolyCount];\n            } else if (this.filterByEntity == 'FCHS') {\n                return [this.fchsCount];\n            } else if (this.filterByEntity == 'ADVETI') {\n                return [this.advetiCount];\n            } else {\n                let count = [];\n                if (this.atsCount > 0) {\n                    count.push(this.atsCount);\n                }\n                if (this.adpolyCount > 0) {\n                    count.push(this.adpolyCount);\n                }\n                if (this.fchsCount > 0) {\n                    count.push(this.fchsCount);\n                }\n                if (this.advetiCount > 0) {\n                    count.push(this.advetiCount);\n                }\n                return count;\n            }\n        },\n        chartOptions1() {\n            const labels = this.getLabelBasedOnEntity();\n            return {\n                chart: {\n                    width: 380,\n                    type: 'pie',\n                },\n                labels: labels,\n                responsive: [\n                    {\n                        breakpoint: 480,\n                        options: {\n                            chart: {\n                                width: 200\n                            },\n                            legend: {\n                                position: 'bottom'\n                            }\n                        }\n                    }\n                ]\n            }\n        },\n    },\n    apollo: {\n        entities() {\n            return {\n                query: gql`query GetEntityList {\n                    entities {\n                        data {\n                            entity\n                        }\n                    }\n                }`,\n                fetchPolicy: 'cache-and-network',\n            }\n        },\n        skill_hubs() {\n            return {\n                query: gql`query GetAllSkillHubs($first: Int!, $page: Int!, $entity: String, $sponsor: String, $local_or_non_local: String, $search: String) {\n                    skill_hubs(first: $first, page: $page, entity: $entity, sponsor: $sponsor, local_or_non_local: $local_or_non_local, search: $search) {\n                      error\n                      error_code\n                      data {\n                        student_id\n                        name_en\n                        entity\n                        sponsor\n                        skill_hubs {\n                            entity\n                            skill\n                            last_school_name\n                            training_location\n                            assessment_status\n                            assessment_completion_status\n                            assessment_result\n                            assessed_by\n                            assessment_date\n                            marks\n                            training_hours\n                            reg_date\n                        }\n                      }\n                      paginatorInfo {\n                          count\n                          currentPage\n                          firstItem\n                          hasMorePages\n                          lastItem\n                          lastPage\n                          perPage\n                          total\n                      }\n                    }\n                }`,\n                variables() {\n                    return {\n                        first: this.first,\n                        page: this.page,\n                        entity: this.filterByEntity,\n                        local_or_non_local: this.filterByLocalOrNonLocal,\n                        sponsor: this.filterBySponsor,\n                        search: this.searchText,\n                    }\n                },\n                fetchPolicy: 'cache-and-network'\n            }\n        },\n    },\n    methods: {\n        onSearch(searchText) {\n            this.searchText = searchText;\n        },\n        async getSponsorsList() {\n            try {\n                const { data } = await this.$apollo.query({\n                    query: gql`\n                            query GetSponsorsList($student_status: String, $entity: String) {\n                                getSponsorsList(student_status: $student_status, entity: $entity)\n                            }\n                        `,\n                    variables: {\n                        student_status: 'AS',\n                        entity: this.filterByEntity,\n                    },\n                    fetchPolicy: 'network-only',\n                });\n                this.sponsorsList = data.getSponsorsList;\n            } catch (error) {\n                console.log(error);\n            }\n        },\n        getFormattedDate(date) {\n            return formattedDate(date);\n        },\n        clearAllFilter(filterName = '') {\n            if (!filterName) {\n                this.filterByEntity = \"\";\n            }\n            this.filterBySponsor = \"\";\n            this.filterByLocalOrNonLocal = \"\";\n        },\n        getLabelBasedOnEntity() {\n            if (this.filterByEntity == 'ATHS') {\n                return ['ATS'];\n            } else if (this.filterByEntity == 'ADPOLY') {\n                return ['ADPOLY'];\n            } else if (this.filterByEntity == 'FCHS') {\n                return ['FCHS'];\n            } else if (this.filterByEntity == 'ADVETI') {\n                return ['ADVETI'];\n            } else {\n                let labesls = [];\n                if (this.adpolyCount > 0) {\n                    labesls.push('ADPOLY');\n                }\n                if (this.fchsCount > 0) {\n                    labesls.push('FCHS');\n                }\n                if (this.advetiCount > 0) {\n                    labesls.push('ADVETI');\n                }\n                return labesls;\n            }\n        },\n        async getSkillHubDashboard() {\n            this.isDashboardLoading = true;\n            try {\n                const { data } = await this.$apollo.query({\n                    query: gql`\n                        query GetSkillHubDashboard($entity: String, $sponsor: String, $local_or_non_local: String) {\n                            getSkillHubDashboard(entity: $entity, sponsor: $sponsor, local_or_non_local: $local_or_non_local) {\n                                data {\n                                    total_count\n                                    ats_count\n                                    adpoly_count\n                                    fchs_count\n                                    adveti_count\n                                }\n                            }\n                        }\n                    `,\n                    variables: {\n                        entity: this.filterByEntity,\n                        sponsor: this.filterBySponsor,\n                        local_or_non_local: this.filterByLocalOrNonLocal,\n                    },\n                    fetchPolicy: 'network-only',\n                });\n\n                const skillHubDashboardData = data.getSkillHubDashboard.data;\n\n                this.totalCount = skillHubDashboardData.total_count;\n                this.atsCount = skillHubDashboardData.ats_count;\n                this.adpolyCount = skillHubDashboardData.adpoly_count;\n                this.fchsCount = skillHubDashboardData.fchs_count;\n                this.advetiCount = skillHubDashboardData.adveti_count;\n            } catch (error) {\n                console.log(error);\n            }\n            this.isDashboardLoading = false;\n        },\n        getEntityName(entity) {\n            if (entity == 'ATHS') {\n                return \"ATS\";\n            } else {\n                return entity;\n            }\n        },\n        isShowChart(entity, count) {\n            if (this.filterByEntity == \"\") {\n                if (count == 0) {\n                    return false;\n                } else {\n                    return true;\n                }\n            } else {\n                return this.filterByEntity == entity;\n            }\n        },\n        setPage(page) {\n            this.page = page;\n        },\n        getProfilePicture(studentId, entity) {\n            return `https://www.iat.ac.ae/sis/Integrations/Get_Student_Image/Q4tphjXBanCMiro8Kpfbi1QEU5qZb01uWtpkQlpfet8/${studentId}/${entity}`;\n        },\n        openPreviewImgModal(studentId, entity) {\n            this.previewImageModal = true;\n            this.previewImg = `https://www.iat.ac.ae/sis/Integrations/Get_Student_Image/Q4tphjXBanCMiro8Kpfbi1QEU5qZb01uWtpkQlpfet8/${studentId}/${entity}`;\n        },\n        closePreviewImageModal() {\n            this.previewImageModal = false;\n            this.previewImg = \"\";\n        },\n        hasPermission(crudName) {\n            if (this.role == 'superadmin') {\n                return true;\n            } else {\n                const permissions = this.$store.getters.permissions;\n                const permissionsArray = permissions.split(\",\");\n                if (permissionsArray.includes(crudName)) {\n                    return true;\n                } else {\n                    return false;\n                }\n            }\n        },\n        closeFullModal() {\n            this.showStudentProfileFullModal = false;\n            this.studentId = null;\n        },\n        viewStudentProfile(studentId) {\n            this.studentId = studentId;\n            this.showStudentProfileFullModal = true;\n        },\n        async generateReport() {\n            var page = 1;\n            var limit = 200;\n            this.isExportExcel = true;\n            this.isApiCallRecurisive = true;\n            while (this.isApiCallRecurisive) {\n                const responseData = await this.fetchForExporting(page, limit);\n                if (responseData.data.length > 0) {\n                    this.generatedReport.push(\n                        ...responseData.data.map((obj) => {\n                            return {\n                                student_id: obj.student_id,\n                                eid: obj.eid,\n                                name_en: obj.name_en,\n                                name_ar: obj.name_ar,\n                                entity: this.getEntityName(obj.entity),\n                                campus: obj.campus_code,\n                                program_name: this.getSpecialization(obj.entity, obj.study_program, obj.program_name, obj.program_code, obj.cluster_e),\n                                local_or_non_local: obj.local_or_non_local,\n                                sponsor: obj.sponsor,\n                                skill: obj.skill_hubs[0].skill,\n                                last_school_name: obj.skill_hubs[0].last_school_name,\n                                training_location: obj.skill_hubs[0].training_location,\n                                assessment_status: obj.skill_hubs[0].assessment_status,\n                                assessment_completion_status: obj.skill_hubs[0].assessment_completion_status,\n                                assessment_result: obj.skill_hubs[0].assessment_result,\n                                assessed_by: obj.skill_hubs[0].assessed_by,\n                                assessment_date: obj.skill_hubs[0].assessment_date,\n                                marks: obj.skill_hubs[0].marks,\n                                training_hours: obj.skill_hubs[0].training_hours,\n                                reg_date: this.getFormattedDate(obj.skill_hubs[0].reg_date),\n                            };\n                        })\n                    );\n                    page++;\n                } else {\n                    this.isApiCallRecurisive = false;\n                    break;\n                }\n            }\n            this.exportToExcel(\"Skill_Hub_Students\");\n        },\n        async fetchForExporting(pageNo = 1, limitSize = 50) {\n            try {\n                const { data } = await this.$apollo.query({\n                    query: gql`\n                    query GenerateSkillHubStudentsReport(\n                        $page: Int\n                        $limit: Int\n                        $entity: String\n                        $sponsor: String\n                        $local_or_non_local: String\n                        $search: String\n                    ) {\n                    generateSkillHubStudentsReport(\n                        page: $page\n                        limit: $limit\n                        entity: $entity\n                        sponsor: $sponsor\n                        local_or_non_local: $local_or_non_local\n                        search: $search\n                    ) {\n                        error\n                        error_code\n                        message\n                        data {\n                            student_id\n                            eid\n                            name_en\n                            name_ar\n                            entity\n                            campus_code\n                            program_name\n                            study_program\n                            program_code\n                            cluster_e\n                            local_or_non_local\n                            sponsor\n                            skill_hubs {\n                                entity\n                                skill\n                                last_school_name\n                                training_location\n                                assessment_status\n                                assessment_completion_status\n                                assessment_result\n                                assessed_by\n                                assessment_date\n                                marks\n                                training_hours\n                                reg_date\n                            }\n                        }\n                    }\n                    }\n                `,\n                    fetchPolicy: \"network-only\",\n                    variables: {\n                        page: pageNo,\n                        limit: limitSize,\n                        entity: this.filterByEntity,\n                        sponsor: this.filterBySponsor,\n                        local_or_non_local: this.filterByLocalOrNonLocal,\n                        search: this.searchText,\n                    },\n                });\n\n                const responseData = data.generateSkillHubStudentsReport;\n                return responseData;\n            } catch (error) {\n                console.log(error.message);\n            }\n        },\n        exportToExcel(reportName) {\n            const XLSX = xlsx;\n\n            const header = [\n                \"STUDENT ID\",\n                \"EID\",\n                \"NAME IN ENGLISH\",\n                \"NAME IN ARABIC\",\n                \"ENTITY\",\n                \"CAMPUS\",\n                \"PROGRAM NAME\",\n                \"LOCAL OR NON LOCAL\",\n                \"SPONSOR\",\n                \"SKILL\",\n                \"LAST SCHOOL NAME\",\n                \"TRAINING LOCATION\",\n                \"ASSESSMENT STATUS\",\n                \"ASSESSMENT COMPLETION STATUS\",\n                \"ASSESSMENT RESULT\",\n                \"ASSESSED BY\",\n                \"ASSESSMENT DATE\",\n                \"MARKS\",\n                \"TRAINING HOURS\",\n                \"REGISTRATION DATE\",\n            ];\n\n            const worksheet = XLSX.utils.json_to_sheet(this.generatedReport);\n\n            worksheet[\"A1\"] = { v: header[0], t: \"s\" };\n            worksheet[\"B1\"] = { v: header[1], t: \"s\" };\n            worksheet[\"C1\"] = { v: header[2], t: \"s\" };\n            worksheet[\"D1\"] = { v: header[3], t: \"s\" };\n            worksheet[\"E1\"] = { v: header[4], t: \"s\" };\n            worksheet[\"F1\"] = { v: header[5], t: \"s\" };\n            worksheet[\"G1\"] = { v: header[6], t: \"s\" };\n            worksheet[\"H1\"] = { v: header[7], t: \"s\" };\n            worksheet[\"I1\"] = { v: header[8], t: \"s\" };\n            worksheet[\"J1\"] = { v: header[9], t: \"s\" };\n            worksheet[\"K1\"] = { v: header[10], t: \"s\" };\n            worksheet[\"L1\"] = { v: header[11], t: \"s\" };\n            worksheet[\"M1\"] = { v: header[12], t: \"s\" };\n            worksheet[\"N1\"] = { v: header[13], t: \"s\" };\n            worksheet[\"O1\"] = { v: header[14], t: \"s\" };\n            worksheet[\"P1\"] = { v: header[15], t: \"s\" };\n            worksheet[\"Q1\"] = { v: header[16], t: \"s\" };\n            worksheet[\"R1\"] = { v: header[17], t: \"s\" };\n            worksheet[\"S1\"] = { v: header[18], t: \"s\" };\n            worksheet[\"T1\"] = { v: header[19], t: \"s\" };\n\n            worksheet[\"!cols\"] = [\n                { width: 40 },\n                { width: 40 },\n                { width: 30 },\n                { width: 30 },\n                { width: 20 },\n                { width: 20 },\n                { width: 40 },\n                { width: 40 },\n                { width: 20 },\n                { width: 20 },\n                { width: 40 },\n                { width: 40 },\n                { width: 20 },\n                { width: 20 },\n                { width: 20 },\n                { width: 40 },\n                { width: 20 },\n                { width: 20 },\n                { width: 20 },\n                { width: 20 },\n            ];\n\n            const workbook = XLSX.utils.book_new();\n            XLSX.utils.book_append_sheet(workbook, worksheet, \"Sheet1\");\n            XLSX.writeFile(workbook, `${reportName}.xlsx`);\n            this.generatedReport = [];\n            this.isExportExcel = false;\n            this.isApiCallRecurisive = false;\n        },\n        getSpecialization(entity, studyProgram, programName, programCode, clusterE) {\n            let specialization = \"\";\n            if (entity == 'ATHS') {\n                if (clusterE) {\n                    specialization = clusterE;\n                } else if (programName) {\n                    specialization = programName;\n                } else if (studyProgram) {\n                    specialization = studyProgram;\n                } else {\n                    specialization = programCode;\n                }\n            } else {\n                if (programName) {\n                    specialization = programName;\n                } else if (studyProgram) {\n                    specialization = studyProgram;\n                } else {\n                    specialization = programCode;\n                }\n            }\n            return specialization;\n        },\n    },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.fade-enter-active,\n.fade-leave-active {\n    transition: opacity 0.3s ease;\n}\n\n.fade-enter-from,\n.fade-leave-to {\n    opacity: 0;\n}\n\nbody.loading {\n    filter: blur(5px);\n}\n\n#loading-overlay {\n    background-color: rgba(0, 0, 0, 0.25);\n}\n\n@responsive {\n    .wd-380 {\n        width: 380px;\n    }\n\n    .ht-242-7 {\n        height: 242.7px;\n    }\n\n    .wd-216 {\n        width: 216px;\n    }\n\n    .ht-216 {\n        height: 216px;\n    }\n\n    .ht-350 {\n        height: 350px;\n    }\n\n    .ht-430 {\n        height: 430px;\n    }\n\n    .ht-60-vh {\n        height: 60vh;\n    }\n\n    .ht-700 {\n        height: 700px;\n    }\n}\n\n.text-map-color {\n    color: #09306b;\n}\n\n.vue-world-map {\n    height: 60vh;\n}\n\n@media only screen and (max-width: 1023px) {\n    .vue-world-map {\n        height: 100%;\n    }\n}\n</style>","import { render } from \"./index.vue?vue&type=template&id=6f18d4a8&scoped=true\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\n\nimport \"./index.vue?vue&type=style&index=0&id=6f18d4a8&lang=scss&scoped=true\"\nscript.render = render\nscript.__scopeId = \"data-v-6f18d4a8\"\n\nexport default script","module.exports = __webpack_public_path__ + \"img/ADPOLY.c72f79bb.png\";","<template>\n    <div class=\"w-full border rounded-lg flex items-center\" :class=\"classList\">\n        <icon-magnifying-glass class=\"h-4 w-4 text-gray-500 mr-2\"></icon-magnifying-glass>\n        <input type=\"text\" v-model=\"searchText\" placeholder=\"search\" class=\"w-full outline-none text-sm text-gray-600\">\n    </div>\n</template>\n\n<script>\nimport IconMagnifyingGlass from \"../icons/IconMagnifyingGlass.vue\";\nexport default {\n    name: \"search\",\n    props: [\"classList\"],\n    emits: [\"on-search\"],\n    components: { IconMagnifyingGlass, },\n    data() {\n        return {\n            searchText: \"\",\n        };\n    },\n    watch: {\n        searchText(newVal) {\n            this.$emit('on-search', newVal);\n        },\n    },\n    methods: {\n        clearInput() {\n            this.searchText = \"\";\n        },\n    },\n}\n</script>","import { render } from \"./search.vue?vue&type=template&id=78872e51\"\nimport script from \"./search.vue?vue&type=script&lang=js\"\nexport * from \"./search.vue?vue&type=script&lang=js\"\nscript.render = render\n\nexport default script"],"sourceRoot":""}