{"version":3,"file":"CheatSheetsListing.min.js","names":["window","onpopstate","console","log","location","reload","CheatSheetsListing","props","_AntiForgeryToken","id","$","ajax","url","type","dataType","beforeSend","xhr","setRequestHeader","success","data","complete","html","responseText","error","e","version","state","APIEndPoint","origin","queryParams","URLSearchParams","search","p","pageNo","get","perPage","pr","includes","totalResults","mostreleventfilter","mostreleventURL","listsData","filterMostRelevent","setFilterMostRelevent","React","useState","filterShowing","setFilterShowing","currentPage","setCurrentPage","responseData","setResponseData","showLoader","setShowLoader","totalRecordsCount","setTotalRecordsCount","setError","isLoaded","setIsLoaded","useEffect","pageChangeURL","joblistsDataResponseCode","pageAPI","sizeAPI","sortAPI","apiCallToGetJobLists","relevantURL","substring","history","pushState","pathname","params","fetch","method","headers","\"Content-Type\"","RequestVerificationToken","val","body","then","results","status","href","json","hasOwnProperty","errors","all_results","getTotalResult","total_results","getListingData","length","createElement","className","map","result","pIndex","download_uri","target","key","src","alt","description","loading","title","content_type","range","start","end","Array","from","_","idx","usePagination","totalCount","pageSize","siblingCount","paginationRange","useMemo","totalPageCount","Math","ceil","totalPageNumbers","leftSiblingIndex","max","rightSiblingIndex","min","parseInt","shouldShowLeftDots","width","shouldShowRightDots","firstPageIndex","lastPageIndex","sCount","rCount","leftItemCount","leftRange","endRange","rightItemCount","rightRange","middleRange","middleRangeResponsive","Fragment","style","display","handleMostReleventChangeSelect2","value","handleMostReleventChange","event","select2","minimumResultsForSearch","on","args","onChange","handleShowingChangeSelect2","handleShowingChange","onPageChange","onNext","onPrevious","lastPage","pointerEvents","onClick","preventDefault","pageNumber","page","scrollTo","ReactDOM","render","document","querySelector"],"sources":["CheatSheetsListing.js"],"sourcesContent":["'use strict';\r\nwindow.onpopstate = function(e) {\r\n console.log(\"Page reload\");\r\n location.reload(true);\r\n};\r\nconst CheatSheetsListing = (props) =>{\r\n const {\r\n version,state\r\n }= props;\r\n var APIEndPoint= window.location.origin;\r\n const queryParams = new URLSearchParams(window.location.search);\r\n var p = 1;\r\n var pageNo = queryParams.get('page');\r\n if(pageNo!== '' && pageNo !==null){\r\n p = pageNo;\r\n }\r\n //showing per page filter \r\n var perPage = 24;\r\n var pr = queryParams.get('items');\r\n var pageArray = ['24','48','96'];\r\n \r\n if(pr!== '' && pr !==null && pr!== undefined && pr!== 0){\r\n if(pageArray.includes(pr)){\r\n if(pr == '24' || pr == '48' || pr == '96' ){\r\n perPage = pr; \r\n } \r\n }\r\n }\r\n var totalResults=0;\r\n //mostrelevent filter\r\n var mostreleventfilter= 'asc';\r\n var mostreleventURL = queryParams.get('sort');\r\n if(mostreleventURL == 'asc'){\r\n mostreleventfilter = 'asc';\r\n }else if(mostreleventURL == 'desc'){\r\n mostreleventfilter = 'desc';\r\n }\r\n var listsData;\r\n const [filterMostRelevent, setFilterMostRelevent] = React.useState(mostreleventfilter);\r\n const [filterShowing, setFilterShowing] = React.useState(perPage); \r\n const [currentPage, setCurrentPage] = React.useState(p);\r\n const [responseData, setResponseData] = React.useState(null);\r\n const [showLoader, setShowLoader] = React.useState(false);\r\n const [totalRecordsCount, setTotalRecordsCount] = React.useState(0);\r\n const [error, setError] = React.useState(null);\r\n const [isLoaded, setIsLoaded] = React.useState(false);\r\n function _AntiForgeryToken(id) {\r\n $.ajax({\r\n url: \"/login/RefreshToken\",\r\n type: \"GET\",\r\n dataType: \"json\",\r\n beforeSend: function (xhr) {\r\n xhr.setRequestHeader('Content-Type', 'application/json');\r\n },\r\n success: function (data) {\r\n //console.log(data);\r\n },\r\n complete: function (data) {\r\n //console.log(\"Hello\", data);\r\n $(id).html(data.responseText);\r\n // Set our complete callback, \r\n },\r\n error: function (e) {\r\n //alert(\"error\");\r\n }\r\n });\r\n }\r\n React.useEffect(() => {\r\n setShowLoader(true);\r\n var pageChangeURL = '';\r\n var joblistsDataResponseCode = '';\r\n var pageAPI = '';\r\n var sizeAPI = '';\r\n var sortAPI = '';\r\n \r\n const apiCallToGetJobLists = () =>{\r\n setShowLoader(true);\r\n pageChangeURL = '';\r\n if(filterShowing !=='' && filterShowing >0){\r\n if(filterShowing != 24){\r\n pageChangeURL +='&items='+filterShowing;\r\n }\r\n sizeAPI = filterShowing;\r\n }\r\n if(currentPage !==''){\r\n if(currentPage != 1){\r\n pageChangeURL +='&page='+currentPage;\r\n }\r\n pageAPI = currentPage;\r\n }\r\n if(filterMostRelevent !== '' && filterMostRelevent!==null){\r\n var relevantURL = '';\r\n if(filterMostRelevent !== '' && filterMostRelevent!==null){\r\n if(filterMostRelevent == 'asc'){\r\n relevantURL = '';\r\n }else if(filterMostRelevent == 'desc'){\r\n relevantURL = '&sort=desc';\r\n }\r\n sortAPI = filterMostRelevent; \r\n }\r\n pageChangeURL+= relevantURL;\r\n }\r\n if(pageChangeURL != '')\r\n {\r\n pageChangeURL = \"?\" + pageChangeURL.substring(1);\r\n }\r\n history.pushState({}, null, window.location.origin+window.location.pathname+pageChangeURL);\r\n var params= '{\"Page\":{\"current\":'+pageAPI+',\"size\":'+sizeAPI+'}, \"SortBy\": \"'+sortAPI+'\"}';\r\n fetch(APIEndPoint +'/api/CheatSheets', {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n \"RequestVerificationToken\": $(\"#checkloginApi [name='__RequestVerificationToken']\").val()\r\n },\r\n body: params,\r\n }).then(results => {\r\n joblistsDataResponseCode = results.status;\r\n if(joblistsDataResponseCode == 204){\r\n window.location.href = window.location.origin+'/404'; \r\n }\r\n return results.json();\r\n }).then((data) => { \r\n _AntiForgeryToken(\"#checkloginApi\");\r\n if(data){\r\n setIsLoaded(true);\r\n if(data.hasOwnProperty('errors')){\r\n setError(data.errors);\r\n setShowLoader(false);\r\n }\r\n else{\r\n setResponseData(data);\r\n if(data.hasOwnProperty('all_results')){\r\n setTotalRecordsCount(data.all_results);\r\n }\r\n setShowLoader(false);\r\n } \r\n }else{\r\n console.log(\"Some thing went Wrong...\");\r\n setShowLoader(false);\r\n }\r\n },\r\n (error) => {\r\n _AntiForgeryToken(\"#checkloginApi\");\r\n console.log(\"error================\",error); \r\n setIsLoaded(true);\r\n setError(error);\r\n setShowLoader(false);\r\n })\r\n }\r\n \r\n //const timeout = setTimeout(() => {\r\n apiCallToGetJobLists(); \r\n //}, 1000)\r\n //return () => clearTimeout(timeout);\r\n \r\n }, [filterMostRelevent,filterShowing,currentPage]);\r\n\r\n const getTotalResult = () =>{\r\n if(responseData !== null ){\r\n if(responseData.hasOwnProperty('total_results')){\r\n totalResults = responseData.total_results;\r\n }\r\n }\r\n return totalResults;\r\n }\r\n\r\n const getListingData = () => {\r\n if(responseData !== null ){\r\n listsData = responseData.results;\r\n if(listsData.length>0){\r\n return(\r\n