{"version":3,"sources":["components/layout/Breadcrumb.js","components/layout/NavMenu.js","state/actions/homeActions.js","components/layout/UserID.js","components/ErrorComponent.js","routerHistory.js","common/AuthenticationError.js","services/ApiService.js","services/sendFeedbackService.js","pages/Common/WarningDialog.js","components/layout/Feedback.js","components/layout/Footer.js","components/layout/Products.js","components/layout/ManageAlerts/ManageAlertItem.js","pages/utils/common.js","components/layout/ManageAlerts/ManageAlertsOptions.js","components/layout/ManageAlerts/ManageAlertsItemTitle.js","components/layout/ManageAlerts/ManagerAlertsConfirm.js","common/EmailAdditionalRecipients/EmailWarningBlock.js","common/EmailAdditionalRecipients/EmailAdditionalRecipientsConfirm.js","common/EmailAdditionalRecipients/EmailAdditionalRecipients.js","pages/Common/EditParentAlertOverlay.js","components/layout/ManageAlerts/ManageAlertsOverlay.js","components/layout/Header.js","components/Ticker/NewsTicker.js","components/Ticker/TickerList.js","components/Ticker/index.js","utils/scrollToTop.js","components/layout/ScrollArrow.js","components/layout/Layout.js","utils/ProtectedRoute.js","pages/Home/Data/config.js","pages/Home/SearchForm.js","components/charts/wrapLabel.js","components/charts/BarChart.js","utils/testUtils.js","utils/color.js","state/selectors/loadingSelector.js","pages/Home/CollegeBI.js","pages/Home/MapChart.js","components/charts/PieChart.js","pages/Home/PracticeAreaBI.js","pages/Home/YearAdmittedtobarBI.js","pages/Home/StatesBI.js","pages/Home/CitiesBI.js","utils/getStateName.js","utils/getStateCountryTitle.js","utils/getStateQueryString.js","pages/Home/Statistics.js","state/actions/spinnerActions.js","state/actions/locationActions.js","pages/Home/index.js","state/actions/searchActions.js","services/DownloadService.js","pages/Search/SearchResultOptions.js","pages/Search/SearchResultHeader.js","pages/utils/reduceSelections.js","components/NoRecordFound.js","pages/Search/SearchResultListItem.js","pages/Search/PaginationV1.js","pages/Search/SearchResultDetail.js","pages/Search/CitiesResultsBI.js","pages/Search/StatesResultsBI.js","pages/utils/lawyerYATBCount.js","pages/Search/YearsAdmitedtoBarSRPBI.js","components/charts/HorizontalBarchart.js","pages/utils/lawyerCount.js","pages/utils/lawyerPACount.js","pages/utils/lawyerCollegeCount.js","pages/Search/PaginationBarChartV1.js","pages/Search/SRPAllBIs.js","pages/Search/SRPBIOverlay.js","pages/Search/PracticeAreasResultsBI.js","pages/Search/CollegesBI.js","pages/Common/CreateParentAlertOverlay.js","pages/Search/index.js","state/actions/readActions.js","pages/Read/ReadHeader.js","utils/highlightField.js","utils/showField.js","pages/Common/RBSFilings.js","pages/Read/ReadCompany.js","pages/Read/ReadLawyers.js","pages/Read/CollegesBi.js","pages/Read/PracticeAreaBi.js","pages/Read/TitlesBi.js","pages/Read/ReadParentCompany.js","pages/Read/ReadAllBIs.js","pages/Read/ReadBIOverlay.js","pages/Read/index.js","state/actions/readCheckedActions.js","pages/ReadChecked/ReadCheckedHeader.js","pages/ReadChecked/ReadCheckedLawyers.js","pages/ReadChecked/ReadCheckedParentCompany.js","pages/ReadChecked/ReadCheckedCompany.js","pages/ReadChecked/ReadCheckedResultItem.js","pages/ReadChecked/ReadCheckedResult.js","pages/ReadChecked/ReadCheckedCollegesBi.js","pages/ReadChecked/ViewCheckedAllBIs.js","pages/ReadChecked/ViewCheckedBIOverlay.js","pages/ReadChecked/ReadCheckedPracticeAreaBi.js","pages/ReadChecked/ReadCheckedTitlesBi.js","pages/ReadChecked/index.js","App.js","registerServiceWorker.js","state/reducers/homeReducer.js","pages/utils/searchResultSort.js","state/reducers/searchReducer.js","state/reducers/readReducer.js","state/reducers/readCheckedReducer.js","state/reducers/spinnerReducer.js","state/reducers/locationReducer.js","state/reducers/index.js","state/reducers/loadingReducer.js","services/searchDataService.js","utils/prepareQueryString.js","services/practiceAreaDataService.js","services/collegeDataService.js","services/yearsAdmitedtoBarDataService.js","state/sagas/searchSaga.js","services/readDataService.js","services/RBSFilingsService.js","state/sagas/readSaga.js","services/readCheckedDataService.js","state/sagas/readCheckedSaga.js","services/HomeDataService.js","state/sagas/homeSaga.js","state/sagas/index.js","state/store/index.js","components/Spinner.js","index.js","../node_modules/typescript/lib sync"],"names":["withBreadcrumbs","breadcrumbs","location","useLocation","history","useHistory","className","map","breadcrumb","match","path","url","pathname","document","referrer","includes","host","newUrl","replace","origin","onClick","e","preventDefault","push","href","to","goBack","getBreadCrumb","NavMenu","props","toggleNavbar","setState","collapsed","state","Breadcrumb","role","Component","displayName","name","STATE_MULTIPLE_SELECTED","STATE_RESET","STATE_SINGLE_SELECTED","LOAD_HOME_DATA","LOAD_HOME_DATA_BY_STATES","TOTAL_COUNSEL_COUNT_LOADED","TOTAL_COUNSEL_EMAIL_COUNT_LOADED","USER_INFO_LOADED","USER_INFO_REQUESTED","RSS_FEED_LOADED","RSS_FEED_REQUESTED","PRODUCTS_REQUESTED","PRODUCTS_LOADED","HOME_DATA_TOP_CITIES_REQUEST","HOME_DATA_TOP_COLLEGES_REQUEST","HOME_DATA_COUNSEL_COUNT_REQUEST","HOME_DATA_TOP_PRACTICEAREAS_REQUEST","HOME_DATA_TOP_YEARADMITTEDTOBAR_REQUEST","HOME_DATA_COUNSEL_COUNT_LOADED","HOME_DATA_TOP_PRACTICEAREAS_LOADED","HOME_DATA_TOP_YEARADMITTEDTOBAR_LOADED","HOME_DATA_TOP_CITIES_LOADED","HOME_DATA_TOP_COLLEGES_LOADED","selectMultipleStates","usStates","type","resetStates","topCitiesDataLoadedAction","data","topCollegesDataLoadedAction","counselCountByStateLoaded","topPracticeAreasDataLoaded","topYearAdmittedToBarLoaded","totalCounselCountLoaded","totalCounselEmailCountLoaded","UserID","userInfo","useSelector","home","dispatch","useDispatch","useEffect","Username","window","pendo","initialize","visitor","id","Sub","domain","Domain","account","OrganizationCode","defaultShortInfo","defaultLogInfo","ErrorComponent","errorMessage","resetErrorBoundary","returnToHomeLink","wk-icon","wk-icon-type","aria-hidden","logAndRedirectToErrorPage","error","post","shortInfo","logInfo","message","then","catch","redirectToErrorPage","logError","info","createBrowserHistory","AuthenticationError","params","Error","captureStackTrace","date","Date","controller","AbortController","signal","get","a","fetch","headers","method","response","status","abort","encodeURIComponent","search","json","body","JSON","stringify","sendFeedback","feedback","WaringDialog","isVisible","header","closeDialog","tabIndex","clsx","aria-label","Feedback","closeFeedback","useState","topic","setTopic","setMessage","warningVisible","setWarningVisible","warningMessage","setWarningMessage","warningHeader","setWarningHeader","fieldTopicError","setFieldTopicError","fieldMessageError","setFieldMessageError","topicErrorNote","setTopicErrorNote","messageErrorNote","setMessageErrorNote","handleCloseFeedback","handleSubmit","placeholder","value","onChange","event","target","Footer","setVisible","rel","src","alt","dayjs","format","Products","sortedItems","products","sort","b","filter","item","cpid","ManageAlertsItem","deleteManageAlerts","index","editAlert","showTooltip","setShowTooltip","showEditTooltip","setShowEditTooltip","data-testid","alertId","company","createdon","modifiedon","onMouseEnter","onMouseLeave","style","marginTop","display","LABEL_HEIGHT","labelLargeHeight","labelMediumHeight","labelSmallHeight","BI_TITLE","BI_READ_VIEW_CHECKED_TITLE","REPORTS_TYPE","READ_LAWYER_LABELS","Practice_Areas","Joined_Firm","US_State_Non_US_Bars","Education","Previous_Positions","Memberships_Affiliations","Telephone_Number","MANAGE_ALERTS_OPTIONS","SEARCH_RESULT_OPTIONS","EMAIL_ADDITIONAL_ECIPENTS_MODE","RADIUS_DATA","radiusLarge","radiusMedium","radiusSmall","RADIUS_DATA_INDEX","radiusLargeIndex","radiusMediumIndex","radiusSmallIndex","BI_LABEL","BI_READ_VIEW_CHECKED_LABEL","ManageAlertsOptions","changeHandler","marginLeft","defaultValue","ManageAlertsItemTitle","disabled","scrollbar","onCheckAllChange","fontWeight","ManageAlertsConfirm","isSingleDeleted","deleteClicked","EmailWarningBlock","marginBottom","EmailAdditionalRecipientsConfirm","YesClicked","width","EmailAdditionalRecipients","additionalRecipients","syncAdditionalRecipients","isAdditionalRecipientsDisabled","add_title","inputLabel","setInputLabel","selectedIndex","setSelectedIndex","btnLabel","setBtnLabel","isConfirmDialogVisible","setConfirmDialogVisible","isWarningVisible","hasError","setHasError","mode","setMode","EmailRecipients","setEmailRecipients","split","Mousehover","showHideTooltip","MouseOut","visibility","getElementById","isEmailValid","email","RegExp","test","length","setTimeout","ele","emailList","emailList_clone","isDuplicated","new_len","i","toLowerCase","add_edit_len","EmailListFinal","forEach","join","showEditMode","deleteItem","newList","EditParentAlertOverlay","selectedAlert","saveAlert","closeOverlay","originalAdditionalRecipients","setOriginalAdditionalRecipients","setAdditionalRecipients","isDirty","setIsDirty","additionalrecipients","Email","parentcompanyid","ManageAlertsOverlay","managealertList","deleteenabled","setDeleteEnabled","isDeletedByIcon","setDeletedByIcon","selectedAlertId","setSelectedAlertId","managealertListLocal","setManagealertListLocal","isParentAlertVisible","setParentAlertVisible","selectedEditAlert","setSelectedEditAlert","selectedOptionValue","setSelectedOptionValue","optionChange","val","sorted_List","CreatedOnDistinct","Array","from","Set","s","c","getTime","reverse","createdOnSortList","f","sortAlerts","ModifiedOnDistinct","modifiedOnSortList","sortedList","alertList","checked","deleteEnabled","deletedEnabled","element","checkedList","uncheckList","aids","recipients","parentCompanyId","Header","AlertUpdated","setCollapsed","setManagealertList","showAlertButton","startsWith","getManageAlertsData","aria-haspopup","aria-expanded","aria-labelledby","NewsTicker","title","TickerList","children","Ticker","feed","rssFeed","Title","Text","Links","Uri","scrollToTop","withoutScrollEffect","scroll","top","left","behavior","ScrollArrow","showScroll","setShowScroll","addEventListener","pageYOffset","Layout","LayoutAlertUpdated","setLayoutAlertUpdated","FallbackComponent","onError","ProtectedRoute","rest","v","cookie","getCookie","companyStates","practiceAreas","usStateBars","nonUSStateBars4CA","nonUSStateBars4Others","checkboxClassName","SearchForm","searchWarning","useForm","register","errors","selectedCompanyStates","selectedPracticeAreas","selectedNonUSStates","selectedUSStates","setHeader","onCheckChange","prefix","elementId","updatedStatus","selectedItems","parentEle","parentElement","itemsLimit","updatedBackgroundColor","splice","onSubmit","values","Params","querystring","queryString","companystates","USStates","NonUSState","canPush","startYear","EndYear","Param","parseInt","substring","decodeURI","whiteSpace","ref","maxLength","desc","yf","htmlFor","validate","isNaN","yt","wrapLabel","label","limit","words","aux","concat","trim","BarChart","buildChart","myChartRef","chartRef","current","getContext","chart","Chart","labels","datasets","backgroundColor","backgroundColors","options","responsive","maintainAspectRatio","aspectRatio","legend","hover","onHover","this","getElementAtEvent","cursor","scales","yAxes","ticks","beginAtZero","xAxes","callback","chartClick","evt","activePoints","getElementsAtEvent","chartData","config","idx","legendCallBack","text","React","createRef","update","registerTestObject","key","testObjects","BI","color","end","colorSet","createLoadingSelector","actions","_","some","action","CollegeBi","selectedStates","stats","topColleges","loadingSelector","loading","legendItem","triggerSearch","offsets","VT","NH","MA","RI","CT","NJ","DE","MD","DC","MapChart","selectStateSearchHandler","hasClickedSearch","selectStateAction","clearHandler","stateId","clickedstate","multipleSelectMode","resetStatesAction","mapClickHandler","shiftKey","selectSingleStateAction","selStateCodes","wk-context","projection","geography","geographies","geo","cur","allStates","find","centroid","geoCentroid","rsmKey","stroke","fill","Object","keys","indexOf","WarningDialog","StateAbbreviation","coordinates","y","fontSize","textAnchor","StateAnnotation","subject","dx","dy","x","alignmentBaseline","connect","usState","withRouter","Piechart","elements","arc","borderWidth","PracticeAreaBi","practiceAreaBiData","topPracticeAreas","practiceArea","YearAdmittedtobarBI","yearAdmittedToBarBiData","topYearAdmittedToBars","TopStatesBi","topStatesBiData","counselCountByState","TopCompaniesBi","topCitiesBiData","topCities","getStateName","statename","getStateCountryTitle","selstatecodes","substr","getStateQueryString","stateqry","Statistics","selectedStateCodes","totalCount","totalCountWithEmail","submitHandler","queryStr","selstate","ids","stateClickedHandler","Math","round","SPINNER_CHANGED","spinnerChangedAction","isLoading","LOCATION_CHANGED","onLocationChanged","Home","totalCounselCount","totalCounselEmailCount","isSearchWarningVisible","setSearchWarningVisible","searchWarningHeader","setSearchWarningHeader","searchWarningBody","setSearchWarningBody","initialRender","setInitialRender","states","undefined","loadTopCities","loadTopColleges","loadCounselCountByState","loadTopPracticeAreas","loadTopYearAdmittedToBars","float","PRACTICEAREA_DATA_REQUESTED","PRACTICEAREA_DATA_LOADED","PRACTICEAREA_CURRENT_MAIN_RESULTS_LOADED","SEARCH_DATA_REQUESTED","SEARCH_DATA_LOADING","SEARCH_DATA_LOADED","SEARCH_CURRENT_MAIN_RESULTS_LOADED","YEARSADMITEDTOBAR_DATA_REQUESTED","YEARSADMITEDTOBAR_DATA_LOADED","YEARSADMITEDTOBAR_CURRENT_MAIN_RESULTS_LOADED","COLLEGES_DATA_REQUESTED","COLLEGES_DATA_LOADED","COLLEGES_CURRENT_MAIN_RESULTS_LOADED","FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS","FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS_ALL","RESET_ALL_SEARCH_DATA","FILTER_BY_MAIN_RESULTS_BY_YEAR","SET_SEARCH_PAGE","SELECT_SEARCH_ITEM","RESET_SELECT_SEARCH_ITEM","SET_SELECT_ALL","SEARCH_RESET_INITIAL_STATE","SET_BARCHART_PAGE","RESET_BARCHART_PAGE","SEARCH_DATA_SORTBY","YEARSADMITEDTOBAR_DATA_BY_SEARCH_REQUEST","COLLEGES_DATA_BY_SEARCH_REQUEST","PRACTICEAREA_DATA_BY_SEARCH_REQUEST","YEARSADMITEDTOBAR_DATA_BY_SEARCH_LOADED","COLLEGES_DATA_BY_SEARCH_REQUEST_LOADED","PRACTICEAREA_DATA_BY_SEARCH_LOADED","practiceAreaDataLazyLoading","payload","yearsAdmittedToBarDataLazyLoading","filterMainResultsByLawyerIds","lawyerIds","searchCurrentMainResultsLoaded","searchDataLoaded","practiceAreaCurrentMainResultsLoaded","yearsAdmitedtoBarDataRequested","yearsAdmitedtoBarCurrentMainResultsLoaded","collegesDataRequested","collegesCurrentMainDataLoaded","selectSearchItem","lId","downloadLawyers","blob","URL","createObjectURL","Blob","link","createElement","setAttribute","appendChild","click","parentNode","removeChild","SearchResultOptions","SearchResultHeader","print","showParentAlertOverlay","currentPage","searchPage","mainData","currentMainResults","allData","allMainResults","selectAll","setSelectAll","isToolbarActive","height","setSelectAllAction","lawyer","lawyerId","finally","showWarning","parentCompaniesList","sorted","findIndex","t","fkParentCompany","slice","processingParentCompanies","wk-button","lastIndex","firstIndex","marginRight","NoRecordFound","SearchResultListItem","checkBoxOnChange","companyId","subsidiary","fName","lName","suffix","city","lookupStateProvince","PaginationV1","totalRecords","pageSize","paginate","setPage","paginationAction","totalPages","ceil","PagesLimit","handlePageNumbers","startingPage","endingPage","pages","pageNumbers","setPageNumbers","selectedPage","PAGINATION_ACTION","selectPage","updatePageNumbers","page","newIndex","PrevPage","prevPage","pn","nextPage","SearchResultDetail","isPrinting","sortBy","setSelectedPage","setPaginationAction","filteredResults","fr","pagNumber","CitiesResultsBi","isOverlay","cityBiData","store","useStore","take","result","getState","filterByLawyerIds","StatesResultsBi","statesBiData","getLawyerCount","currentYearsAdmitedtoBarResults","Years","attbr","relevance","reduce","res","year","YearAdmittedToBarSRPBI","setStats","currentYearsAdmittedBarResults","resultTop","lid","HorizontalBarchart","destroy","factor","lawyerCount","resultArr","sc","flag","j","resultArrSorted","orderBy","resultArrSortedfirstX","getLawyerPACount","currentPracticeAreasResults","occurrences","entries","count","getLawyerCollegeCount","currentCollegesResult","colleges","college","PaginationBarChartV1","barChartPage","SRPAllBIs","currentResult","selectedBIIndex","isPieChart","currentBarChartPage","rstAll","setrstAll","BIIndexs","setBIIndexs","resultAll","resultPage","cloneDeep","scrollTo","indexs","SRPBIOverlay","filterData","chartType","reSizeBI","headerEle","section","clientHeight","margin","getComputedStyle","bodyHeight","innerHeight","overflow","paddingTop","PracticeAreasResultsBI","getStats","currentCollegesResults","currentYearsCollegesResults","CreateParentAlertOverlay","selections","parentCompanyAlertsPresent","maxWarningCompanies","checkedItems","setCheckedItems","isDialogVisible","setDialogVisible","setAdditionalRecipientsDisabled","presentCompaniesWarning","setPresentCompaniesWarning","presentCompaniesMessage","setPresentCompaniesMessage","maxCompaniesWarning","setMaxCompaniesWarning","maxCompaniesMessage","setMaxCompaniesMessage","setRecipients","presentSelections","presentSelectionsCompanies","every","ps","isAnyCompanyChecked","getElementsByClassName","selection","handleChange","emaillist","Search","previousLocation","setMaxWarningCompanies","setSelections","setParentCompanyAlertsPresent","parse","searchCriteria","setIsPrinting","isPieChartVisible","setPieChartVisible","isHorizontalBarVisible","setHorizontalBarVisible","setSelectedBIIndex","setSortBy","setCurrentResult","resultCity","resultStates","resultPA","resultColleges","mainCurrentResults","filterMainResultsByLawyerIdsAll","showSRPBIOverlay4Pie","showSRPBIOverlay4Horizontal","toString","onKeyPress","ctrlKey","keyCode","printMq","matchMedia","mqEvent","mqList","matches","onkeydown","addListener","navigator","userAgent","onafterprint","removeListener","textAlign","StatesResultsBI","CitiesResultsBI","searchDataSortBy","resetAllSearchData","COMPANY_DATA_REQUESTED","COMPANY_DATA_LOADED","COMPANYLAWYERS_DATA_REQUESTED","COMPANYLAWYERS_DATA_LOADED","FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS","LAWYER_DATA_REQUESTED","LAWYER_DATA_LOADED","UPDATE_COMPANYLAWYERS_DATA","COMPANY_COLLEGE_DATA_REQUESTED","COMPANY_COLLEGE_DATA_LOADED","COMPANY_PA_DATA_REQUESTED","COMPANY_PA_DATA_LOADED","COMPANY_TITLE_DATA_REQUESTED","COMPANY_TITLE_DATA_LOADED","PARENTCOMPANY_DATA_REQUESTED","PARENTCOMPANY_DATA_LOADED","PARENTCOMPANYLAWYERS_DATA_REQUESTED","PARENTCOMPANYLAWYERS_DATA_LOADED","RBSFILINGS_DATA_REQUESTED","RBSFILINGS_DATA_LOADED","RESET_ALL_READ_DATA","READ_RESET_INITIAL_STATE","updateCompanyLawyersData","companyDataRequested","filterAllCompanyResultsByLawyerIds","companyCollegeDataRequested","companyPaDataRequested","companyTitleDataRequested","RBSFilingsDataRequested","ReadHeader","pid","currentCompanyLawyers","read","allCompanyLawyers","companyResult","parentCompanyResult","isChecked","parentSelection","currentName","highlightField","resultset","fieldName","fieldsChangedList","showField","fieldValue","RBSFilings","ticker","rbsfilingsInfo","rbsfilings","rootUrl","userId","hash","open","ReadCompany","formerName","fontStyle","st1","st2","zip","country","phone","extension","fax","exchange","ReadLawyers","toggleToolbar","companyLawyers","parseDegree","degree","handleReadToolbar","lawyers","handleAllChecked","ccr","degrees","handleCheckLawyerElement","firstName","lastName","lawyerSuffix","pa","yearJoined","position","barInfo","bi","clg","ed","prevPos","pp","memberships","mem","currentPaResults","getTitleCount","TitlesBi","currentTitlesResults","ReadParentCompany","ReadAllBIs","ReadBIOverlay","Read","cid","setIsToolbarActive","readParentCompany","companyLawyersDataRequested","parentCompanyLawyersDataRequested","parentCompanyDataRequested","showReadBIOverlay4Pie","showReadBIOverlay4Horizontal","align","isActive","READCHECKED_COMPANY_DATA_REQUESTED","READCHECKED_COMPANY_DATA_LOADED","READCHECKED_LAWYER_DATA_REQUESTED","READCHECKED_LAWYER_DATA_LOADED","READCHECKED_FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS","LAWYERS_COLLEGE_DATA_REQUESTED","LAWYERS_COLLEGE_DATA_LOADED","LAWYERS_PA_DATA_REQUESTED","LAWYERS_PA_DATA_LOADED","LAWYERS_TITLES_DATA_REQUESTED","LAWYERS_TITLES_DATA_LOADED","READCHECKED_RESET_ALL_READ_DATA","READCHECKED_SET_SELECT_ALL","READCHECKED_UPDATE_COMPANY_LAWYERS_DATA","READCHECKED_RESET_INITIAL_STATE","readcheckedCompanyDataLoaded","lawyersCollegeDataRequested","lawyersPADataRequested","lawyersTitlesDataRequested","readcheckedfilterAllCompanyResultsByLawyerIds","ReadCheckedHeader","currentLawyers","readchecked","allLawyers","checkedUberIds","uberId","parentSelections","cId","ReadCheckedLawyers","ReadCheckedParentCompany","lawyersList","l","companyInfoShown","companyInfo","ReadCheckedCompany","handleCityState","parentCompanyInfo","ReadCheckedResultItem","resultItem","parentInfo","companies","ReadCheckedResult","readcheckedResult","parentCompanies","readCheckedSelectAll","setReadCheckedSelectAll","getCompanyLawyers","getCompanies","pCompany","companiesResult","getCompanySubsidiaries","hrShown","parentLawyerLength","companyLawyerLength","setReadCheckedSelectAllAction","ReadCheckedCollegesBi","readSelectedcurrentCollegesResults","ViewCheckedAllBIs","ViewCheckedBIOverlay","ReadCheckedPracticeAreaBi","readSelectedcurrentPAResults","ReadCheckedTitlesBi","readSelectedcurrentTitlesResults","ReadChecked","lids","showViewCheckedBIOverlay4Pie","showViewCheckedBIOverlay4Horizontal","paddingBottom","App","setAlertUpdated","alertParentCompaniesIds","component","exact","Boolean","hostname","initialState","getCurrentMainResultsSortBy","allPracticeAreasResults","allYearsAdmitedtoBarResults","allYearsCollegesResults","allCollegesResults","allPaResults","allTitlesResults","readSelectedallCollegesResults","readSelectedallPAResults","readSelectedallTitlesResults","combineReducers","allResultSet","filteredMainResults","filteredColleges","filteredPracticeAreas","filteredYearAdmittedToBar","filteredMainResultsAll","filteredCollegesAll","filteredPracticeAreasAll","filteredYearAdmittedToBarAll","filteredYearAdmittedToBarByYear","filteredMainResultsByYear","filteredCollegesByYear","filteredPracticeAreasByYear","currentResults","currentMainResultsSortBy","filteredCompanyLawyers","filteredTitles","readselectedfilteredCompanyLawyers","readSelectedfilteredColleges","readSelectedfilteredPracticeAreas","readSelectedfilteredTitles","spinner","exec","requestName","requestState","getSearchResults","cn","cc","cs","an","ap","auj","anj","at","am","al","ad","yb","gc","em","preparQueryString","prepareQueryString","getPracticeAreasBySearch","getPracticeAreasByLawyerId","getCollegesBySearch","getCollegesByLawyerId","getYearsAdmittedtoBarResultsBySearch","getYearsAdmitedtoBarResults","getPracticeAreaResultsLazyLoading","getYearsAdmitedtoBarResultsLazyLoading","getCollegesLazyLoading","getSearchRsults","getPracticeAreaRsults","getYearsAdmitedtoBarRsults","getCollegesResults","watchGetPracticeAreResults","watchGetSearchResults","watchGetYearsAdmitedtoBarResults","watchGetCollegesResults","watchCollegesDataLazyLoading","watchYearsAdmittedToBarDataLazyLoading","watchPracticeAreaDataLazyLoading","call","practiceAreaResults","put","yearAdmittedResults","collegesResults","searchResult","results","takeLatest","fork","getParentCompanyData","getCompanyData","getCompanyLawyersData","getParentCompanyLawyersData","getLawyerData","getCompanyColleges","getCompanyPa","getCompanyTitles","getRBSFilingsInfo","getCompanyResult","getParentCompanyResult","getCompanyLawyersResult","getParentCompanyLawyersResult","getLawyerResult","getCompanyCollegeResults","getCompanyPaResults","getCompanyTitleResults","getRBSFilingsResult","watchGetParentCompanyResult","watchGetCompanyResult","watchGetCompanyLawyersResult","watchGetParentCompanyLawyersResult","watchGetLawyerResult","watchCompanyColleges","watchCompanyPa","watchCompanyTitle","watchRBSFilings","all","postLawyerData","getPAsByLawyerId","getTitlesByLawyerId","getReadCheckedCompanyResult","getReadCheckedLawyerResult","watchReadCheckedGetCompanyResult","watchReadCheckedGetLawyerResult","getLawyersCollegeResult","getLawyersPAResult","getLawyersTitlesResult","watchGetLawyersCollegeResult","watchGetLawyersPAResult","watchGetLawyersTitlesResult","readCheckedResult","readLawyersCollegeResult","readLawyersPAResult","readLawyersTitlesResult","getTopCities","getTopColleges","getCounselCountByState","getTopPracticeAreas","getTopYearAdmittedToBars","getTotalCounselCount","getTotalCounselEmailCount","getUserInfo","getRssFeed","getProducts","loadHomeDataMandatoryComponentsTask","loadHomeDataByStateTask","userInfoTask","rssFeedTask","productsTask","watchLoadTopCities","watchLoadTopColleges","watchLoadCounselCountByState","watchLoadTopPracticeAreas","watchLoadTopYearAdmittedToBars","watchLoadHomeData","watchLoadHomeDataByStates","watchUserInfo","watchRssFeed","watchProducts","totalCounselCountResponse","totalCounselEmailCountResponse","topCitiesResponse","topCollegesResponse","counselByStateCountResponse","practiceAreasResponse","yearAdmittedToBarResponse","rootSaga","homeSaga","searchSaga","readSaga","readCheckedSaga","sagaMiddleware","createSagaMiddleware","composeEnhancers","compose","createStore","rootReducer","applyMiddleware","run","root","rootElement","getElementsByTagName","getAttribute","ReactDOM","render","serviceWorker","ready","registration","unregister","webpackEmptyContext","req","code","resolve","module","exports"],"mappings":"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AM,KAAQ,mBACtB,CAAE,GAAM,KAAM,KAAQ,sBACtB,CAAE,GAAM,KAAM,KAAQ,kBACtB,CAAE,GAAM,KAAM,KAAQ,eACtB,CAAE,GAAM,KAAM,KAAQ,cACtB,CAAE,GAAM,KAAM,KAAQ,sBACtB,CAAE,GAAM,KAAM,KAAQ,2BACtB,CAAE,GAAM,KAAM,KAAQ,OACtB,CAAE,GAAM,KAAM,KAAQ,sBACtB,CAAE,GAAM,KAAM,KAAQ,qBACtB,CAAE,GAAM,KAAM,KAAQ,aACtB,CAAE,GAAM,KAAM,KAAQ,kBACtB,CAAE,GAAM,KAAM,KAAQ,sBACtB,CAAE,GAAM,KAAM,KAAQ,0BAEbC,GAAc,CACvB,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MAESC,GAAoB,CAC7B,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MAESC,GAAwB,CACjC,WACA,YACA,YACA,SACA,KACA,SACA,SACA,QACA,QACA,KACA,WACA,KACA,UACA,kBACA,oBACA,MACA,4BACA,UACA,SACA,YACA,QACA,YACA,UACA,SACA,QACA,QACA,4BACA,UACA,WACA,gBACA,SACA,kBACA,cACA,UACA,KACA,SACA,gBACA,cACA,KACA,MACA,iBACA,KACA,KACA,SACA,cACA,YACA,WACA,YACA,eACA,cACA,KACA,QACA,cACA,SACA,KACA,KACA,iBACA,OACA,YACA,MACA,KACA,UC/OEC,GAAoB,oBAkWXC,GAhWI,SAAC,GAAsC,IAApCL,EAAmC,EAAnCA,cAAeM,EAAoB,EAApBA,cAAoB,EAEVC,eAAnC3O,EAF6C,EAE7CA,aAAc4O,EAF+B,EAE/BA,SAAUC,EAFqB,EAErBA,OAFqB,EAGrBhQ,mBAAS,IAAlCiQ,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","file":"static/js/main.a5024895.chunk.js","sourcesContent":["import React from \"react\";\r\nimport withBreadcrumbs from 'react-router-breadcrumbs-hoc';\r\nimport { Link, useHistory } from \"react-router-dom\";\r\nimport { useLocation } from \"react-router\";\r\n\r\nconst BreadcrumbComponent = ({ breadcrumbs }) => {\r\n const location = useLocation();\r\n const history = useHistory();\r\n let getBreadCrumb = (path, url, breadcrumb) => {\r\n if (path === \"/search/readchecked\") {\r\n return
  • Read
  • \r\n }\r\n if (location.pathname !== \"/search\" && path === \"/search\") {\r\n if (document.referrer.includes(document.location.host) && document.referrer.includes(\"/search?\")) {\r\n let newUrl = document.referrer.replace(document.location.origin, \"\");\r\n return (\r\n
  • \r\n {\r\n e.preventDefault();\r\n history.push(newUrl);\r\n }}\r\n href={newUrl}>\r\n {breadcrumb}\r\n \r\n
  • );\r\n }\r\n }\r\n if (path === \"/\")\r\n return (\r\n
  • \r\n \r\n {breadcrumb}\r\n \r\n
  • );\r\n if (path === location.pathname)\r\n return
  • {breadcrumb}
  • \r\n return (\r\n
  • \r\n {\r\n e.preventDefault();\r\n history.goBack();\r\n }}\r\n href={url}>\r\n {breadcrumb}\r\n \r\n
  • );\r\n };\r\n return (\r\n
    \r\n
      \r\n {breadcrumbs.map(({ breadcrumb, match }) => getBreadCrumb(match.path, match.url, breadcrumb))}\r\n
    \r\n
    \r\n )\r\n}\r\nexport default withBreadcrumbs()(BreadcrumbComponent)\r\n","import React, {Component} from 'react';\r\nimport clsx from \"clsx\";\r\nimport {Link} from 'react-router-dom';\r\nimport './NavMenu.css';\r\nimport Breadcrumb from \"./Breadcrumb\";\r\n\r\nexport class NavMenu extends Component {\r\n static displayName = NavMenu.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n collapsed: false\r\n };\r\n }\r\n\r\n toggleNavbar = () => {\r\n this.setState({\r\n collapsed: !this.state.collapsed\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","export const STATE_MULTIPLE_SELECTED = \"STATE_SELECTED\";\r\nexport const STATE_RESET = \"STATE_UN_SELECTED\";\r\nexport const STATE_SINGLE_SELECTED = \"STATE_SINGLE_SELECTED\";\r\nexport const COUNSEL_COUNT_COUNT_REQUEST = \"COUNSEL_COUNT_COUNT_REQUEST\";\r\nexport const LOAD_HOME_DATA = \"LOAD_HOME_DATA\";\r\nexport const LOAD_HOME_DATA_BY_STATES = \"LOAD_HOME_DATA_BY_STATES\";\r\nexport const TOTAL_COUNSEL_COUNT_LOADED = \"TOTAL_COUNSEL_COUNT_LOADED\";\r\nexport const TOTAL_COUNSEL_EMAIL_COUNT_LOADED = \"TOTAL_COUNSEL_EMAIL_COUNT_LOADED\";\r\nexport const USER_INFO_LOADED = \"USER_INFO_LOADED\";\r\nexport const USER_INFO_REQUESTED = \"USER_INFO_REQUESTED\";\r\nexport const RSS_FEED_LOADED = \"RSS_FEED_LOADED\";\r\nexport const RSS_FEED_REQUESTED = \"RSS_FEED_REQUESTED\";\r\nexport const PRODUCTS_REQUESTED = \"PRODUCTS_REQUESTED\";\r\nexport const PRODUCTS_LOADED = \"PRODUCTS_LOADED\";\r\n//Request Actions\r\nexport const HOME_DATA_TOP_CITIES_REQUEST = \"HOME_DATA_TOP_CITIES_REQUEST\";\r\nexport const HOME_DATA_TOP_COLLEGES_REQUEST = \"HOME_DATA_TOP_COLLEGES_REQUEST\";\r\nexport const HOME_DATA_COUNSEL_COUNT_REQUEST = \"HOME_DATA_COUNSEL_COUNT_REQUEST\";\r\nexport const HOME_DATA_TOP_PRACTICEAREAS_REQUEST = \"HOME_DATA_TOP_PRACTICEAREAS_REQUEST\";\r\nexport const HOME_DATA_TOP_YEARADMITTEDTOBAR_REQUEST = \"HOME_DATA_TOP_YEARADMITTEDTOBAR_REQUEST\";\r\n//Success Actions\r\nexport const HOME_DATA_COUNSEL_COUNT_LOADED = \"HOME_DATA_COUNSEL_COUNT_LOADED\";\r\nexport const HOME_DATA_TOP_PRACTICEAREAS_LOADED = \"HOME_DATA_TOP_PRACTICEAREAS_LOADED\";\r\nexport const HOME_DATA_TOP_YEARADMITTEDTOBAR_LOADED = \"HOME_DATA_TOP_YEARADMITTEDTOBAR_LOADED\";\r\nexport const HOME_DATA_TOP_CITIES_LOADED = \"HOME_DATA_TOP_CITIES_LOADED\";\r\nexport const HOME_DATA_TOP_COLLEGES_LOADED = \"HOME_DATA_TOP_COLLEGES_LOADED\";\r\n\r\n\r\nexport const loadTopCities = (states) => ({\r\n type: HOME_DATA_TOP_CITIES_REQUEST,\r\n states\r\n});\r\nexport const loadTopColleges = (states) => ({\r\n type: HOME_DATA_TOP_COLLEGES_REQUEST,\r\n states\r\n});\r\nexport const loadCounselCountByState = (states) => ({\r\n type: HOME_DATA_COUNSEL_COUNT_REQUEST,\r\n states\r\n});\r\nexport const loadTopPracticeAreas = (states) => ({\r\n type: HOME_DATA_TOP_PRACTICEAREAS_REQUEST,\r\n states\r\n});\r\nexport const loadTopYearAdmittedToBars = (states) => ({\r\n type: HOME_DATA_TOP_YEARADMITTEDTOBAR_REQUEST,\r\n states\r\n});\r\n\r\nexport const selectMultipleStates = usStates => ({\r\n type: STATE_MULTIPLE_SELECTED,\r\n usStates\r\n});\r\nexport const selectSingleState = usState => ({\r\n type: STATE_SINGLE_SELECTED,\r\n usState\r\n});\r\nexport const resetStates = () => ({\r\n type: STATE_RESET\r\n});\r\nexport const topCitiesDataLoadedAction = data => ({\r\n type: HOME_DATA_TOP_CITIES_LOADED,\r\n data\r\n});\r\nexport const topCollegesDataLoadedAction = data => ({\r\n type: HOME_DATA_TOP_COLLEGES_LOADED,\r\n data\r\n});\r\nexport const counselCountByStateRequested = states => ({\r\n type: COUNSEL_COUNT_COUNT_REQUEST,\r\n states\r\n});\r\nexport const counselCountByStateLoaded = data => ({\r\n type: HOME_DATA_COUNSEL_COUNT_LOADED,\r\n data\r\n});\r\nexport const topPracticeAreasDataLoaded = data => ({\r\n type: HOME_DATA_TOP_PRACTICEAREAS_LOADED,\r\n data\r\n});\r\nexport const topYearAdmittedToBarLoaded = data => ({\r\n type: HOME_DATA_TOP_YEARADMITTEDTOBAR_LOADED,\r\n data\r\n});\r\nexport const totalCounselCountLoaded = data => ({\r\n type: TOTAL_COUNSEL_COUNT_LOADED,\r\n data\r\n});\r\nexport const totalCounselEmailCountLoaded = data => ({\r\n type: TOTAL_COUNSEL_EMAIL_COUNT_LOADED,\r\n data\r\n});\r\nexport const loadHomeData = (states) => ({\r\n type: LOAD_HOME_DATA,\r\n states\r\n});\r\nexport const loadHomeDataByStates = states => ({\r\n type: LOAD_HOME_DATA_BY_STATES,\r\n states\r\n});\r\nexport const userInfoRequested = () => ({\r\n type: USER_INFO_REQUESTED,\r\n});\r\nexport const userInfoLoaded = data => ({\r\n type: USER_INFO_LOADED,\r\n data\r\n});\r\nexport const rssFeedRequested = () => ({\r\n type: RSS_FEED_REQUESTED,\r\n});\r\nexport const rssFeedLoaded = data => ({\r\n type: RSS_FEED_LOADED,\r\n data\r\n});\r\nexport const productsRequested = () => ({\r\n type: PRODUCTS_REQUESTED\r\n});\r\nexport const productsLoaded = data => ({\r\n type: PRODUCTS_LOADED,\r\n data\r\n});","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { userInfoRequested } from \"../../state/actions/homeActions\";\r\n\r\nfunction UserID() {\r\n const userInfo = useSelector(state => state.home.userInfo);\r\n const dispatch = useDispatch();\r\n useEffect(() => {\r\n dispatch(userInfoRequested()); \r\n }, []);\r\n useEffect(() => {\r\n if (userInfo.Username) { \r\n window.pendo.initialize({\r\n visitor: {\r\n id: userInfo.Sub, // Required if user is logged in\r\n domain: userInfo.Domain\r\n //email: userInfo.Email, // Recommended if using Pendo Feedback, or NPS Email \r\n //firstName: userInfo.FirstName,\r\n //lastName: userInfo.LastName\r\n // Recommended if using Pendo Feedback\r\n // role: // Optional\r\n // You can add any additional visitor level key-values here,\r\n // as long as it's not one of the above reserved names.\r\n },\r\n\r\n account: {\r\n id: userInfo.OrganizationCode // Required if using Pendo Feedback\r\n // name: // Optional\r\n // is_paying: // Recommended if using Pendo Feedback\r\n // monthly_value:// Recommended if using Pendo Feedback\r\n // planLevel: // Optional\r\n // planPrice: // Optional\r\n // creationDate: // Optional\r\n\r\n // You can add any additional account level key-values here,\r\n // as long as it's not one of the above reserved names.\r\n }\r\n });\r\n }\r\n }, [userInfo]);\r\n return (\r\n <>{userInfo.Username}\r\n );\r\n}\r\n\r\nexport default UserID;","import React from \"react\";\r\nimport UserID from \"components/layout/UserID\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { post } from \"services/ApiService\";\r\nconst defaultShortInfo = \"Something went wrong\";\r\nconst defaultLogInfo = \"Sorry, an error has occured. Please try again.\";\r\nexport const ErrorComponent = ({ errorMessage, resetErrorBoundary }) => { \r\n const returnToHomeLink = resetErrorBoundary ? Return to Home : Return to Home\r\n return
    \r\n
    \r\n

    Hello

    \r\n

    {errorMessage||\"Sorry, an error has occured. Please try again.\"}

    \r\n {returnToHomeLink}\r\n
    Customer Support
    If you need any technical or content support while using Corporate Counsel Profiler, contact customer support at 1-866-529-6600 (between 8 AM and 8 PM Central Time) or email LRUSCustomerCare@wolterskluwer.com.
    ;\r\n};\r\nexport const logAndRedirectToErrorPage = (error, history) => {\r\n post('./api/logs', { shortInfo: defaultShortInfo, logInfo: error.message || defaultLogInfo })\r\n .then(data => {\r\n // using fallback for source that does not use hooks\r\n history ? history.push(\"/error\") : window.location.href = \"/error\"; \r\n }).catch(e=>{history ? history.push(\"/error\") : window.location.href = \"/error\";});\r\n}\r\nexport const redirectToErrorPage = (history) => { \r\n // using fallback for source that does not use hooks\r\n history ? history.push(\"/error\") : window.location.href = \"/error\"; \r\n}\r\nexport const logError = (error, info) => {\r\n post('./api/logs', { shortInfo: defaultShortInfo, logInfo: error.message || defaultLogInfo }); \r\n}","import { createBrowserHistory } from \"history\";\r\n\r\nexport const history = createBrowserHistory();\r\n","export class AuthenticationError extends Error {\r\n constructor(...params) {\r\n // Pass remaining arguments (including vendor specific ones) to parent constructor\r\n super(...params)\r\n // Maintains proper stack trace for where our error was thrown (only available on V8)\r\n if (Error.captureStackTrace) {\r\n Error.captureStackTrace(this, AuthenticationError)\r\n }\r\n this.name = 'AuthenticationError'\r\n this.date = new Date()\r\n }\r\n}\r\n","import { redirectToErrorPage, logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { history } from \"../routerHistory\";\r\nimport { AuthenticationError } from \"../common/AuthenticationError\";\r\n\r\nconst controller = new AbortController();\r\nconst { signal } = controller;\r\n\r\nexport const get = async (url) => {\r\n try {\r\n const response = await fetch(url, {\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n },\r\n method: 'GET',\r\n signal\r\n });\r\n if (response.status === 403) {\r\n controller.abort();\r\n window.location.href = window.location.origin + \"/Account/Login?returnUrl=\" + encodeURIComponent(window.location.pathname + window.location.search);\r\n throw new AuthenticationError(\"User not authenticated!\");\r\n }\r\n if (response.status && (response.status === 400 || response.status >= 500)) {\r\n logAndRedirectToErrorPage(response.json(), history);\r\n }\r\n return await response.json();\r\n } catch (e) {\r\n if (e instanceof AuthenticationError)\r\n throw e;\r\n redirectToErrorPage(history);\r\n }\r\n}\r\nexport const post = async (url, body) => {\r\n try {\r\n const response = await fetch(url, {\r\n body: JSON.stringify(body),\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n },\r\n signal,\r\n method: 'POST'\r\n\r\n });\r\n if (response.status === 403) {\r\n controller.abort();\r\n window.location.href = window.location.origin + \"/Account/Login?returnUrl=\" + encodeURIComponent(window.location.pathname + window.location.search);\r\n throw new AuthenticationError(\"User not authenticated!\");\r\n }\r\n // if(response.redirected){\r\n // window.location.href = response.url;\r\n // }\r\n if (response.status && (response.status === 400 || response.status >= 500)) {\r\n logAndRedirectToErrorPage(response.json(), history);\r\n }\r\n return response.json();\r\n } catch (e) {\r\n if (e instanceof AuthenticationError)\r\n throw e;\r\n redirectToErrorPage(history);\r\n }\r\n}","import { post } from \"./ApiService\";\r\n\r\nexport const sendFeedback = async feedback => {\r\n let url = '/account/sendfeedback';\r\n return await post(url, feedback );\r\n};","import React from 'react';\r\nimport clsx from 'clsx';\r\n\r\nconst WaringDialog = ({ isVisible, header, message, closeDialog }) => {\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    {header}
    \r\n \r\n
    \r\n
    \r\n

    {message}

    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default WaringDialog;\r\n","import React, { useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport { sendFeedback } from '../../services/sendFeedbackService';\r\nimport WaringDialog from \"../../pages/Common/WarningDialog\";\r\n\r\nconst Feedback = ({ isVisible, closeFeedback }) => {\r\n const [topic, setTopic] = useState('');\r\n const [message, setMessage] = useState('');\r\n const [warningVisible, setWarningVisible] = useState(false);\r\n const [warningMessage, setWarningMessage] = useState('');\r\n const [warningHeader, setWarningHeader] = useState('');\r\n const [fieldTopicError, setFieldTopicError] = useState(false);\r\n const [fieldMessageError, setFieldMessageError] = useState(false);\r\n const [topicErrorNote, setTopicErrorNote] = useState('');\r\n const [messageErrorNote, setMessageErrorNote] = useState('');\r\n\r\n const closeDialog = (e) => {\r\n setWarningVisible(false);\r\n setMessage('');\r\n setTopic('');\r\n closeFeedback();\r\n }\r\n\r\n const handleCloseFeedback = () => {\r\n setMessage('');\r\n setTopic('');\r\n setFieldTopicError(false);\r\n setFieldMessageError(false);\r\n closeFeedback();\r\n }\r\n\r\n const handleTopicChange = (event) => {\r\n setFieldTopicError(false);\r\n setTopic(event.target.value);\r\n };\r\n\r\n const handleMessageChange = (event) => {\r\n setFieldMessageError(false);\r\n setMessage(event.target.value);\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (topic == \"\" || message == \"\") {\r\n if (topic == \"\") {\r\n setFieldTopicError(true);\r\n setTopicErrorNote('Topic required');\r\n } else {\r\n setFieldMessageError(true);\r\n setMessageErrorNote('Message required')\r\n }\r\n } else {\r\n const response = await sendFeedback({ topic, message });\r\n if (response == 'success') {\r\n setWarningVisible(true);\r\n setWarningMessage(\"Your feedback has been sent. Thank you.\");\r\n setWarningHeader(\"Feedback Sent\");\r\n } else {\r\n setWarningVisible(true);\r\n setWarningMessage(\"There was a problem sending your feedback. Please try again later.\");\r\n setWarningHeader(\"Feedback Send Problem\");\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    Feedback
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    {topicErrorNote}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    {messageErrorNote}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default Feedback;","import React, { useState } from 'react';\r\nimport './Footer.css';\r\nimport dayjs from \"dayjs\";\r\nimport Feedback from './Feedback';\r\n\r\nconst Footer = () => {\r\n const [isVisible, setVisible] = useState(false);\r\n\r\n const showFeedbackOverlay = () => {\r\n setVisible(true);\r\n }\r\n\r\n const closeFeedback = (e) => {\r\n setVisible(false);\r\n }\r\n\r\n return (\r\n \r\n\r\n );\r\n}\r\n\r\nexport default Footer;","import React, { useEffect, useState } from 'react';\r\nimport { get } from \"services/ApiService\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { productsRequested } from \"../../state/actions/homeActions\";\r\n\r\nfunction Products() {\r\n const items = useSelector(state => state.home.products);\r\n let sortedItems = items.sort((a, b) => (a.name > b.name) ? 1 : -1)\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n dispatch(productsRequested());\r\n }, []);\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport default Products;","import React, { useEffect, useState } from 'react';\r\nimport dayjs from \"dayjs\";\r\n\r\nconst ManageAlertsItem = ({ item, onChange, deleteManageAlerts, index, editAlert }) => {\r\n\r\n const [showTooltip, setShowTooltip] = useState(false);\r\n const [showEditTooltip, setShowEditTooltip] = useState(false);\r\n const onMouseOverHandler = () => {\r\n setShowTooltip(true);\r\n };\r\n\r\n const onMouseOutHandler = () => {\r\n setShowTooltip(false);\r\n };\r\n const onEditMouseOverHandler = () => {\r\n setShowEditTooltip(true);\r\n };\r\n\r\n const onEditMouseOutHandler = () => {\r\n setShowEditTooltip(false);\r\n };\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n onChange(e, item.alertId)} />\r\n \r\n {item.company}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {dayjs(item.createdon).format(\"MMM D, YYYY\")}\r\n
    \r\n
    \r\n {dayjs(item.modifiedon).format(\"MMM D, YYYY\")}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    delete
    \r\n
    \r\n
    \r\n
    \r\n editAlert(item)} onMouseEnter={onEditMouseOverHandler} onMouseLeave={onEditMouseOutHandler}>\r\n
    \r\n
    \r\n
    \r\n
    edit
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default ManageAlertsItem\r\n\r\n\r\n\r\n\r\n","export const RADIUS_DATA = { radiusLarge: 40, radiusMedium: 30, radiusSmall: 20 };\r\nexport const RADIUS_DATA_INDEX = { radiusLargeIndex: 0, radiusMediumIndex: 5, radiusSmallIndex: 10 };\r\nexport const LABEL_HEIGHT = { labelLargeHeight: 80, labelMediumHeight: 60, labelSmallHeight: 40 };\r\nexport const BI_TITLE = [\"ALL STATES\", \"ALL CITIES\", \"ALL YEARS ADMITTED to BAR\", \"ALL PRACTICE AREAS\", \"ALL COLLEGES\"];\r\nexport const BI_LABEL = [\"State\", \"City\", \"Year Admitted to Bar\", \"Practice Area\", \"College\"];\r\nexport const BI_READ_VIEW_CHECKED_TITLE = [\"ALL COLLEGES\", \"ALL PRACTICE AREAS\", \"ALL TITLES\"];\r\nexport const BI_READ_VIEW_CHECKED_LABEL = [\"College\", \"Practice Area\", \"Title\"];\r\n\r\nexport const REPORTS_TYPE = [\"SEC Filings:\", \"Annual Reports (10-K, 20-F)\", \"Quarterly Reports (10-Q)\", \"Periodic Reports (8-K, 6-K)\"]\r\nexport const READ_LAWYER_LABELS = { Practice_Areas: \"Practice Area(s): \", Joined_Firm: \"Joined Firm: \", US_State_Non_US_Bars: \"US State and/or Non-US Bar(s): \", Education: \"Education: \", Previous_Positions: \"Previous Positions: \", Memberships_Affiliations: \"Memberships/Affiliations: \", Telephone_Number: \"Telephone Number: \" }\r\n\r\nexport const MANAGE_ALERTS_OPTIONS = { CreatedOn_Value: \"1\", AlertName_Value: \"2\", ModifiedOn_Value: \"3\", ModifiedOn_Label: \"Modified On\", CreatedOn_Label: \"Created On\", AlertName_Label: \"Alert Name\" }\r\nexport const SEARCH_RESULT_OPTIONS = { Company_Name_Value: \"1\", Subsidiary_Name_Value: \"2\", Attorneys_last_name_Value: \"3\", Company_City_Value: \"4\", Company_State_Value: \"5\", Company_Name_Label: \"Company Name\", Subsidiary_Name_Label: \"Subsidiary Name\", Attorneys_last_name_Label: \"Attorney’s Last Name\", Company_City_Label: \"Company City\", Company_State_Label: \"Company State\" }\r\nexport const PAGINATION_ACTION = { PrevPage: \"1\", nextPage: \"2\", selectPage: \"3\"}\r\nexport const EMAIL_ADDITIONAL_ECIPENTS_MODE = { Default: \"1\", Add: \"2\", Edit: \"3\"}\r\n\r\nexport default { RADIUS_DATA, RADIUS_DATA_INDEX, LABEL_HEIGHT, BI_TITLE, BI_LABEL, BI_READ_VIEW_CHECKED_TITLE, BI_READ_VIEW_CHECKED_LABEL, REPORTS_TYPE, READ_LAWYER_LABELS };\r\n\r\nexport const chartPageSize = 500;","import React from 'react';\r\nimport { MANAGE_ALERTS_OPTIONS } from 'pages/utils/common';\r\n\r\nconst ManageAlertsOptions = ({ changeHandler }) => {\r\n\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n );\r\n}\r\n\r\nexport default ManageAlertsOptions;","import React, { useRef, useEffect, useState } from 'react';\r\nimport clsx from 'clsx';\r\n\r\nconst ManageAlertsItemTitle = ({ disabled, scrollbar, onCheckAllChange }) => {\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n onCheckAllChange(e)} disabled={disabled} />\r\n \r\n Alert Name\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Created On\r\n
    \r\n
    \r\n Modified On\r\n
    \r\n
    \r\n Delete\r\n
    \r\n
    \r\n Edit\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default ManageAlertsItemTitle","import React from 'react';\r\nimport clsx from 'clsx';\r\n\r\nconst ManageAlertsConfirm = ({isSingleDeleted, isVisible, closeDialog, deleteClicked }) => {\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    Confirm Deletion

    \r\n \r\n
    \r\n
    \r\n

    Are you sure you want to delete this Alert Setting{isSingleDeleted ? '' : 's'}? This action cannot be undone

    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default ManageAlertsConfirm\r\n\r\n","import React from 'react';\r\nimport clsx from 'clsx';\r\n\r\nconst EmailWarningBlock = ({ warningMessage }) => {\r\n return (\r\n
    \r\n
    {warningMessage}
    \r\n
    \r\n );\r\n};\r\nexport default EmailWarningBlock;","import React from 'react';\r\nimport clsx from 'clsx';\r\n\r\nconst EmailAdditionalRecipientsConfirm = ({ isVisible, closeDialog, YesClicked }) => {\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    Confirm Deletion

    \r\n \r\n
    \r\n
    \r\n

    Are you sure?

    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n}\r\nexport default EmailAdditionalRecipientsConfirm","import React, { useRef, useEffect, useState } from 'react';\r\nimport { EMAIL_ADDITIONAL_ECIPENTS_MODE } from 'pages/utils/common';\r\nimport EmailWarningBlock from 'common/EmailAdditionalRecipients/EmailWarningBlock';\r\nimport EmailAdditionalRecipientsConfirm from 'common/EmailAdditionalRecipients/EmailAdditionalRecipientsConfirm';\r\n\r\n\r\nconst EmailAdditionalRecipients = ({ isVisible, additionalRecipients, syncAdditionalRecipients, isAdditionalRecipientsDisabled }) => {\r\n\r\n const add_title = \"Add Additional Recipients\";\r\n const add_New_Label = \"New additional recipients (maximum 25)\";\r\n const edit_Label = \"Edit existing recipient\";\r\n const email_invalid = \"Your entry appears to not be valid. Please check and save again.\";\r\n const email_duplicated = \"You have entered a duplicate email address. Please delete the duplicate and try to save again.\";\r\n const email_maximum_warning = \"You tried to add emails in excess of the 25 maximum. Please review your list.\";\r\n const add_New_Button_Label = \"Add\";\r\n const edit_Button_Label = \"Save\";\r\n const MAX_LIMIT = 25;\r\n const [inputLabel, setInputLabel] = useState('');\r\n const [selectedIndex, setSelectedIndex] = useState(-1);\r\n const [btnLabel, setBtnLabel] = useState('');\r\n const [warningMessage, setWarningMessage] = useState('');\r\n const [isConfirmDialogVisible, setConfirmDialogVisible] = useState(false);\r\n const [isWarningVisible, setWarningVisible] = useState(false);\r\n const [hasError, setHasError] = useState(false);\r\n const [mode, setMode] = useState(EMAIL_ADDITIONAL_ECIPENTS_MODE.Default);\r\n const [EmailRecipients, setEmailRecipients] = useState([]);\r\n\r\n useEffect(() => {\r\n if (additionalRecipients)\r\n setEmailRecipients(additionalRecipients.split(','));\r\n else\r\n setEmailRecipients([]);\r\n setMode(EMAIL_ADDITIONAL_ECIPENTS_MODE.Default);\r\n\r\n }, [isVisible, additionalRecipients]);\r\n\r\n const closeConfirmDialog = () => {\r\n setConfirmDialogVisible(false);\r\n }\r\n\r\n const Mousehover = (e, id) => {\r\n showHideTooltip(e, id, \"visible\");\r\n }\r\n\r\n const MouseOut = (e, id) => {\r\n showHideTooltip(e, id, \"hidden\");\r\n }\r\n\r\n const showHideTooltip = (e, id, visibility) => {\r\n let ele = document.getElementById(id);\r\n ele.style.visibility = visibility;\r\n }\r\n\r\n const showInputField = () => {\r\n setMode(EMAIL_ADDITIONAL_ECIPENTS_MODE.Add);\r\n setInputLabel(add_New_Label);\r\n setBtnLabel(add_New_Button_Label);\r\n setSelectedIndex(-1);\r\n setHasError(false);\r\n setWarningVisible(false);\r\n setTimeout(() => {\r\n let ele = document.getElementById('txtEmail');\r\n if (ele) ele.value = '';\r\n }, 100);\r\n }\r\n\r\n const showEditMode = (item, index) => {\r\n setMode(EMAIL_ADDITIONAL_ECIPENTS_MODE.Edit);\r\n setInputLabel(edit_Label);\r\n setBtnLabel(edit_Button_Label);\r\n setSelectedIndex(index);\r\n setHasError(false);\r\n setWarningVisible(false);\r\n setTimeout(() => {\r\n let ele = document.getElementById('txtEmail');\r\n if (ele) ele.value = item;\r\n }, 100);\r\n }\r\n\r\n const deleteItem = (index) => {\r\n setConfirmDialogVisible(true);\r\n setSelectedIndex(index)\r\n }\r\n\r\n const DeleteConfirmed = () => {\r\n let newList = EmailRecipients.filter((item, index) => index != selectedIndex);\r\n let ele = document.getElementById('txtEmail');\r\n if (ele) ele.value = '';\r\n setConfirmDialogVisible(false);\r\n setHasError(false);\r\n setWarningVisible(false);\r\n setEmailRecipients(newList);\r\n syncAdditionalRecipients(newList.join(','));\r\n setMode(EMAIL_ADDITIONAL_ECIPENTS_MODE.Default);\r\n }\r\n\r\n const saveEmail = () => {\r\n let val = document.getElementById('txtEmail').value;\r\n let emailList = val.split(',');\r\n let emailList_clone = emailList;\r\n\r\n if (emailList.filter((item) => !isEmailValid(item)).length) {\r\n setWarningVisible(true);\r\n setWarningMessage(email_invalid)\r\n }\r\n else {\r\n let isDuplicated = false;\r\n emailList.map((item) => {\r\n let new_len = emailList_clone.filter((i) => i.toLowerCase() == item.toLowerCase()).length;\r\n let add_edit_len = EmailRecipients.filter((i) => i.toLowerCase() == item.toLowerCase()).length;\r\n if (new_len > 1 || add_edit_len >= 1) {\r\n isDuplicated = true;\r\n }\r\n })\r\n\r\n if (mode == EMAIL_ADDITIONAL_ECIPENTS_MODE.Edit) {\r\n isDuplicated = EmailRecipients[selectedIndex].toLowerCase() == emailList[0].toLowerCase() ? false : isDuplicated;\r\n }\r\n\r\n if (isDuplicated) {\r\n setWarningVisible(true);\r\n setWarningMessage(email_duplicated);\r\n }\r\n else {\r\n let total = emailList.length + EmailRecipients.length;\r\n if (total > 25 && mode == EMAIL_ADDITIONAL_ECIPENTS_MODE.Add) {\r\n setHasError(true);\r\n }\r\n else {\r\n let EmailListFinal = [];\r\n if (mode == EMAIL_ADDITIONAL_ECIPENTS_MODE.Edit) {\r\n EmailRecipients.forEach((item, index) => {\r\n if (index == selectedIndex) {\r\n EmailListFinal.push(emailList[0]);\r\n }\r\n else {\r\n EmailListFinal.push(item);\r\n }\r\n })\r\n }\r\n else {\r\n EmailRecipients.forEach((item) => {\r\n EmailListFinal.push(item);\r\n })\r\n emailList.forEach((item) => {\r\n EmailListFinal.push(item);\r\n })\r\n }\r\n setMode(EMAIL_ADDITIONAL_ECIPENTS_MODE.Default);\r\n setEmailRecipients(EmailListFinal);\r\n setWarningVisible(false);\r\n setHasError(false);\r\n syncAdditionalRecipients(EmailListFinal.join(\",\"));\r\n document.getElementById('txtEmail').value = '';\r\n }\r\n }\r\n }\r\n }\r\n\r\n const isEmailValid = (email) => {\r\n let pattern = new RegExp(/^((\"[\\w-\\s]+\")|([\\w-]+(?:\\.[\\w-]+)*)|(\"[\\w-\\s]+\")([\\w-]+(?:\\.[\\w-]+)*))(@((?:[\\w-]+\\.)*\\w[\\w-]{0,66})\\.([a-z]{2,6}(?:\\.[a-z]{2})?)$)|(@\\[?((25[0-5]\\.|2[0-4][0-9]\\.|1[0-9]{2}\\.|[0-9]{1,2}\\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\\]?$)/i);\r\n return pattern.test(email);\r\n }\r\n\r\n return (\r\n <>\r\n {(EmailRecipients.length < MAX_LIMIT && !isAdditionalRecipientsDisabled) &&
    showInputField()}>{add_title}
    }\r\n {(EmailRecipients.length >= MAX_LIMIT || isAdditionalRecipientsDisabled) &&
    {add_title}
    }\r\n { mode != EMAIL_ADDITIONAL_ECIPENTS_MODE.Default &&
    \r\n {inputLabel}\r\n {isWarningVisible && }\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    }\r\n {hasError && }\r\n
    \r\n {EmailRecipients.map((item, index) => (\r\n
    \r\n {item}\r\n Mousehover(e, \"emailTootip4Edit\" + index)} onMouseLeave={(e) => MouseOut(e, \"emailTootip4Edit\" + index)} onClick={() => showEditMode(item, index)}>\r\n
    \r\n
    Edit
    \r\n
    \r\n Mousehover(e, \"emailTootip4Delete\" + index)} onMouseLeave={(e) => MouseOut(e, \"emailTootip4Delete\" + index)} onClick={() => deleteItem(index)}>\r\n
    \r\n
    Delete
    \r\n
    \r\n
    \r\n ))}\r\n
    \r\n { isConfirmDialogVisible && }\r\n \r\n );\r\n}\r\n\r\nexport default EmailAdditionalRecipients;","import React, { useState, useEffect } from 'react';\r\nimport clsx from 'clsx';\r\nimport UserID from 'components/layout/UserID';\r\nimport { get } from \"../../services/ApiService\";\r\nimport EmailAdditionalRecipients from '../../common/EmailAdditionalRecipients/EmailAdditionalRecipients';\r\nimport { useSelector } from 'react-redux';\r\n\r\nconst EditParentAlertOverlay = ({ isVisible, selectedAlert, saveAlert, closeOverlay }) => {\r\n\r\n const [originalAdditionalRecipients, setOriginalAdditionalRecipients] = useState('');\r\n const [additionalRecipients, setAdditionalRecipients] = useState('');\r\n const [isDirty, setIsDirty] = useState(false);\r\n const userInfo = useSelector(state => state.home.userInfo);\r\n\r\n useEffect(() => {\r\n get('./api/ManageAlerts/getAdditionalRecipients?alertId=' + selectedAlert.alertId)\r\n .then(data => { \r\n if (data && data.additionalrecipients) {\r\n setAdditionalRecipients(data.additionalrecipients);\r\n setOriginalAdditionalRecipients(data.additionalrecipients);\r\n }\r\n });\r\n }, [selectedAlert]);\r\n const syncAdditionalRecipients = (additionalRecipients) => {\r\n setIsDirty(true);\r\n setAdditionalRecipients(additionalRecipients);\r\n }\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    Edit Alert
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    Company Alert Name
    \r\n
    \r\n {selectedAlert ?.company}\r\n
    \r\n
    \r\n

    Your selected Company Alert will be sent weekly to your email account at {userInfo.Email}.

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n );\r\n}\r\n\r\nexport default EditParentAlertOverlay;","import React, { useRef, useEffect, useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport ManageAlertsItem from './ManageAlertItem';\r\nimport ManageAlertsOptions from './ManageAlertsOptions';\r\nimport ManageAlertsItemTitle from './ManageAlertsItemTitle';\r\nimport ManageAlertsConfirm from './ManagerAlertsConfirm';\r\nimport { get,post } from \"../../../services/ApiService\";\r\nimport { MANAGE_ALERTS_OPTIONS } from 'pages/utils/common';\r\nimport EditParentAlertOverlay from 'pages/Common/EditParentAlertOverlay';\r\n\r\nconst ManageAlertsOverlay = ({ isVisible, closeDialog, managealertList }) => {\r\n\r\n const [deleteenabled, setDeleteEnabled] = useState(false);\r\n const [isConfirmDialogVisible, setConfirmDialogVisible] = useState(false);\r\n const [isDeletedByIcon, setDeletedByIcon] = useState(false);\r\n const [selectedAlertId, setSelectedAlertId] = useState('');\r\n const [managealertListLocal, setManagealertListLocal] = useState([]);\r\n const [isParentAlertVisible, setParentAlertVisible] = useState(false);\r\n const [selectedEditAlert, setSelectedEditAlert] = useState({});\r\n const [selectedOptionValue, setSelectedOptionValue] = useState(MANAGE_ALERTS_OPTIONS.CreatedOn_Value);\r\n \r\n useEffect(() => {\r\n setManagealertListLocal(managealertList);\r\n optionChange(MANAGE_ALERTS_OPTIONS.CreatedOn_Value, managealertList);\r\n \r\n }, []);\r\n\r\n const showConfirmDialog = () => {\r\n setConfirmDialogVisible(true);\r\n }\r\n\r\n const closeConfirmDialog = () => {\r\n setDeletedByIcon(false);\r\n setConfirmDialogVisible(false);\r\n }\r\n\r\n const deleteAlertsFromConfirmDialog = () => {\r\n let deletedEnabled = false;\r\n let element = document.getElementById('cbx_all');\r\n let checkedList = managealertListLocal.filter((item) => item.checked);\r\n let uncheckList = managealertListLocal.filter((item) => !item.checked);\r\n let alertList = [];\r\n if (isDeletedByIcon) {\r\n deletedEnabled = checkedList.filter((item) => item.alertId != selectedAlertId).length > 0;\r\n }\r\n checkedList.map((item) => alertList.push(item.alertId));\r\n let aids = isDeletedByIcon ? selectedAlertId : alertList.join(',');\r\n \r\n get('./api/ManageAlerts/deleteManageAlerts/?aids=' + aids)\r\n .then(data => {\r\n \r\n if (isDeletedByIcon)\r\n setManagealertListLocal(managealertListLocal.filter((item) => item.alertId != selectedAlertId));\r\n else\r\n setManagealertListLocal(uncheckList);\r\n \r\n setDeletedByIcon(false);\r\n setConfirmDialogVisible(false);\r\n setDeleteEnabled(deletedEnabled);\r\n if (element.checked && !deletedEnabled) element.checked = false;\r\n }); \r\n }\r\n\r\n const deleteManageAlerts = (e) => {\r\n setDeletedByIcon(true);\r\n setSelectedAlertId(e.target.id);\r\n setConfirmDialogVisible(true);\r\n }\r\n const editAlert = (item) => { \r\n setSelectedEditAlert(item);\r\n setParentAlertVisible(true);\r\n }\r\n\r\n const saveAlert = (recipients, alertId, parentCompanyId, originalAdditionalRecipients) => { \r\n post('./api/ManageAlerts/saveAlert', { recipients: recipients, alertId: alertId, parentCompanyId, originalAdditionalRecipients})\r\n .then(data => { \r\n }); \r\n setTimeout(() => {\r\n get('./api/ManageAlerts/searchManageAlerts/?')\r\n .then(data => {\r\n optionChange(selectedOptionValue, data)\r\n });\r\n }, 500);\r\n }\r\n\r\n const closeParentAlertOverlay = (e) => {\r\n setParentAlertVisible(false);\r\n }\r\n\r\n const onCheckAllChange = (e) => {\r\n let alertList = [];\r\n setDeleteEnabled(e.target.checked);\r\n managealertListLocal.map((item) => {\r\n item.checked = e.target.checked;\r\n document.getElementById('cbx_' + item.alertId).checked = e.target.checked;\r\n alertList.push(item);\r\n });\r\n setManagealertListLocal(alertList);\r\n setDeletedByIcon(false);\r\n }\r\n\r\n const changeHandler = (val) => {\r\n optionChange(val, managealertListLocal);\r\n }\r\n\r\n const optionChange = (val, managealertListLocal) => {\r\n let sorted_List = [];\r\n if (val == MANAGE_ALERTS_OPTIONS.CreatedOn_Value) {\r\n let CreatedOnDistinct = Array.from(new Set(managealertListLocal.map(s => s.createdon)))\r\n .map(c => { return { createdon: c } });\r\n CreatedOnDistinct.sort((a, b) => {\r\n return new Date(a.createdon).getTime() -\r\n new Date(b.createdon).getTime()\r\n }).reverse();\r\n CreatedOnDistinct.map(c => {\r\n let createdOnSortList = managealertListLocal.filter(f => f.createdon === c.createdon);\r\n createdOnSortList = sortAlerts(createdOnSortList);\r\n createdOnSortList.map((item) => {\r\n sorted_List.push(item);\r\n });\r\n });\r\n }\r\n else if (val == MANAGE_ALERTS_OPTIONS.ModifiedOn_Value) {\r\n \r\n let ModifiedOnDistinct = Array.from(new Set(managealertListLocal.map(s => s.modifiedon)))\r\n .map(c => { return { modifiedon: c } });\r\n ModifiedOnDistinct.sort((a, b) => {\r\n return new Date(a.modifiedon).getTime() -\r\n new Date(b.modifiedon).getTime()\r\n }).reverse();\r\n\r\n ModifiedOnDistinct.map(c => {\r\n let modifiedOnSortList = managealertListLocal.filter(f => f.modifiedon === c.modifiedon);\r\n modifiedOnSortList = sortAlerts(modifiedOnSortList);\r\n modifiedOnSortList.map((item) => {\r\n sorted_List.push(item);\r\n });\r\n });\r\n }\r\n else {\r\n sorted_List = managealertListLocal.reverse();\r\n sorted_List = sortAlerts(sorted_List);\r\n }\r\n setManagealertListLocal(sorted_List);\r\n setSelectedOptionValue(val);\r\n }\r\n\r\n const sortAlerts = (sortedList) => {\r\n return sortedList.sort((a, b) => {\r\n a.company = a.company ? a.company : '';\r\n b.company = b.company ? b.company : '';\r\n if (a.company.toLowerCase() < b.company.toLowerCase()) { return -1; }\r\n if (a.company.toLowerCase() > b.company.toLowerCase()) { return 1; }\r\n return 0;\r\n });\r\n }\r\n\r\n const onChange = (e, alertId) => {\r\n let alertList = [];\r\n let deleteEnabled = '';\r\n managealertListLocal.map((item) => {\r\n if (item.alertId == alertId) item.checked = e.target.checked;\r\n if (item.checked) deleteEnabled += 'true';\r\n alertList.push(item);\r\n });\r\n setDeletedByIcon(false);\r\n setManagealertListLocal(alertList);\r\n setDeleteEnabled(deleteEnabled.length ? true : false);\r\n }\r\n\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    Manage Alerts
    \r\n \r\n
    \r\n
    \r\n changeHandler(val)} /> \r\n
    \r\n
    \r\n 5 } onCheckAllChange={(e) => onCheckAllChange(e)} />\r\n
    \r\n {managealertListLocal.map((item, index) => (\r\n onChange(e, alertId)} deleteManageAlerts={deleteManageAlerts} index={index} editAlert={editAlert} />\r\n ))}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {!deleteenabled && }\r\n {deleteenabled && }\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {isConfirmDialogVisible && }\r\n {isParentAlertVisible && }\r\n \r\n );\r\n}\r\n\r\nexport default ManageAlertsOverlay;","import React, { Component, useEffect, useState } from 'react';\r\nimport clsx from \"clsx\";\r\nimport { Link } from 'react-router-dom';\r\nimport Products from './Products';\r\nimport UserID from './UserID';\r\nimport ManageAlertsOverlay from '../../components/layout/ManageAlerts/ManageAlertsOverlay';\r\nimport ManageAlertsConfirm from '../../components/layout/ManageAlerts/ManagerAlertsConfirm';\r\nimport { get } from \"services/ApiService\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\n\r\nconst Header = ({ AlertUpdated }) => {\r\n let displayName = Header.name;\r\n const [collapsed, setCollapsed] = useState(false);\r\n const [isVisible, setVisible] = useState(false);\r\n const [managealertList, setManagealertList] = useState([]);\r\n const userInfo = useSelector(state => state.home.userInfo);\r\n const showAlertButton = !userInfo?.Sub?.startsWith('TempUser');\r\n \r\n \r\n useEffect(() => {\r\n getManageAlertsData();\r\n }, [AlertUpdated]);\r\n \r\n const toggleNavbar = () => {\r\n setCollapsed(!collapsed);\r\n }\r\n\r\n const showManageAlerts = () => {\r\n setVisible(true);\r\n };\r\n\r\n const closeDialog = (e) => {\r\n getManageAlertsData();\r\n setVisible(false);\r\n }\r\n\r\n const getManageAlertsData = () => {\r\n get('./api/ManageAlerts/searchManageAlerts/?')\r\n .then(data => setManagealertList(data));\r\n }\r\n\r\n return (\r\n
    \r\n
    \"Wolters\"Wolters\r\n \r\n \r\n
    \r\n\r\n { isVisible && }\r\n\r\n
    \r\n );\r\n}\r\n\r\nexport default Header;","import * as React from 'react';\r\nimport './newsTickerStyle.css';\r\nimport './styles.css';\r\n\r\nconst NewsTicker = (props) => {\r\n return (\r\n \r\n
    \r\n \r\n
    {props.title}
    \r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default NewsTicker;\r\n","import * as React from 'react';\r\nimport './styles.css';\r\n\r\nconst TickerList = (props) => {\r\n return
    \r\n
    \r\n {props.children}\r\n
    \r\n
    \r\n}\r\n\r\nexport default TickerList;","import React, { useEffect } from 'react';\r\nimport NewsTicker from \"./NewsTicker\";\r\nimport TickerList from \"./TickerList\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { rssFeedRequested } from \"../../state/actions/homeActions\";\r\n\r\nconst Ticker = () => {\r\n const feed = useSelector(state => state.home.rssFeed);\r\n const dispatch = useDispatch();\r\n useEffect(() => {\r\n dispatch(rssFeedRequested());\r\n }, [])\r\n return (\r\n
    \r\n \r\n {feed?.map((i, index) => (\r\n ))}\r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default Ticker;","export function scrollToTop(withoutScrollEffect) {\r\n if (withoutScrollEffect) {\r\n window.scroll({\r\n top: 0,\r\n left: 0 \r\n });\r\n } else {\r\n window.scroll({\r\n top: 0,\r\n left: 0,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n}","import React, { useState } from 'react';\r\nimport { scrollToTop } from '../../utils/scrollToTop';\r\nimport './Footer.css';\r\n\r\n\r\nconst ScrollArrow = () => {\r\n\r\n const [showScroll, setShowScroll] = useState(false)\r\n\r\n const checkScrollTop = () => {\r\n if (!showScroll && window.pageYOffset > 100) {\r\n setShowScroll(true)\r\n } else if (showScroll && window.pageYOffset <= 100) {\r\n setShowScroll(false)\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', checkScrollTop)\r\n\r\n return (\r\n
    scrollToTop()}>
    \r\n );\r\n}\r\n\r\nexport default ScrollArrow;","import React, { Component, useState, useEffect } from 'react';\r\nimport { NavMenu } from './NavMenu';\r\nimport Footer from \"./Footer\";\r\nimport Header from \"./Header\";\r\nimport Ticker from '../Ticker';\r\nimport ScrollArrow from './ScrollArrow';\r\nimport { ErrorBoundary } from 'react-error-boundary'\r\nimport { ErrorComponent, logError } from 'components/ErrorComponent';\r\nconst Layout = ({ AlertUpdated, children}) => {\r\n const [LayoutAlertUpdated, setLayoutAlertUpdated] = useState(false);\r\n\r\n useEffect(() => {\r\n setLayoutAlertUpdated(false);\r\n if (AlertUpdated) {\r\n setLayoutAlertUpdated(AlertUpdated);\r\n } \r\n }, [AlertUpdated]);\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n {children}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default Layout;\r\n","import React from \"react\";\r\nimport { Route } from \"react-router-dom\";\r\nimport { Redirect } from \"react-router\";\r\n\r\nconst getCookie = (name) => {\r\n let v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');\r\n return v ? v[2] : null;\r\n};\r\n\r\nexport function ProtectedRoute({ children, ...rest }) {\r\n let cookie = getCookie(\".CCP.Security.Cookie\");\r\n return (\r\n cookie ? {children} : \r\n );\r\n}","export const companyStates = [\r\n { \"id\": \"AL\", \"desc\": \"Alabama\" },\r\n { \"id\": \"AK\", \"desc\": \"Alaska\" },\r\n { \"id\": \"AZ\", \"desc\": \"Arizona\" },\r\n { \"id\": \"AR\", \"desc\": \"Arkansas\" },\r\n { \"id\": \"CA\", \"desc\": \"California\" },\r\n { \"id\": \"CO\", \"desc\": \"Colorado\" },\r\n { \"id\": \"CT\", \"desc\": \"Connecticut\" },\r\n { \"id\": \"DE\", \"desc\": \"Delaware\" },\r\n { \"id\": \"DC\", \"desc\": \"District of Columbia\" },\r\n { \"id\": \"FL\", \"desc\": \"Florida\" },\r\n { \"id\": \"GA\", \"desc\": \"Georgia\" },\r\n { \"id\": \"HI\", \"desc\": \"Hawaii\" },\r\n { \"id\": \"ID\", \"desc\": \"Idaho\" },\r\n { \"id\": \"IL\", \"desc\": \"Illinois\" },\r\n { \"id\": \"IN\", \"desc\": \"Indiana\" },\r\n { \"id\": \"IA\", \"desc\": \"Iowa\" },\r\n { \"id\": \"KS\", \"desc\": \"Kansas\" },\r\n { \"id\": \"KY\", \"desc\": \"Kentucky\" },\r\n { \"id\": \"LA\", \"desc\": \"Louisiana\" },\r\n { \"id\": \"ME\", \"desc\": \"Maine\" },\r\n { \"id\": \"MD\", \"desc\": \"Maryland\" },\r\n { \"id\": \"MA\", \"desc\": \"Massachusetts\" },\r\n { \"id\": \"MI\", \"desc\": \"Michigan\" },\r\n { \"id\": \"MN\", \"desc\": \"Minnesota\" },\r\n { \"id\": \"MS\", \"desc\": \"Mississippi\" },\r\n { \"id\": \"MO\", \"desc\": \"Missouri\" },\r\n { \"id\": \"MT\", \"desc\": \"Montana\" },\r\n { \"id\": \"NE\", \"desc\": \"Nebraska\" },\r\n { \"id\": \"NV\", \"desc\": \"Nevada\" },\r\n { \"id\": \"NH\", \"desc\": \"New Hampshire\" },\r\n { \"id\": \"NJ\", \"desc\": \"New Jersey\" },\r\n { \"id\": \"NM\", \"desc\": \"New Mexico\" },\r\n { \"id\": \"NY\", \"desc\": \"New York\" },\r\n { \"id\": \"NC\", \"desc\": \"North Carolina\" },\r\n { \"id\": \"ND\", \"desc\": \"North Dakota\" },\r\n { \"id\": \"OH\", \"desc\": \"Ohio\" },\r\n { \"id\": \"OK\", \"desc\": \"Oklahoma\" },\r\n { \"id\": \"OR\", \"desc\": \"Oregon\" },\r\n { \"id\": \"PA\", \"desc\": \"Pennsylvania\" },\r\n { \"id\": \"RI\", \"desc\": \"Rhode Island\" },\r\n { \"id\": \"SC\", \"desc\": \"South Carolina\" },\r\n { \"id\": \"SD\", \"desc\": \"South Dakota\" },\r\n { \"id\": \"TN\", \"desc\": \"Tennessee\" },\r\n { \"id\": \"TX\", \"desc\": \"Texas\" },\r\n { \"id\": \"UT\", \"desc\": \"Utah\" },\r\n { \"id\": \"VT\", \"desc\": \"Vermont\" },\r\n { \"id\": \"VA\", \"desc\": \"Virginia\" },\r\n { \"id\": \"WA\", \"desc\": \"Washington\" },\r\n { \"id\": \"WV\", \"desc\": \"West Virginia\" },\r\n { \"id\": \"WI\", \"desc\": \"Wisconsin\" },\r\n { \"id\": \"WY\", \"desc\": \"Wyoming\" },\r\n { \"id\": \"Abu%20Dhabi\", \"desc\": \"Abu Dhabi - AE\" },\r\n { \"id\": \"Sao%20Paulo\", \"desc\": \"Sao Paulo - BR\" },\r\n { \"id\": \"AB\", \"desc\": \"AB - CA\" },\r\n { \"id\": \"BC\", \"desc\": \"BC - CA\" },\r\n { \"id\": \"MB\", \"desc\": \"MB - CA\" },\r\n { \"id\": \"NB\", \"desc\": \"NB - CA\" },\r\n { \"id\": \"NF\", \"desc\": \"NF - CA\" },\r\n { \"id\": \"NS\", \"desc\": \"NS - CA\" },\r\n { \"id\": \"ON\", \"desc\": \"ON - CA\" },\r\n { \"id\": \"QC\", \"desc\": \"QC - CA\" },\r\n { \"id\": \"SK\", \"desc\": \"SK - CA\" },\r\n { \"id\": \"Doha\", \"desc\": \"Doha - QA\" }]\r\n\r\nexport const practiceAreas = [\r\n { \"id\": \"40\", \"desc\": \"1940 Act\" },\r\n { \"id\": \"AS\", \"desc\": \"Administration\" },\r\n { \"id\": \"AD\", \"desc\": \"Advertising\" },\r\n { \"id\": \"AN\", \"desc\": \"Antitrust\" },\r\n { \"id\": \"AM\", \"desc\": \"Association Management\" },\r\n { \"id\": \"BK\", \"desc\": \"Banking\" },\r\n { \"id\": \"BA\", \"desc\": \"Bankruptcy\" },\r\n { \"id\": \"CV\", \"desc\": \"Civil Rights\" },\r\n { \"id\": \"CL\", \"desc\": \"Commercial\" },\r\n { \"id\": \"CP\", \"desc\": \"Compliance\" },\r\n { \"id\": \"CS\", \"desc\": \"Construction\" },\r\n { \"id\": \"CO\", \"desc\": \"Consumer\" },\r\n { \"id\": \"CN\", \"desc\": \"Contracts\" },\r\n { \"id\": \"CY\", \"desc\": \"Copyright\" },\r\n { \"id\": \"CR\", \"desc\": \"Criminal\" },\r\n { \"id\": \"DE\", \"desc\": \"Derivatives\" },\r\n { \"id\": \"ED\", \"desc\": \"Education\" },\r\n { \"id\": \"EM\", \"desc\": \"Employee Benefits\" },\r\n { \"id\": \"EN\", \"desc\": \"Entertainment\" },\r\n { \"id\": \"EE\", \"desc\": \"Environment/Energy\" },\r\n { \"id\": \"EA\", \"desc\": \"ERISA\" },\r\n { \"id\": \"FD\", \"desc\": \"Food and Drug\" },\r\n { \"id\": \"FR\", \"desc\": \"Franchise\" },\r\n { \"id\": \"GE\", \"desc\": \"General/Corporate\" },\r\n { \"id\": \"GO\", \"desc\": \"Government Contracts\" },\r\n { \"id\": \"GR\", \"desc\": \"Government Relations\" },\r\n { \"id\": \"HM\", \"desc\": \"Health/Medical\" },\r\n { \"id\": \"IN\", \"desc\": \"Insurance\" },\r\n { \"id\": \"IP\", \"desc\": \"Intellectual Property/Computers\" },\r\n { \"id\": \"IT\", \"desc\": \"International\" },\r\n { \"id\": \"LE\", \"desc\": \"Labor & Employment\" },\r\n { \"id\": \"LC\", \"desc\": \"Licensing\" },\r\n { \"id\": \"LI\", \"desc\": \"Litigation\" },\r\n { \"id\": \"MD\", \"desc\": \"Manager/Director, Law Dept\" },\r\n { \"id\": \"MA\", \"desc\": \"Mergers & Acquisitions\" },\r\n { \"id\": \"OG\", \"desc\": \"Oil and Gas\" },\r\n { \"id\": \"OS\", \"desc\": \"OSHA\" },\r\n { \"id\": \"PT\", \"desc\": \"Patent\" },\r\n { \"id\": \"PL\", \"desc\": \"Personnel/Labor\" },\r\n { \"id\": \"PR\", \"desc\": \"Products Liability\" },\r\n { \"id\": \"PU\", \"desc\": \"Public Utility\" },\r\n { \"id\": \"RE\", \"desc\": \"Real Estate\" },\r\n { \"id\": \"RG\", \"desc\": \"Regulatory\" },\r\n { \"id\": \"SF\", \"desc\": \"Securities/Finance\" },\r\n { \"id\": \"SW\", \"desc\": \"Social Services/Welfare\" },\r\n { \"id\": \"TX\", \"desc\": \"Tax\" },\r\n { \"id\": \"TL\", \"desc\": \"Telecommunications\" },\r\n { \"id\": \"TR\", \"desc\": \"Trade Regulations\" },\r\n { \"id\": \"TM\", \"desc\": \"Trademark\" },\r\n { \"id\": \"TN\", \"desc\": \"Transportation\" },\r\n { \"id\": \"TE\", \"desc\": \"Trusts and Estates\" },\r\n { \"id\": \"WC\", \"desc\": \"Workers' Compensation\" }]\r\n\r\nexport const usStateBars = [\r\n \"AK\",\r\n \"AL\",\r\n \"AR\",\r\n \"AZ\",\r\n \"CA\",\r\n \"CO\",\r\n \"CT\",\r\n \"DC\",\r\n \"DE\",\r\n \"FL\",\r\n \"GA\",\r\n \"HI\",\r\n \"IA\",\r\n \"ID\",\r\n \"IL\",\r\n \"IN\",\r\n \"KS\",\r\n \"KY\",\r\n \"LA\",\r\n \"MA\",\r\n \"MD\",\r\n \"ME\",\r\n \"MI\",\r\n \"MN\",\r\n \"MO\",\r\n \"MS\",\r\n \"MT\",\r\n \"NC\",\r\n \"ND\",\r\n \"NE\",\r\n \"NH\",\r\n \"NJ\",\r\n \"NM\",\r\n \"NV\",\r\n \"NY\",\r\n \"OH\",\r\n \"OK\",\r\n \"OR\",\r\n \"PA\",\r\n \"RI\",\r\n \"SC\",\r\n \"SD\",\r\n \"TN\",\r\n \"TX\",\r\n \"UT\",\r\n \"VA\",\r\n \"VT\",\r\n \"WA\",\r\n \"WI\",\r\n \"WV\",\r\n \"WY\"]\r\n\r\nexport const nonUSStateBars4CA = [\r\n \"AB\",\r\n \"BC\",\r\n \"MB\",\r\n \"NB\",\r\n \"NL\",\r\n \"NS\",\r\n \"ON\",\r\n \"PE\",\r\n \"QC\",\r\n \"SK\",\r\n \"YT\"]\r\n\r\nexport const nonUSStateBars4Others = [\r\n \"Anguilla\",\r\n \"Argentina\",\r\n \"Australia\",\r\n \"Beirut\",\r\n \"BR\",\r\n \"Brazil\",\r\n \"Canada\",\r\n \"Chile\",\r\n \"China\",\r\n \"CI\",\r\n \"Colombia\",\r\n \"CY\",\r\n \"England\",\r\n \"England & Wales\",\r\n \"England and Wales\",\r\n \"FED\",\r\n \"Federal Dist Court France\",\r\n \"Germany\",\r\n \"Greece\",\r\n \"Hong Kong\",\r\n \"India\",\r\n \"Indonesia\",\r\n \"Ireland\",\r\n \"Israel\",\r\n \"Italy\",\r\n \"Japan\",\r\n \"Law Society of Upper Cana\",\r\n \"Lebanon\",\r\n \"Malaysia\",\r\n \"MD (inactive)\",\r\n \"Mexico\",\r\n \"New South Wales\",\r\n \"New Zealand\",\r\n \"Nigeria\",\r\n \"NL\",\r\n \"Mexico\",\r\n \"OH Patent Bar\",\r\n \"Philippines\",\r\n \"PL\",\r\n \"PRL\",\r\n \"Rio de Janeiro\",\r\n \"RO\",\r\n \"RS\",\r\n \"Russia\",\r\n \"Saint Lucia\",\r\n \"Sao Paulo\",\r\n \"Scotland\",\r\n \"Singapore\",\r\n \"South Africa\",\r\n \"South Wales\",\r\n \"SP\",\r\n \"Spain\",\r\n \"Switzerland\",\r\n \"Taiwan\",\r\n \"UA\",\r\n \"UK\",\r\n \"United Kingdom\",\r\n \"USSC\",\r\n \"Venezuela\",\r\n \"VIC\",\r\n \"WQ\",\r\n \"Zurich\"]\r\n","import React, { useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport {useForm} from \"react-hook-form\";\r\nimport {useHistory} from \"react-router\";\r\nimport querystring from \"query-string\";\r\nimport WaringDialog from \"pages/Common/WarningDialog\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { companyStates, usStateBars, nonUSStateBars4CA, nonUSStateBars4Others } from '../Home/Data/config';\r\nconst checkboxClassName = 'wk-checkbox-field';\r\nconst checkboxRedColorClassName = 'wk-checkbox-error';\r\nconst SearchForm = ({ practiceAreas, searchWarning }) => {\r\n\r\n const { handleSubmit, register, errors } = useForm();\r\n const [selectedCompanyStates] = useState([]);\r\n const [selectedPracticeAreas] = useState([]);\r\n const [selectedNonUSStates] = useState([]);\r\n const [selectedUSStates] = useState([]);\r\n const [header, setHeader] = useState('');\r\n const [message, setMessage] = useState('');\r\n const [isVisible, setVisible] = useState(false);\r\n\r\n let history = useHistory();\r\n const onSubmit = values => {\r\n const queryParams = querystring.stringify(values);\r\n let Params = queryParams.split('&');\r\n let queryString = '';\r\n let companystates = '';\r\n let practiceAreas = '';\r\n let USStates = '';\r\n let NonUSState = '';\r\n let canPush = true;\r\n let startYear = 0;\r\n let EndYear = 0;\r\n\r\n Params.map((item) => {\r\n\r\n let Param = item.split('=');\r\n if (!(Param[1] == '' || Param[1] == 'false')) {\r\n\r\n let prefix = '';\r\n let elementId = '';\r\n Param[0].split('_').map((item, index) => {\r\n switch (index) {\r\n case 0:\r\n prefix = item;\r\n break;\r\n case 1:\r\n elementId = item;\r\n break;\r\n default:\r\n }\r\n })\r\n\r\n if (!elementId.length) {\r\n queryString += Param[0] + '=' + Param[1] + '&';\r\n if (Param[0] == 'yf')\r\n startYear = parseInt(Param[1]);\r\n if (Param[0] == 'yt')\r\n EndYear = parseInt(Param[1]);\r\n\r\n if (startYear > 0 && EndYear > 0) {\r\n if (EndYear < startYear) {\r\n canPush = false;\r\n setHeader(\"Invalid Graduation Year Warning\");\r\n setMessage(\"Graduation year from is greater than graduation year to\");\r\n }\r\n }\r\n\r\n } else {\r\n switch (prefix) {\r\n case 'cs':\r\n companystates += elementId + '|';\r\n break;\r\n case 'ps':\r\n practiceAreas += elementId + '|';\r\n break;\r\n case 'us':\r\n USStates += elementId + '|';\r\n break;\r\n case 'no':\r\n NonUSState += elementId + '|';\r\n break;\r\n default:\r\n }\r\n }\r\n }\r\n })\r\n\r\n if (companystates.length > 0) {\r\n companystates = companystates.substring(0, companystates.length - 1)\r\n queryString += 'cs=' + decodeURI(companystates) + '&';\r\n }\r\n if (practiceAreas.length > 0) {\r\n practiceAreas = practiceAreas.substring(0, practiceAreas.length - 1)\r\n queryString += 'ap=' + practiceAreas + '&';\r\n }\r\n if (USStates.length > 0) {\r\n USStates = USStates.substring(0, USStates.length - 1)\r\n queryString += 'auj=' + USStates + '&';\r\n }\r\n if (NonUSState.length > 0) {\r\n NonUSState = NonUSState.substring(0, NonUSState.length - 1)\r\n queryString += 'anj=' + NonUSState + '&';\r\n }\r\n\r\n if (queryString.length > 0) {\r\n queryString = queryString.substring(0, queryString.length - 1)\r\n }\r\n else {\r\n canPush = false;\r\n setHeader(\"No Parameters Warning\")\r\n setMessage(\"Please select search parameters\");\r\n\r\n }\r\n\r\n if (!canPush) {\r\n setVisible(true);\r\n }\r\n else {\r\n searchWarning(queryString, null,\"You have entered a term that delivers too many results. Please enter a new term or add additional terms/options to limit your search.\"); \r\n }\r\n };\r\n\r\n const closeDialog = (e) => {\r\n setVisible(false);\r\n }\r\n const onCheckChange = (e) => {\r\n try {\r\n let prefix = '';\r\n let elementId = '';\r\n\r\n e.target.name.split('_').map((item, index) => {\r\n switch (index) {\r\n case 0:\r\n prefix = item;\r\n break;\r\n case 1:\r\n elementId = item;\r\n break;\r\n default:\r\n }\r\n })\r\n\r\n switch (prefix) {\r\n case 'cs':\r\n updatedStatus(selectedCompanyStates, prefix, elementId, e);\r\n break;\r\n case 'ps':\r\n updatedStatus(selectedPracticeAreas, prefix, elementId, e);\r\n break;\r\n case 'us':\r\n updatedStatus(selectedUSStates, prefix, elementId, e);\r\n break;\r\n case 'no':\r\n updatedStatus(selectedNonUSStates, prefix, elementId, e);\r\n break;\r\n default:\r\n }\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n\r\n const updatedStatus = (selectedItems, prefix, elementId, e) => { \r\n let parentEle = e.target.parentElement.parentElement;\r\n const itemsLimit = parentEle.id.includes(\"_cs_\") ? 3 : 4;\r\n if (e.target.checked) {\r\n if (selectedItems.length >= itemsLimit) {\r\n e.target.checked = false;\r\n parentEle.className = checkboxRedColorClassName;\r\n }\r\n else {\r\n selectedItems.push(parentEle.id);\r\n }\r\n }\r\n else {\r\n\r\n if (selectedItems.length >= itemsLimit) {\r\n updatedBackgroundColor(prefix);\r\n }\r\n selectedItems.splice(parentEle.id, 1);\r\n }\r\n }\r\n\r\n const updatedBackgroundColor = (prefix) => {\r\n\r\n switch (prefix) {\r\n case 'cs':\r\n companyStates.map((item) => {\r\n document.getElementById('_cs_' + item.id).className = checkboxClassName;\r\n });\r\n break;\r\n case 'ps':\r\n practiceAreas.map((item) => {\r\n document.getElementById('_ps_' + item.id).className = checkboxClassName;\r\n });\r\n break;\r\n case 'us':\r\n usStateBars.map((item, index) => {\r\n document.getElementById('_us_' + index).className = checkboxClassName;\r\n });\r\n break;\r\n case 'no':\r\n nonUSStateBars4CA.map((item, index) => {\r\n document.getElementById('_no_' + index).className = checkboxClassName;\r\n });\r\n break;\r\n default:\r\n }\r\n }\r\n\r\n const filterTitle = `Corporate Counsel Search`;\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {filterTitle}
    \r\n\r\n
    Company
    \r\n
    \r\n Company Name\r\n
    \r\n \r\n
    \r\n Company City\r\n
    \r\n \r\n
    \r\n Company State\r\n
    \r\n
    \r\n Choose up to three options\r\n
    \r\n
    \r\n {companyStates.map((item) => (\r\n
    \r\n \r\n
    \r\n\r\n ))}\r\n
    \r\n
    Attorney
    \r\n
    \r\n Attorney Name:\r\n
    \r\n \r\n\r\n
    \r\n Practice Area(s)\r\n
    \r\n
    \r\n Choose up to four options\r\n
    \r\n
    \r\n {practiceAreas.map((item) => (\r\n
    \r\n \r\n
    \r\n ))}\r\n
    \r\n
    \r\n
    \r\n US State Bar Jurisdictions\r\n
    \r\n
    \r\n Choose up to four options\r\n
    \r\n
    \r\n {usStateBars.map((item, index) => (\r\n\r\n
    \r\n \r\n
    \r\n ))}\r\n
    \r\n
    \r\n
    \r\n Non-US Bar Jurisdictions\r\n
    \r\n
    \r\n Choose up to four options\r\n
    \r\n
    \r\n
    Canada
    \r\n {nonUSStateBars4CA.map((item, index) => (\r\n
    \r\n \r\n
    \r\n ))}\r\n
    Others
    \r\n {nonUSStateBars4Others.map((item, index) => (\r\n
    \r\n \r\n
    \r\n ))}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n Current Position\r\n
    \r\n \r\n
    \r\n Memberships / Affiliations\r\n
    \r\n \r\n
    \r\n School\r\n
    \r\n \r\n
    \r\n Degree\r\n
    \r\n \r\n
    \r\n Graduation Year\r\n
    \r\n
    \r\n \r\n !isNaN(value) })} />\r\n {errors.yf &&
    The input is number only
    }\r\n
    \r\n
    \r\n \r\n !isNaN(value) })} />\r\n {errors.yt &&
    The input is number only
    }\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default SearchForm;\r\n","export function wrapLabel(label, limit) {\r\n const words = label.split(\" \");\r\n let aux = []\r\n let concat = []\r\n\r\n for (let i = 0; i < words.length; i++) {\r\n concat.push(words[i])\r\n let join = concat.join(' ')\r\n if (join.length > limit) {\r\n aux.push(join)\r\n concat = []\r\n }\r\n }\r\n\r\n if (concat.length) {\r\n aux.push(concat.join(' ').trim())\r\n }\r\n return aux\r\n}","import React, {Component} from \"react\";\r\nimport PropTypes from 'prop-types';\r\nimport Chart from \"chart.js\";\r\nimport { wrapLabel } from \"./wrapLabel\";\r\n\r\nclass BarChartComponent extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.chartRef = React.createRef();\r\n }\r\n\r\n buildChart = () => {\r\n const myChartRef = this.chartRef.current.getContext(\"2d\");\r\n this.chart = new Chart(myChartRef, {\r\n type: \"bar\",\r\n data: {\r\n //Bring in data\r\n labels: this.props.labels,\r\n datasets: [\r\n {\r\n label: this.props.label,\r\n data: this.props.data,\r\n backgroundColor: this.props.backgroundColors,\r\n },\r\n ],\r\n },\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n aspectRatio: 1,\r\n //Customize chart options\r\n legend: {\r\n display: false\r\n },\r\n hover: {\r\n onHover: function(e) {\r\n var point = this.getElementAtEvent(e);\r\n if (point.length) e.target.style.cursor = 'pointer';\r\n else e.target.style.cursor = 'default';\r\n }\r\n },\r\n scales: {\r\n yAxes: [{\r\n ticks: {\r\n beginAtZero: true\r\n }\r\n }],\r\n xAxes: [{\r\n ticks: {\r\n callback: function (label) {\r\n return wrapLabel(label, 15);\r\n }\r\n }\r\n }]\r\n }\r\n },\r\n });\r\n };\r\n\r\n componentDidMount() {\r\n this.buildChart();\r\n }\r\n\r\n componentDidUpdate() {\r\n this.chart.data.labels = this.props.labels;\r\n this.chart.data.datasets = [\r\n {\r\n label: this.props.label,\r\n data: this.props.data,\r\n backgroundColor: this.props.backgroundColors,\r\n },\r\n ];\r\n this.chart.update();\r\n }\r\n\r\n chartClick = (evt) => {\r\n let activePoints = this.chart.getElementsAtEvent(evt);\r\n if (activePoints[0]) {\r\n let chartData = activePoints[0]['_chart'].config.data;\r\n let idx = activePoints[0]['_index'];\r\n let label = chartData.labels[idx];\r\n let value = chartData.datasets[0].data[idx];\r\n this.props.legendCallBack(evt, {text: label})\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nBarChartComponent.propTypes = {\r\n label: PropTypes.string.isRequired,\r\n labels: PropTypes.array.isRequired,\r\n data: PropTypes.array.isRequired,\r\n backgroundColors: PropTypes.array.isRequired,\r\n}\r\nexport const BarChart = BarChartComponent;\r\n","/**\r\n * Expose ref into window to make it accessible from console\r\n * @param key - key of ref\r\n * @returns {function(*): void}\r\n */\r\nexport function registerTestObject(key) {\r\n if (!window.testObjects) window.testObjects = {};\r\n return function(ref) {\r\n window.testObjects[key] = ref;\r\n }\r\n}\r\n\r\nexport const BI = {\r\n HOME_COMPANY_STATES_CHART: 'BI Charts > Company States',\r\n HOME_COLLEGES_CHART: 'BI Charts > Colleges',\r\n HOME_PRACTICE_AREAS_CHART: 'BI Charts > Practice Areas',\r\n HOME_YEARS_ADMITTED_TO_BAR_CHART: 'BI Charts > Year Admitted to Bar',\r\n HOME_COMPANY_CITIES_CHART: 'BI Charts > Company Cities',\r\n\r\n PSF_COLLEGES_CHART: 'PSF Charts > Colleges',\r\n PSF_PRACTICE_AREAS_CHART: 'PSF Charts > Practice Areas',\r\n PSF_YEARS_ADMITTED_TO_BAR_CHART: 'PSF Charts > Year Admitted to Bar',\r\n PSF_COMPANY_CITIES_CHART: 'PSF Charts > Company Cities',\r\n PSF_COMPANY_STATES_CHART: 'PSF Charts > Company States',\r\n\r\n PSF_OVERLAY_COLLEGES_CHART: 'PSF Chart Overlay > Colleges',\r\n PSF_OVERLAY_PRACTICE_AREAS_CHART: 'PSF Chart Overlay > Practice Areas',\r\n PSF_OVERLAY_YEARS_ADMITTED_TO_BAR_CHART: 'PSF Chart Overlay > Year Admitted to Bar',\r\n PSF_OVERLAY_COMPANY_CITIES_CHART: 'PSF Chart Overlay > Company Cities',\r\n PSF_OVERLAY_COMPANY_STATES_CHART: 'PSF Chart Overlay > Company States',\r\n\r\n READ_COLLEGES_CHART: 'Read Page Charts > Colleges',\r\n READ_PRACTICE_AREAS_CHART: 'Read Page Charts > Practice Areas',\r\n READ_TITLES_CHART: 'Read Page Charts > Titles',\r\n\r\n READ_OVERLAY_COLLEGES_CHART: 'Read Page Chart Overlay > Colleges',\r\n READ_OVERLAY_PRACTICE_AREAS_CHART: 'Read Page Chart Overlay > Practice Areas',\r\n READ_OVERLAY_TITLES_CHART: 'Read Page Chart Overlay > Titles',\r\n\r\n READ_CHECKED_COLLEGES_CHART: 'Read Checked Page Charts > Colleges',\r\n READ_CHECKED_PRACTICE_AREAS_CHART: 'Read Checked Page Charts > Practice Areas',\r\n READ_CHECKED_TITLES_CHART: 'Read Checked Page Charts > Titles',\r\n\r\n READ_CHECKED_OVERLAY_COLLEGES_CHART: 'Read Checked Page Chart Overlay > Colleges',\r\n READ_CHECKED_OVERLAY_PRACTICE_AREAS_CHART: 'Read Checked Page Chart Overlay > Practice Areas',\r\n READ_CHECKED_OVERLAY_TITLES_CHART: 'Read Checked Page Chart Overlay > Titles'\r\n}\r\n","export default function* color(end) {\r\n const colorSet = [\r\n '#e5202e',\r\n '#007ac3',\r\n '#85bc20',\r\n '#474747',\r\n '#009881',\r\n '#ea8f00',\r\n '#940c72',\r\n '#241866',\r\n '#ec5862',\r\n '#409bd2',\r\n '#a4cd58',\r\n '#757575',\r\n '#efab40',\r\n '#5b528c',\r\n '#af4995',\r\n '#40b2a1',\r\n '#f29097',\r\n '#80bde1',\r\n '#c2de90',\r\n '#a3a3a3',\r\n '#f5c780',\r\n '#928cb3',\r\n '#ca86b9',\r\n '#80ccc0',\r\n '#f6b1b6',\r\n '#a6d1ea',\r\n '#d4e8b1',\r\n '#bfbfbf',\r\n '#f8d8a6',\r\n '#b3aeca',\r\n '#daaace',\r\n '#a6dbd3'\r\n ]\r\n for (let i = 0; i < end; i++) {\r\n yield colorSet[i % colorSet.length];\r\n }\r\n}\r\n","import _ from 'lodash';\r\nexport const createLoadingSelector = (actions) => (state) => {\r\n // returns true only when all actions is not loading\r\n return _(actions)\r\n .some((action) => _.get(state, `loading.${action}`));\r\n};","import React from 'react';\r\nimport {useHistory} from \"react-router\";\r\nimport {BarChart} from \"components/charts/BarChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport color from \"../../utils/color\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { useSelector } from \"react-redux\";\r\nimport { createLoadingSelector } from \"../../state/selectors/loadingSelector\";\r\n\r\nconst CollegeBi = ({ selectedStates, searchWarning}) => {\r\n const history = useHistory();\r\n const stats = useSelector(state => state.home.topColleges);\r\n const loadingSelector = createLoadingSelector(['HOME_DATA_TOP_COLLEGES']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n const triggerSearch = legendItem => {\r\n try {\r\n let queryString = `al=${legendItem.text}`\r\n if (selectedStates && selectedStates.length > 0) {\r\n queryString = queryString.concat(\"&cs=\" + selectedStates.join(\"|\"))\r\n }\r\n searchWarning(queryString);\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n return (\r\n
    \r\n {loading && }\r\n {!loading && item.data)}\r\n labels={stats.map(item => item.label)}\r\n ref={registerTestObject(BI.HOME_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => triggerSearch(legendItem)}\r\n backgroundColors={[...color(stats.length)]}/>}\r\n
    \r\n );\r\n};\r\nexport default CollegeBi;\r\n","import React from \"react\";\r\nimport { geoCentroid } from \"d3-geo\";\r\nimport { withRouter } from 'react-router-dom';\r\nimport { connect } from \"react-redux\";\r\nimport {\r\n ComposableMap,\r\n Geographies,\r\n Geography,\r\n Marker,\r\n Annotation\r\n} from \"react-simple-maps\";\r\nimport { selectMultipleStates, resetStates, selectSingleState } from \"state/actions/homeActions\";\r\nimport './MapChart.css';\r\nimport allStates from \"./allstates.json\";\r\nimport WarningDialog from \"pages/Common/WarningDialog\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\n\r\nconst geoUrl = \"https://cdn.jsdelivr.net/npm/us-atlas@3/states-10m.json\";\r\n\r\n//these are for the states which are outside the map and whose state codes are extended using an arrow\r\nconst offsets = {\r\n VT: [50, -8],\r\n NH: [34, 2],\r\n MA: [30, -1],\r\n RI: [28, 2],\r\n CT: [35, 10],\r\n NJ: [34, 1],\r\n DE: [33, 0],\r\n MD: [47, 10],\r\n DC: [49, 21]\r\n};\r\n\r\n\r\nclass MapChart extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n //state of the Map Component\r\n this.state = {\r\n multipleSelectMode: false,\r\n clickedstate: \"\",\r\n hasClickedSearch: false,\r\n selectedStates: [],\r\n isVisible:false\r\n }\r\n }\r\n\r\n //handler to set state on clicking search in the multiple states selected box\r\n selectStateSearchHandler = () => {\r\n try {\r\n this.setState({ hasClickedSearch: true });\r\n this.props.selectStateAction(this.state.selectedStates);\r\n } catch (error) { logAndRedirectToErrorPage(error); }\r\n }\r\n\r\n\r\n //clear the selected states in the multiple states selected box\r\n clearHandler = (stateId) => {\r\n try {\r\n this.setState({ hasClickedSearch: false, clickedstate: stateId, selectedStates: [stateId], multipleSelectMode: false });\r\n if (this.props.selectedStates.length > 0) {\r\n this.props.resetStatesAction();\r\n }\r\n } catch (error) { logAndRedirectToErrorPage(error); }\r\n }\r\n\r\n closeDialog = () => {\r\n try {\r\n this.setState({ isVisible: false })\r\n } catch (error) { logAndRedirectToErrorPage(error); }\r\n }\r\n\r\n mapClickHandler = (e, stateId) => {\r\n try {\r\n //if shift key is used to select multiple US states\r\n if (e.shiftKey) {\r\n\r\n if (this.props.selectedStates.includes(stateId)) {\r\n return;\r\n }\r\n\r\n if (this.props.selectedStates.length === 3) {\r\n this.setState({ isVisible: true })\r\n }\r\n //updating the Component state by setting the newly selected US state name and state code\r\n else {\r\n this.setState({\r\n multipleSelectMode: true,\r\n hasClickedSearch: false,\r\n selectedStates: [...this.props.selectedStates, stateId]\r\n });\r\n\r\n //Map Improvements\r\n this.props.selectStateAction([...this.props.selectedStates, stateId]);\r\n }\r\n }\r\n //selecting only one US state at a time\r\n else {\r\n this.clearHandler(stateId);\r\n this.props.selectSingleStateAction(stateId);\r\n }\r\n } catch (error) { logAndRedirectToErrorPage(error); }\r\n }\r\n\r\n render() {\r\n\r\n let selStateCodes = this.props.selectedStates.length === 0 ? \"US\" : this.props.selectedStates;\r\n\r\n return (\r\n <>\r\n {/*map division*/}\r\n
    \r\n\r\n
    \r\n
    (Shift + Click) to select 1 to 3 States Statistics
    \r\n
    \r\n\r\n {/*this generates the selected states box in case of multiple selections*/}\r\n\r\n \r\n \r\n {({ geographies }) => (\r\n <>\r\n {geographies.map(geo => {\r\n const cur = allStates.find(s => s.val === geo.id);\r\n const centroid = geoCentroid(geo);\r\n return (\r\n this.mapClickHandler(e, cur.id)}\r\n key={geo.rsmKey + \"-name\"}\r\n >\r\n \r\n {cur &&\r\n centroid[0] > -160 &&\r\n centroid[0] < -67 &&\r\n (Object.keys(offsets).indexOf(cur.id) === -1\r\n ? ()\r\n : ()\r\n )}\r\n \r\n );\r\n }\r\n )}\r\n \r\n )}\r\n \r\n \r\n \r\n
    \r\n \r\n );\r\n }\r\n}\r\n\r\nconst StateAbbreviation = ({ cur, centroid }) => (\r\n \r\n \r\n {cur.id}\r\n \r\n \r\n);\r\n\r\nconst StateAnnotation = ({ cur, centroid }) => (\r\n \r\n \r\n {cur.id}\r\n \r\n \r\n);\r\n\r\nconst mapStateToProps = state => ({\r\n selectedStates: state.home.selectedStates\r\n});\r\nconst mapDispatchToProps = dispatch => ({\r\n selectStateAction: state => dispatch(selectMultipleStates(state)),\r\n resetStatesAction: () => dispatch(resetStates()),\r\n selectSingleStateAction: state => dispatch(selectSingleState(state))\r\n});\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withRouter(MapChart));\r\n\r\n\r\n\r\n","import React, {Component} from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport Chart from \"chart.js\";\r\n\r\nclass PieChartComponent extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.chartRef = React.createRef();\r\n }\r\n\r\n buildChart = () => {\r\n const myChartRef = this.chartRef.current.getContext(\"2d\");\r\n this.chart = new Chart(myChartRef, {\r\n type: \"pie\",\r\n data: {\r\n //Bring in data\r\n labels: this.props.labels,\r\n datasets: [\r\n {\r\n label: this.props.label,\r\n data: this.props.data,\r\n backgroundColor: this.props.backgroundColors,\r\n },\r\n ],\r\n },\r\n options: {\r\n legend: {\r\n display: false,\r\n },\r\n elements: {\r\n arc: {\r\n borderWidth: 0\r\n }\r\n },\r\n hover: {\r\n onHover: function(e) {\r\n let point = this.getElementAtEvent(e);\r\n if (point.length) e.target.style.cursor = 'pointer';\r\n else e.target.style.cursor = 'default';\r\n }\r\n }\r\n },\r\n });\r\n };\r\n chartClick = (evt) => {\r\n let activePoints = this.chart.getElementsAtEvent(evt);\r\n if (activePoints[0]) {\r\n let chartData = activePoints[0]['_chart'].config.data;\r\n let idx = activePoints[0]['_index'];\r\n let label = chartData.labels[idx];\r\n let value = chartData.datasets[0].data[idx];\r\n this.props.legendCallBack(evt, {text: label})\r\n }\r\n };\r\n\r\n componentDidMount() {\r\n this.buildChart();\r\n }\r\n\r\n componentDidUpdate() {\r\n this.chart.data.labels = this.props.labels;\r\n this.chart.data.datasets = [\r\n {\r\n label: this.props.label,\r\n data: this.props.data,\r\n backgroundColor: this.props.backgroundColors,\r\n },\r\n ];\r\n this.chart.update();\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n \r\n
    \r\n {this.props.labels.map((item, i) => (\r\n this.props.legendCallBack(evt, {text: item})}\r\n >\r\n
    \r\n {item}\r\n
    \r\n ))}\r\n
    \r\n \r\n );\r\n }\r\n}\r\n\r\nPieChartComponent.propTypes = {\r\n label: PropTypes.string.isRequired,\r\n labels: PropTypes.array.isRequired,\r\n data: PropTypes.array.isRequired,\r\n backgroundColors: PropTypes.array.isRequired,\r\n}\r\n\r\nexport const Piechart = PieChartComponent;\r\n","import React from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from \"utils/testUtils\";\r\nimport { useHistory } from \"react-router\";\r\nimport color from \"../../utils/color\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { useSelector } from \"react-redux\";\r\nimport { createLoadingSelector } from \"../../state/selectors/loadingSelector\";\r\n\r\nconst PracticeAreaBi = ({ selectedStates, practiceAreas, searchWarning}) => {\r\n const history = useHistory();\r\n const practiceAreaBiData = useSelector(state => state.home.topPracticeAreas);\r\n const loadingSelector = createLoadingSelector(['HOME_DATA_TOP_PRACTICEAREAS']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n const triggerSearch = legendItem => {\r\n try {\r\n let practiceArea = practiceAreas?.filter(item => item.desc === legendItem.text)[0];\r\n let queryString = `ap=${practiceArea.id}`\r\n if (selectedStates && selectedStates.length > 0) {\r\n queryString = queryString.concat(\"&cs=\" + selectedStates.join(\"|\"))\r\n }\r\n searchWarning(queryString);\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n return (\r\n
    \r\n {loading && }\r\n {!loading && item.data)}\r\n labels={practiceAreaBiData.map(item => item.label)}\r\n ref={registerTestObject(BI.HOME_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => triggerSearch(legendItem)}\r\n backgroundColors={[...color(practiceAreaBiData.length)]} />}\r\n
    \r\n );\r\n};\r\nexport default PracticeAreaBi;\r\n","import React from 'react';\r\nimport {BarChart} from \"components/charts/BarChart\";\r\nimport {registerTestObject, BI} from \"utils/testUtils\";\r\nimport {useHistory} from \"react-router\";\r\nimport color from \"../../utils/color\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { useSelector } from \"react-redux\";\r\nimport { createLoadingSelector } from \"../../state/selectors/loadingSelector\";\r\n\r\nconst YearAdmittedtobarBI = ({ selectedStates, searchWarning}) => {\r\n const history = useHistory();\r\n const yearAdmittedToBarBiData = useSelector(state => state.home.topYearAdmittedToBars);\r\n const loadingSelector = createLoadingSelector(['HOME_DATA_TOP_YEARADMITTEDTOBAR']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n const triggerSearch = legendItem => {\r\n try {\r\n let queryString = `yb=${legendItem.text}`\r\n if (selectedStates && selectedStates.length > 0) {\r\n queryString = queryString.concat(\"&cs=\" + selectedStates.join(\"|\"))\r\n }\r\n searchWarning(queryString);\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n return (\r\n
    \r\n {loading && }\r\n {!loading && item.data)}\r\n labels={yearAdmittedToBarBiData.map(item => item.label)}\r\n ref={registerTestObject(BI.HOME_YEARS_ADMITTED_TO_BAR_CHART)}\r\n legendCallBack={(event, legendItem) => triggerSearch(legendItem)}\r\n backgroundColors={[...color(yearAdmittedToBarBiData.length)]}/>}\r\n
    \r\n );\r\n};\r\nexport default YearAdmittedtobarBI;\r\n","import React from 'react';\r\nimport { useSelector } from \"react-redux\";\r\nimport { useHistory } from \"react-router\";\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport color from \"../../utils/color\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { createLoadingSelector } from \"state/selectors/loadingSelector\";\r\n\r\n\r\nconst TopStatesBi = ({ searchWarning }) => {\r\n const history = useHistory();\r\n const loadingSelector = createLoadingSelector(['HOME_DATA_COUNSEL_COUNT']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n const topStatesBiData = useSelector(state => state.home.counselCountByState);\r\n const triggerSearch = legendItem => {\r\n try {\r\n let queryString = `&cs=${legendItem.text}`\r\n searchWarning(queryString);\r\n } catch (error) {\r\n logAndRedirectToErrorPage(error, history);\r\n }\r\n }\r\n return (\r\n
    \r\n {loading && }\r\n {!loading && item.data)}\r\n labels={topStatesBiData.map(item => item.label)}\r\n ref={registerTestObject(BI.HOME_COMPANY_STATES_CHART)}\r\n legendCallBack={(event, legendItem) => triggerSearch(legendItem)}\r\n backgroundColors={[...color(topStatesBiData.length)]}/>}\r\n
    \r\n );\r\n};\r\nexport default TopStatesBi;\r\n","import React from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useHistory } from \"react-router\";\r\nimport color from \"../../utils/color\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { useSelector } from \"react-redux\";\r\nimport { createLoadingSelector } from \"../../state/selectors/loadingSelector\";\r\n\r\nconst TopCompaniesBi = ({ selectedStates, searchWarning}) => {\r\n const history = useHistory();\r\n const topCitiesBiData = useSelector(state => state.home.topCities);\r\n const loadingSelector = createLoadingSelector(['HOME_DATA_TOP_CITIES']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n const triggerSearch = legendItem => {\r\n try {\r\n let queryString = `cc=${legendItem.text}`\r\n if (selectedStates && selectedStates.length > 0) {\r\n queryString = queryString.concat(\"&cs=\" + selectedStates.join(\"|\"))\r\n }\r\n searchWarning(queryString);\r\n } catch (error) { logAndRedirectToErrorPage(error, history);}\r\n }\r\n return (\r\n
    \r\n {loading && }\r\n {!loading && item.data)}\r\n labels={topCitiesBiData.map(item => item.label)}\r\n ref={registerTestObject(BI.HOME_COMPANY_CITIES_CHART)}\r\n legendCallBack={(event, legendItem) => triggerSearch(legendItem)}\r\n backgroundColors={[...color(topCitiesBiData.length)]} />}\r\n
    \r\n );\r\n};\r\nexport default TopCompaniesBi;\r\n","\r\n\r\nexport function getStateName(state) {\r\n\r\n var statename = \"\";\r\n\r\n switch (state) {\r\n case 'ME':\r\n statename = 'Maine';\r\n break;\r\n case 'MA':\r\n statename = 'Massachusetts';\r\n break;\r\n case 'NH':\r\n statename = 'New Hampshire';\r\n break;\r\n case 'PR':\r\n statename = 'Puerto Rico';\r\n break;\r\n case 'RI':\r\n statename = 'Rhode Island';\r\n break;\r\n case 'CT':\r\n statename = 'Connecticut';\r\n break;\r\n case 'NY':\r\n statename = 'New York';\r\n break;\r\n case 'VT':\r\n statename = 'Vermont';\r\n break;\r\n case 'DE':\r\n statename = 'Delaware';\r\n break;\r\n case 'NJ':\r\n statename = 'New Jersey';\r\n break;\r\n case 'PA':\r\n statename = 'Pennsylvania';\r\n break;\r\n case 'VI':\r\n statename = 'Virgin Islands';\r\n break;\r\n case 'MD':\r\n statename = 'Maryland';\r\n break;\r\n case 'NC':\r\n statename = 'North Carolina';\r\n break;\r\n case 'SC':\r\n statename = 'South Carolina';\r\n break;\r\n case 'VA':\r\n statename = 'Virginia';\r\n break;\r\n case 'WV':\r\n statename = 'West Virginia';\r\n break;\r\n case 'LA':\r\n statename = 'Louisiana';\r\n break;\r\n case 'MS':\r\n statename = 'Mississippi';\r\n break;\r\n case 'TX':\r\n statename = 'Texas';\r\n break;\r\n case 'KY':\r\n statename = 'Kentucky';\r\n break;\r\n case 'MI':\r\n statename = 'Michigan';\r\n break;\r\n case 'OH':\r\n statename = 'Ohio';\r\n break;\r\n case 'TN':\r\n statename = 'Tennessee';\r\n break;\r\n case 'IL':\r\n statename = 'Illinois';\r\n break;\r\n case 'IN':\r\n statename = 'Indiana';\r\n break;\r\n case 'WI':\r\n statename = 'Wisconsin';\r\n break;\r\n case 'AR':\r\n statename = 'Arkansas';\r\n break;\r\n case 'IA':\r\n statename = 'Iowa';\r\n break;\r\n case 'MN':\r\n statename = 'Minnesota';\r\n break;\r\n case 'MO':\r\n statename = 'Missouri';\r\n break;\r\n case 'NE':\r\n statename = 'Nebraska';\r\n break;\r\n case 'ND':\r\n statename = 'North Dakota';\r\n break;\r\n case 'SD':\r\n statename = 'South Dakota';\r\n break;\r\n case 'AK':\r\n statename = 'Alaska';\r\n break;\r\n case 'AZ':\r\n statename = 'Arizona';\r\n break;\r\n case 'CA':\r\n statename = 'California';\r\n break;\r\n case 'GU':\r\n statename = 'Guam';\r\n break;\r\n case 'HI':\r\n statename = 'Hawaii';\r\n break;\r\n case 'ID':\r\n statename = 'Idaho';\r\n break;\r\n case 'MT':\r\n statename = 'Montana';\r\n break;\r\n case 'NV':\r\n statename = 'Nevada';\r\n break;\r\n case 'MP':\r\n statename = 'Northern Mariana Islands';\r\n break;\r\n case 'OR':\r\n statename = 'Oregon';\r\n break;\r\n case 'WA':\r\n statename = 'Washington';\r\n break;\r\n case 'CO':\r\n statename = 'Colorado';\r\n break;\r\n case 'KS':\r\n statename = 'Kansas';\r\n break;\r\n case 'NM':\r\n statename = 'New Mexico';\r\n break;\r\n case 'OK':\r\n statename = 'Oklahoma';\r\n break;\r\n case 'UT':\r\n statename = 'Utah';\r\n break;\r\n case 'WY':\r\n statename = 'Wyoming';\r\n break;\r\n case 'AL':\r\n statename = 'Alabama';\r\n break;\r\n case 'FL':\r\n statename = 'Florida';\r\n break;\r\n case 'GA':\r\n statename = 'Georgia';\r\n break;\r\n case 'DC':\r\n statename = 'District of Columbia';\r\n break;\r\n case 'US':\r\n statename = 'United States of America';\r\n break;\r\n default:\r\n statename = \"United States of America\";\r\n }\r\n\r\n return statename;\r\n}","import { getStateName } from './getStateName.js';\r\n\r\nexport function getStateCountryTitle(selstatecodes) {\r\n var title = \"\";\r\n var i;\r\n\r\n if (typeof selstatecodes === \"object\") {\r\n for (i = 0; i < selstatecodes.length; i++) {\r\n title = title + getStateName(selstatecodes[i]) + \", \";\r\n }\r\n return title.substr(0, title.length - 2);\r\n } else {\r\n return getStateName(selstatecodes);\r\n }\r\n}","\r\n\r\nexport function getStateQueryString(selstatecodes) {\r\n var stateqry = \"\";\r\n var i;\r\n\r\n if (typeof selstatecodes === \"object\") {\r\n for (i = 0; i < selstatecodes.length; i++) {\r\n stateqry = stateqry + selstatecodes[i] + \"|\";\r\n }\r\n return stateqry.substr(0, stateqry.length - 1);\r\n } else {\r\n return selstatecodes;\r\n }\r\n}","import React from 'react';\r\nimport { getStateCountryTitle } from 'utils/getStateCountryTitle.js';\r\nimport { getStateQueryString } from 'utils/getStateQueryString.js';\r\nimport { selectMultipleStates, resetStates } from \"state/actions/homeActions\";\r\nimport { useHistory } from \"react-router\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { useDispatch } from \"react-redux\";\r\n\r\nconst Statistics = ({ selectedStateCodes, totalCount, totalCountWithEmail, searchWarning})=>{\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n const submitHandler = () => {\r\n try {\r\n let queryStr = 'cs=' + getStateQueryString(selectedStateCodes);\r\n searchWarning(queryStr);\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n\r\n const submitEmailHandler = () => {\r\n try {\r\n let queryStr = 'cs=' + getStateQueryString(selectedStateCodes) + '&em=y';\r\n searchWarning(queryStr);\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n\r\n const clearHandler = () => {\r\n try {\r\n dispatch(resetStates());\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n\r\n const stateClickedHandler = (id, ids) => {\r\n try {\r\n if (ids.length === 1) {\r\n clearHandler();\r\n } else {\r\n dispatch(selectMultipleStates(ids.filter(x => x !== id)));\r\n }\r\n } catch (error) { logAndRedirectToErrorPage(error, history); }\r\n }\r\n return (\r\n
    \r\n
    \r\n

    {selectedStateCodes.length > 0 ? \"States\" : \"US\"} Statistics

    \r\n
    \r\n {\r\n selectedStateCodes.map(selstate => (\r\n \r\n stateClickedHandler(selstate, selectedStateCodes)}/>\r\n {getStateCountryTitle(selstate)}\r\n \r\n ))\r\n }\r\n {\r\n selectedStateCodes.length > 0 && (Clear All)\r\n }\r\n
    \r\n
    \r\n {\r\n selectedStateCodes.length > 0\r\n ? (Corporate Counsel\r\n Count: {totalCount})\r\n : (Corporate Counsel Count: {totalCount})\r\n }\r\n
    \r\n
    \r\n {\r\n selectedStateCodes.length > 0\r\n ? (Counsel with E-Mail (%): {Math.round((totalCountWithEmail / totalCount) * 100)})\r\n : (Counsel with E-Mail (%): {Math.round((totalCountWithEmail / totalCount) * 100)})\r\n }\r\n
    \r\n {\r\n selectedStateCodes.length > 0 && (Search)\r\n }\r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default Statistics;\r\n","export const SPINNER_CHANGED = \"SPINNER_CHANGED\";\r\n\r\nexport const spinnerChangedAction = isLoading => ({\r\n type: SPINNER_CHANGED,\r\n isLoading\r\n})","export const LOCATION_CHANGED = \"LOCATION_CHANGED\";\r\n\r\nexport const onLocationChanged = pathname => ({\r\n type: LOCATION_CHANGED,\r\n pathname,\r\n})\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useHistory } from \"react-router\";\r\nimport SearchForm from '../Home/SearchForm';\r\nimport CollegeBi from \"./CollegeBI\";\r\nimport MapChart from \"./MapChart\";\r\nimport PracticeAreaBi from \"./PracticeAreaBI\";\r\nimport YearAdmittedtobarBI from './YearAdmittedtobarBI';\r\nimport StatesBi from \"./StatesBI\";\r\nimport TopCompanyCitiesChart from './CitiesBI';\r\nimport Statistics from \"./Statistics\";\r\nimport { get } from \"services/ApiService\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { spinnerChangedAction } from \"state/actions/spinnerActions\"\r\nimport WaringDialog from \"pages/Common/WarningDialog\";\r\nimport { practiceAreas } from '../Home/Data/config';\r\nimport {\r\n loadHomeData,\r\n loadHomeDataByStates,\r\n loadTopCities,\r\n loadTopColleges,\r\n loadCounselCountByState,\r\n loadTopPracticeAreas,\r\n loadTopYearAdmittedToBars,\r\n} from \"state/actions/homeActions\";\r\nimport { onLocationChanged } from \"state/actions/locationActions\";\r\n\r\nconst Home = () => {\r\n const dispatch = useDispatch();\r\n const selectedStates = useSelector(state => state.home.selectedStates);\r\n const totalCount = useSelector(state => state.home.totalCounselCount);\r\n const totalCountWithEmail = useSelector(state => state.home.totalCounselEmailCount);\r\n const [isSearchWarningVisible, setSearchWarningVisible] = useState(false);\r\n const [searchWarningHeader, setSearchWarningHeader] = useState(\"\");\r\n const [searchWarningBody, setSearchWarningBody] = useState(\"\");\r\n const [initialRender, setInitialRender] = useState(true);\r\n let history = useHistory();\r\n useEffect(() => {\r\n if (!initialRender)\r\n dispatch(loadHomeDataByStates(selectedStates));\r\n }, [selectedStates]);\r\n useEffect(() => {\r\n if (totalCount === undefined) {\r\n dispatch(loadHomeData(selectedStates));\r\n dispatch(loadTopCities(selectedStates));\r\n dispatch(loadTopColleges(selectedStates));\r\n dispatch(loadCounselCountByState(selectedStates));\r\n dispatch(loadTopPracticeAreas(selectedStates));\r\n dispatch(loadTopYearAdmittedToBars(selectedStates));\r\n }\r\n dispatch(onLocationChanged(\"/\"));\r\n setInitialRender(false);\r\n }, []);\r\n const closeSearchWarningDialog = (e) => {\r\n setSearchWarningVisible(false);\r\n }\r\n const searchWarning = (queryString, header, body) => {\r\n dispatch(spinnerChangedAction(true));\r\n get('./api/search/count?' + queryString)\r\n .then(data => {\r\n dispatch(spinnerChangedAction(false));\r\n if (data > 10000) {\r\n setSearchWarningHeader(header || \"Search Warning\");\r\n setSearchWarningBody(body || \"You have selected a combination of States that delivers too many results. Please remove a State or select a different combination.\");\r\n setSearchWarningVisible(true);\r\n } else {\r\n setSearchWarningVisible(false);\r\n history.push({ pathname: \"/search\", search: queryString });\r\n }\r\n })\r\n .catch(e => {\r\n dispatch(spinnerChangedAction(false));\r\n });\r\n };\r\n return (\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Counsel by State

    \r\n \r\n
    \r\n
    \r\n

    Top 5 US Colleges

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Top 5 Practice Areas

    \r\n \r\n
    \r\n
    \r\n

    Top 5 Year Admitted to Bar

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Top 5 Company Cities

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default Home;\r\n","export const PRACTICEAREA_DATA_REQUESTED = \"PRACTICEAREA_DATA_REQUESTED\";\r\nexport const PRACTICEAREA_DATA_LOADED = \"PRACTICEAREA_DATA_LOADED\";\r\nexport const PRACTICEAREA_CURRENT_MAIN_RESULTS_LOADED = \"PRACTICEAREA_CURRENT_MAIN_RESULTS_LOADED\";\r\nexport const SEARCH_DATA_REQUESTED = \"SEARCH_DATA_REQUESTED\";\r\nexport const SEARCH_DATA_LOADING = \"SEARCH_DATA_LOADING\";\r\nexport const SEARCH_DATA_LOADED = \"SEARCH_DATA_LOADED\";\r\nexport const SEARCH_CURRENT_MAIN_RESULTS_LOADED = \"SEARCH_CURRENT_MAIN_RESULTS_LOADED\";\r\nexport const YEARSADMITEDTOBAR_DATA_REQUESTED = \"YEARSADMITEDTOBAR_DATA_REQUESTED\";\r\nexport const YEARSADMITEDTOBAR_DATA_LOADED = \"YEARSADMITEDTOBAR_DATA_LOADED\";\r\nexport const YEARSADMITEDTOBAR_CURRENT_MAIN_RESULTS_LOADED = \"YEARSADMITEDTOBAR_CURRENT_MAIN_RESULTS_LOADED\";\r\nexport const COLLEGES_DATA_REQUESTED = \"COLLEGES_DATA_REQUESTED\";\r\nexport const COLLEGES_DATA_LOADED = \"COLLEGES_DATA_LOADED\";\r\nexport const COLLEGES_CURRENT_MAIN_RESULTS_LOADED = \"COLLEGES_CURRENT_MAIN_RESULTS_LOADED\";\r\nexport const FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS = \"FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS\";\r\nexport const FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS_ALL = \"FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS_ALL\";\r\nexport const RESET_ALL_SEARCH_DATA = \"RESET_ALL_SEARCH_DATA\";\r\nexport const FILTER_BY_MAIN_RESULTS_BY_YEAR = \"FILTER_BY_MAIN_RESULTS_BY_YEAR\";\r\nexport const SET_SEARCH_PAGE = \"SET_SEARCH_PAGE\";\r\nexport const SELECT_SEARCH_ITEM = \"SELECT_SEARCH_ITEM\";\r\nexport const RESET_SELECT_SEARCH_ITEM = \"RESET_SELECT_SEARCH_ITEM\";\r\nexport const SET_SELECT_ALL = \"SET_SELECT_ALL\";\r\nexport const SEARCH_RESET_INITIAL_STATE = \"SEARCH_RESET_INITIAL_STATE\";\r\nexport const SET_BARCHART_PAGE = \"SET_BARCHART_PAGE\";\r\nexport const RESET_BARCHART_PAGE = \"RESET_BARCHART_PAGE\";\r\nexport const SEARCH_DATA_SORTBY = \"SEARCH_DATA_SORTBY\";\r\nexport const YEARSADMITEDTOBAR_DATA_BY_SEARCH_REQUEST = \"YEARSADMITEDTOBAR_DATA_BY_SEARCH_REQUEST\";\r\nexport const COLLEGES_DATA_BY_SEARCH_REQUEST = \"COLLEGES_DATA_BY_SEARCH_REQUEST\";\r\nexport const PRACTICEAREA_DATA_BY_SEARCH_REQUEST = \"PRACTICEAREA_DATA_BY_SEARCH_REQUEST\";\r\n\r\nexport const YEARSADMITEDTOBAR_DATA_BY_SEARCH_LOADED = \"YEARSADMITEDTOBAR_DATA_BY_SEARCH_LOADED\";\r\nexport const COLLEGES_DATA_BY_SEARCH_REQUEST_LOADED = \"COLLEGES_DATA_BY_SEARCH_LOADED\";\r\nexport const PRACTICEAREA_DATA_BY_SEARCH_LOADED = \"PRACTICEAREA_DATA_BY_SEARCH_LOADED\";\r\n\r\nexport const practiceAreaDataLazyLoading = payload => ({\r\n type: PRACTICEAREA_DATA_BY_SEARCH_REQUEST,\r\n payload\r\n});\r\nexport const collegesDataLazyLoading = payload => ({\r\n type: COLLEGES_DATA_BY_SEARCH_REQUEST,\r\n payload\r\n});\r\nexport const yearsAdmittedToBarDataLazyLoading = payload => ({\r\n type: YEARSADMITEDTOBAR_DATA_BY_SEARCH_REQUEST,\r\n payload\r\n});\r\nexport const setBarChartPage = (payload) => ({\r\n type: SET_BARCHART_PAGE,\r\n payload\r\n});\r\nexport const resetBarChartPage = (payload) => ({\r\n type: RESET_BARCHART_PAGE,\r\n payload\r\n});\r\nexport const setSearchPage = (payload) => ({\r\n type: SET_SEARCH_PAGE,\r\n payload\r\n});\r\nexport const resetAllSearchData = (sortBy) => ({\r\n type: RESET_ALL_SEARCH_DATA,\r\n sortBy\r\n});\r\nexport const filterMainResultsByLawyerIds = lawyerIds => ({\r\n type: FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS,\r\n lawyerIds\r\n})\r\nexport const filterMainResultsByLawyerIdsAll = (lawyerIds, sortBy) => ({\r\n type: FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS_ALL,\r\n lawyerIds,\r\n sortBy\r\n})\r\nexport const filterMainResultsByYear = year => ({\r\n type: FILTER_BY_MAIN_RESULTS_BY_YEAR,\r\n year\r\n})\r\nexport const searchCurrentMainResultsLoaded = payload => ({\r\n type: SEARCH_CURRENT_MAIN_RESULTS_LOADED,\r\n payload\r\n});\r\nexport const searchDataLoaded = payload => ({\r\n type: SEARCH_DATA_LOADED,\r\n payload\r\n});\r\nexport const searchDataRequested = (payload) => ({\r\n type: SEARCH_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const practiceAreaDataRequested = (querystring) => ({\r\n type: PRACTICEAREA_DATA_REQUESTED,\r\n querystring\r\n});\r\nexport const practiceAreaDataLoaded = payload => ({\r\n type: PRACTICEAREA_DATA_LOADED,\r\n payload\r\n});\r\nexport const practiceAreaDataBySearchLoaded = payload => ({\r\n type: PRACTICEAREA_DATA_BY_SEARCH_LOADED,\r\n payload\r\n});\r\nexport const practiceAreaCurrentMainResultsLoaded = payload => ({\r\n type: PRACTICEAREA_CURRENT_MAIN_RESULTS_LOADED,\r\n payload\r\n});\r\nexport const yearsAdmitedtoBarDataRequested = (querystring) => ({\r\n type: YEARSADMITEDTOBAR_DATA_REQUESTED,\r\n querystring\r\n});\r\nexport const yearsAdmitedtoBarDataLoaded = payload => ({\r\n type: YEARSADMITEDTOBAR_DATA_LOADED,\r\n payload\r\n});\r\nexport const yearsAdmitedtoBarDataBySearchLoaded = payload => ({\r\n type: YEARSADMITEDTOBAR_DATA_BY_SEARCH_LOADED,\r\n payload\r\n});\r\nexport const yearsAdmitedtoBarCurrentMainResultsLoaded = payload => ({\r\n type: YEARSADMITEDTOBAR_CURRENT_MAIN_RESULTS_LOADED,\r\n payload\r\n});\r\nexport const collegesDataRequested = payload => ({\r\n type: COLLEGES_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const collegesCurrentMainDataLoaded = payload => ({\r\n type: COLLEGES_CURRENT_MAIN_RESULTS_LOADED,\r\n payload\r\n});\r\nexport const collegesDataLoaded = payload => ({\r\n type: COLLEGES_DATA_LOADED,\r\n payload\r\n});\r\nexport const collegesDataBySearchLoaded = payload => ({\r\n type: COLLEGES_DATA_BY_SEARCH_REQUEST_LOADED,\r\n payload\r\n});\r\nexport const selectSearchItem = (lId, checked) => ({\r\n type: SELECT_SEARCH_ITEM,\r\n lId,\r\n checked\r\n});\r\nexport const resetSelectSearchItem = () => ({\r\n type: RESET_SELECT_SEARCH_ITEM\r\n});\r\nexport const setSelectAll = selectAll => ({\r\n type: SET_SELECT_ALL,\r\n selectAll\r\n});\r\nexport const resetSearchToInitialState = () => ({\r\n type: SEARCH_RESET_INITIAL_STATE\r\n});\r\nexport const searchDataSortBy = (val) => ({\r\n type: SEARCH_DATA_SORTBY,\r\n val\r\n});","import dayjs from \"dayjs\";\r\nimport { logAndRedirectToErrorPage, redirectToErrorPage } from \"../components/ErrorComponent\";\r\nimport { history } from \"../routerHistory\";\r\nimport { AuthenticationError } from \"../common/AuthenticationError\";\r\n\r\nconst controller = new AbortController();\r\nconst { signal } = controller;\r\n\r\nexport const downloadLawyers = async lawyerIds => {\r\n try {\r\n const date = dayjs().format(\"DD-MM-YYYY\");\r\n const response = await fetch('api/lawyer/download', {\r\n body: JSON.stringify({ lawyerIds }),\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n },\r\n method: 'POST',\r\n signal\r\n });\r\n if (response.status === 403) {\r\n controller.abort();\r\n window.location.href = window.location.origin + \"/Account/Login?returnUrl=\" + encodeURIComponent(window.location.pathname + window.location.search);\r\n throw new AuthenticationError(\"User not authenticated!\");\r\n }\r\n if (response.status && (response.status === 400 || response.status >= 500)) {\r\n logAndRedirectToErrorPage(response.json(), history);\r\n }\r\n const blob = await response.blob();\r\n // Create blob link to download\r\n const url = window.URL.createObjectURL(\r\n new Blob([blob]),\r\n );\r\n const link = document.createElement('a');\r\n link.href = url;\r\n link.setAttribute(\r\n 'download',\r\n `ccp-data-${date}.csv`,\r\n );\r\n // Append to html link element page\r\n document.body.appendChild(link);\r\n // Start download\r\n link.click();\r\n // Clean up and remove the link\r\n link.parentNode.removeChild(link);\r\n } catch (e) {\r\n if (e instanceof AuthenticationError)\r\n throw e;\r\n redirectToErrorPage(history);\r\n }\r\n}","import React from 'react';\r\nimport { SEARCH_RESULT_OPTIONS } from 'pages/utils/common';\r\n\r\nconst SearchResultOptions = ({ changeHandler }) => {\r\n\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n );\r\n}\r\n\r\nexport default SearchResultOptions;","import React, { useEffect, useState } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { resetAllSearchData, setSelectAll as setSelectAllAction } from \"state/actions/searchActions\";\r\nimport { useHistory } from \"react-router\";\r\nimport { downloadLawyers } from \"services/DownloadService\";\r\nimport { post } from 'services/ApiService';\r\nimport { reduceSelections } from '../utils/reduceSelections';\r\nimport { spinnerChangedAction } from \"state/actions/spinnerActions\"\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport SearchResultOptions from 'pages/Search/SearchResultOptions';\r\n\r\nexport const SearchResultHeader = ({ print, showParentAlertOverlay, changeHandler, clearHandler }) => {\r\n const currentPage = useSelector(state => state.search.searchPage);\r\n const mainData = useSelector(state => state.search.currentMainResults);\r\n const allData = useSelector(state => state.search.allMainResults);\r\n const [selectAll, setSelectAll] = useState(false);\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const userInfo = useSelector(state => state.home.userInfo);\r\n const showAlertButton = !userInfo?.Sub?.startsWith('TempUser');\r\n\r\n useEffect(() => {\r\n if (mainData.length > 0 && mainData.length === mainData.filter(item => item.checked === true).length) {\r\n setSelectAll(true);\r\n } else {\r\n setSelectAll(false);\r\n }\r\n }, [mainData]);\r\n const isToolbarActive = mainData.filter(item => item.checked).length > 0 || selectAll;\r\n const onChangeSelectAll = e => {\r\n setSelectAll(e.target.checked);\r\n dispatch(setSelectAllAction(e.target.checked));\r\n };\r\n const downloadCsv = e => {\r\n dispatch(spinnerChangedAction(true));\r\n const lawyerIds = mainData.filter(lawyer => lawyer.checked).map(lawyer => lawyer.lawyerId).join(\",\");\r\n downloadLawyers(lawyerIds).catch(error => logAndRedirectToErrorPage(error, history)).finally(() => dispatch(spinnerChangedAction(false)));\r\n }\r\n const viewCheckedOnChange = () => {\r\n let lastIndex = currentPage * 100;\r\n let firstIndex = lastIndex - 100;\r\n let lawyerIds = [];\r\n if (selectAll) {\r\n lawyerIds = mainData.slice(firstIndex, lastIndex).map(item => item.lawyerId);\r\n let path = `/search/readchecked`;\r\n let queryString = `lids=${lawyerIds}`;\r\n history.push({ pathname: path, search: queryString });\r\n return;\r\n }\r\n lawyerIds = mainData.slice(firstIndex, lastIndex).filter(item => item.checked).map(item => item.lawyerId);\r\n let path = `/search/readchecked`;\r\n let queryString = `lids=${lawyerIds}`;\r\n history.push({ pathname: path, search: queryString });\r\n };\r\n const processingParentCompanies = () => {\r\n let showWarning = false;\r\n let parentCompaniesList = [];\r\n let checked = mainData.filter(item => item.checked)\r\n let deduped = checked.filter((v, i, a) => a.findIndex(t => (t.fkParentCompany === v.fkParentCompany)) === i)\r\n let sorted = deduped.sort((a, b) => (a.company > b.company) ? 1 : -1)\r\n if (sorted.length > 100) {\r\n sorted = reduceSelections(sorted, 100);\r\n showWarning = true;\r\n }\r\n sorted.map(item => parentCompaniesList.push(item.fkParentCompany));\r\n post('/api/Alert/getAlertsPresent', parentCompaniesList.join(','))\r\n .then(data => {\r\n showParentAlertOverlay(data, sorted, showWarning)\r\n dispatch(spinnerChangedAction(false));\r\n });\r\n };\r\n const onCreateAlertClicked = () => {\r\n dispatch(spinnerChangedAction(true));\r\n setTimeout(() => {\r\n processingParentCompanies();\r\n }, 100);\r\n };\r\n return (\r\n <>\r\n
    \r\n
      \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    • \r\n
    • \r\n
    • \r\n
    • \r\n {showAlertButton && (\r\n
    • \r\n
    • \r\n )}\r\n
    • \r\n \r\n
    • \r\n
    • \r\n \r\n
    • \r\n
    • \r\n \r\n
    • \r\n \r\n {/*
    • \r\n
    • \r\n
    • \r\n
    • \r\n {mainData && mainData.length > 0 && (\r\n \r\n \r\n \r\n )}\r\n\r\n
    • \r\n
    • */}\r\n
    \r\n
    \r\n
    Viewing {mainData ? mainData.length : 0} Results
    \r\n \r\n );\r\n};\r\n","export const reduceSelections = (selections, limit) => { \r\n return selections.slice(0, limit);\r\n}","import React from \"react\";\r\nconst NoRecordFound = () => {\r\n return
    No Record Found.
    ;\r\n};\r\nexport default NoRecordFound;","import React from \"react\";\r\nimport { Link } from 'react-router-dom';\r\n\r\nconst SearchResultListItem = (props) => {\r\n const onChange = (event, id) => {\r\n props.checkBoxOnChange(id, event.target.checked)\r\n }\r\n\r\n return (<>\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n onChange(e, props.item.lawyerId)}\r\n checked={props.item.checked == true}/>\r\n \r\n {props?.item?.company}\r\n
    \r\n
    \r\n {props?.item?.subsidiary}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {props?.item?.fName + \" \" + props?.item?.lName + \" \" + props?.item?.suffix}\r\n {props?.item?.title} \r\n
    \r\n
    \r\n
    \r\n
    {props?.item?.city}
    \r\n
    {props?.item?.lookupStateProvince}
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\nexport default SearchResultListItem;","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from \"react-redux\";\r\nimport PAGINATION_ACTION from \"pages/utils/common\";\r\n\r\nconst PaginationV1 = ({ totalRecords, pageSize, paginate, setPage, paginationAction }) => { \r\n const currentPage = useSelector(state => state.search.searchPage);\r\n const totalPages = Math.ceil(totalRecords / pageSize);\r\n const PagesLimit = totalPages < 11 ? totalPages : 11;\r\n const handlePageNumbers = (startingPage, endingPage) => {\r\n const pages = [];\r\n for (let i = startingPage; i <= endingPage; i++) {\r\n pages.push(i);\r\n }\r\n return pages;\r\n }\r\n const [selectedIndex, setSelectedIndex] = useState(0);\r\n const [pageNumbers, setPageNumbers] = useState(handlePageNumbers(1, (totalPages <= PagesLimit ? totalPages : PagesLimit)));\r\n useEffect(() => {\r\n if (currentPage == 1) {\r\n setPageNumbers(handlePageNumbers(1, (totalPages <= PagesLimit ? totalPages : PagesLimit)));\r\n selectedPage(1);\r\n }\r\n else if (paginationAction == PAGINATION_ACTION.selectPage) {\r\n if (setPage <= 6) {\r\n setSelectedIndex(setPage - 1);\r\n }\r\n else if (setPage - 5 > 1 || setPage + 5 < totalPages) {\r\n setSelectedIndex(5);\r\n }\r\n updatePageNumbers(setPage);\r\n }\r\n }, [totalRecords, currentPage])\r\n const updatePageNumbers = (selectedPage) => {\r\n const startingPage = selectedPage <= 6 ? 1 : (selectedPage - 5 >= 1 ? (selectedPage - 5) : 1);\r\n const endingPage = selectedPage <= 6 ? PagesLimit : (selectedPage + 5 <= totalPages ? (selectedPage + 5) : totalPages);\r\n // process page numbers\r\n setPageNumbers(handlePageNumbers(startingPage, endingPage));\r\n }\r\n const nextPage = (page) => {\r\n let newIndex = selectedIndex;\r\n if (page <= 6 || page > totalPages - 5) {\r\n newIndex = selectedIndex + 1;\r\n }\r\n else if (page + 5 <= totalPages) {\r\n newIndex = 5;\r\n } else {\r\n newIndex = selectedIndex + 1;\r\n }\r\n if ((page - 5 >= 1) && (page + 5 <= totalPages)) {\r\n // process page numbers\r\n updatePageNumbers(page);\r\n }\r\n\r\n //paginate to selected page\r\n paginate(page, PAGINATION_ACTION.nextPage);\r\n setSelectedIndex(newIndex);\r\n }\r\n const prevPage = (page) => {\r\n let newIndex = selectedIndex;\r\n if (page <= 5 || page > totalPages - 5) {\r\n newIndex = selectedIndex - 1;\r\n }\r\n else if (page - 5 >= 1) {\r\n newIndex = 5;\r\n\r\n } else {\r\n newIndex = selectedIndex - 1;\r\n }\r\n if ((page - 5 >= 1) && (page + 5 <= totalPages)) {\r\n // process page numbers\r\n updatePageNumbers(page);\r\n }\r\n //paginate to selected page\r\n paginate(page, PAGINATION_ACTION.PrevPage);\r\n setSelectedIndex(newIndex);\r\n }\r\n const selectedPage = (page) => {\r\n paginate(page, PAGINATION_ACTION.selectPage);\r\n }\r\n return (totalPages > 1 ?\r\n :
    \r\n );\r\n}\r\nexport default PaginationV1;","import React, { useState } from \"react\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport NoRecordFound from 'components/NoRecordFound';\r\nimport SearchResultListItem from './SearchResultListItem';\r\nimport PaginationV1 from './PaginationV1';\r\nimport { setSearchPage, selectSearchItem } from \"state/actions/searchActions\";\r\nimport { scrollToTop } from '../../utils/scrollToTop';\r\n\r\nexport const SearchResultDetail = ({ pageSize, isPrinting, sortBy}) => { \r\n const currentPage = useSelector(state => state.search.searchPage);\r\n const dispatch = useDispatch();\r\n const currentMainResults = useSelector(state => state.search.currentMainResults);\r\n const [setPage, setSelectedPage] = useState(0);\r\n const [paginationAction, setPaginationAction] = useState('');\r\n let lastIndex = currentPage * pageSize;\r\n let firstIndex = lastIndex - pageSize;\r\n let filteredResults = currentMainResults.slice(firstIndex, lastIndex);\r\n if (isPrinting) {\r\n filteredResults = currentMainResults.filter(item => item.checked);\r\n }\r\n const paginate = (pagNumber, paginationAction) => {\r\n dispatch(setSearchPage(pagNumber));\r\n setSelectedPage(pagNumber);\r\n setPaginationAction(paginationAction);\r\n scrollToTop(true);\r\n };\r\n const checkBoxOnChange = async (lawyerId, checked) => {\r\n dispatch(selectSearchItem(lawyerId, checked));\r\n }\r\n return (\r\n
    \r\n {\r\n (currentMainResults && currentMainResults.length > 0) ?\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Company\r\n \r\n
    \r\n
    \r\n Subsidiary\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Name\r\n
    \r\n
    \r\n
    \r\n
    City
    \r\n
    State
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n {filteredResults.map(fr => (\r\n \r\n\r\n ))}\r\n \r\n
    \r\n \r\n : \r\n }\r\n
    );\r\n};\r\n\r\n\r\n","import React from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport _ from \"lodash\";\r\nimport { filterMainResultsByLawyerIds } from \"state/actions/searchActions\";\r\nimport color from \"../../utils/color\";\r\n\r\nconst CitiesResultsBi = ({isOverlay = false}) => {\r\n const stats = useSelector(state => state.search.cityBiData);\r\n let data = stats;\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n let top = 5;\r\n if(!isOverlay){\r\n data = _.take(stats, top);\r\n }\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().search.currentMainResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.city === legendItem.text).map(item => item.lawyerId);\r\n dispatch(filterMainResultsByLawyerIds(lawyerIds));\r\n }\r\n }\r\n\r\n return (\r\n \r\n item.value)}\r\n labels={data.map(item => item.data)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n ref={registerTestObject(BI.PSF_COMPANY_CITIES_CHART)}\r\n backgroundColors={[...color(data.length)]}/>\r\n
    \r\n );\r\n};\r\nexport default CitiesResultsBi;\r\n","import React from 'react';\r\nimport _ from \"lodash\";\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { filterMainResultsByLawyerIds } from \"state/actions/searchActions\";\r\nimport color from \"utils/color\";\r\n\r\nconst StatesResultsBi = ({ isOverlay = false }) => {\r\n const stats = useSelector(state => state.search.statesBiData)\r\n let data = stats;\r\n if(!isOverlay){\r\n data = _.take(stats, 5);\r\n }\r\n const store = useStore();\r\n const dispatch = useDispatch();\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().search.currentMainResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.lookupStateProvince === legendItem.text).map(item => parseInt(item.lawyerId));\r\n dispatch(filterMainResultsByLawyerIds(lawyerIds));\r\n }\r\n }\r\n return (\r\n \r\n item.value)}\r\n labels={data.map(item => item.data)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n ref={registerTestObject(BI.PSF_COMPANY_STATES_CHART)}\r\n backgroundColors={[...color(data.length)]}/>\r\n
    \r\n );\r\n};\r\nexport default StatesResultsBi;\r\n","export const getLawyerCount = (currentYearsAdmitedtoBarResults, top, sorted = true) => {\r\n\r\n let Years = currentYearsAdmitedtoBarResults.map(item => ({ attbr: item.attbr, relevance: item.relevance }));\r\n\r\n let result = [];\r\n Years.reduce(function (res, value) {\r\n if (!res[value.attbr]) {\r\n res[value.attbr] = { year: value.attbr, relevance: 0 };\r\n result.push(res[value.attbr])\r\n }\r\n res[value.attbr].relevance += value.relevance;\r\n return res;\r\n }, {});\r\n\r\n if (sorted) result.sort((a, b) => b.relevance - a.relevance);\r\n\r\n if (top > 0)\r\n return result.slice(0, top);\r\n else\r\n return result;\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { getLawyerCount } from 'pages/utils/lawyerYATBCount';\r\nimport { filterMainResultsByLawyerIds } from \"state/actions/searchActions\";\r\nimport color from \"../../utils/color\";\r\nimport { createLoadingSelector } from \"../../state/selectors/loadingSelector\";\r\nimport NoRecordFound from \"../../components/NoRecordFound\";\r\n\r\n\r\nconst YearAdmittedToBarSRPBI = ({ isOverlay = false }) => {\r\n const [stats, setStats] = useState([]);\r\n const currentYearsAdmittedBarResults = useSelector(state => state.search.currentYearsAdmitedtoBarResults);\r\n const store = useStore();\r\n const dispatch = useDispatch();\r\n const loadingSelector = createLoadingSelector(['YEARSADMITEDTOBAR_DATA_BY_SEARCH']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n useEffect(() => {\r\n if (currentYearsAdmittedBarResults) {\r\n let top = 5;\r\n if(isOverlay)\r\n top = 0;\r\n let resultTop = getLawyerCount(currentYearsAdmittedBarResults, top, true);\r\n setStats(resultTop);\r\n }\r\n }, [currentYearsAdmittedBarResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().search.currentYearsAdmitedtoBarResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.attbr === legendItem.text).map(item => parseInt(item.lid));\r\n dispatch(filterMainResultsByLawyerIds(lawyerIds));\r\n }\r\n }\r\n return (\r\n
    \r\n {loading && }\r\n {!loading && stats.length > 0 && item.relevance)}\r\n labels={stats.map(item => item.year)}\r\n ref={registerTestObject(BI.PSF_YEARS_ADMITTED_TO_BAR_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]}/>\r\n }\r\n {!loading && !stats.length && }\r\n
    \r\n );\r\n};\r\nexport default YearAdmittedToBarSRPBI;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport Chart from \"chart.js\";\r\nimport { LABEL_HEIGHT } from \"../../pages/utils/common\";\r\nimport { wrapLabel } from \"./wrapLabel\";\r\n\r\nclass HorizontalBarchartComponent extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.chartRef = React.createRef();\r\n }\r\n\r\n buildChart = () => {\r\n const myChartRef = this.chartRef.current.getContext(\"2d\");\r\n this.chart = new Chart(myChartRef, {\r\n type: \"horizontalBar\",\r\n data: {\r\n //Bring in data\r\n labels: this.props.labels,\r\n datasets: [\r\n {\r\n label: this.props.label,\r\n data: this.props.data,\r\n backgroundColor: this.props.backgroundColors,\r\n },\r\n ],\r\n },\r\n options: {\r\n legend: {\r\n display: false,\r\n },\r\n elements: {\r\n arc: {\r\n borderWidth: 0\r\n }\r\n },\r\n hover: {\r\n onHover: function (e) {\r\n var point = this.getElementAtEvent(e);\r\n if (point.length) e.target.style.cursor = 'pointer';\r\n else e.target.style.cursor = 'default';\r\n }\r\n },\r\n beginAtZero: true,\r\n maintainAspectRatio: false,\r\n scales: {\r\n xAxes: [{\r\n ticks: {\r\n beginAtZero: true,\r\n callback: function (value) { if (value % 1 === 0) { return value; } }\r\n }\r\n }],\r\n yAxes: [{\r\n ticks: {\r\n callback: function (label) {\r\n return wrapLabel(label, 45);\r\n }\r\n }\r\n }]\r\n }\r\n },\r\n });\r\n };\r\n chartClick = (evt) => {\r\n let activePoints = this.chart.getElementsAtEvent(evt);\r\n if (activePoints[0]) {\r\n let chartData = activePoints[0]['_chart'].config.data;\r\n let idx = activePoints[0]['_index'];\r\n let label = chartData.labels[idx];\r\n this.props.legendCallBack(evt, { text: label })\r\n\r\n }\r\n };\r\n\r\n componentDidUpdate() {\r\n if (this.chart != null) {\r\n this.chart.destroy();\r\n }\r\n if (this.props.labels.length) {\r\n let factor = this.props.labels.length == 1 ? LABEL_HEIGHT.labelLargeHeight : this.props.labels.length <= 5 ? LABEL_HEIGHT.labelMediumHeight : LABEL_HEIGHT.labelSmallHeight;\r\n document.getElementById('myChart').style.height = this.props.labels.length * factor + 'px';\r\n this.buildChart();\r\n this.chart.update();\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n
    \r\n \r\n
    \r\n
    \r\n {this.props.labels.map((item, i) => (\r\n this.props.legendCallBack(evt, { text: item })}\r\n >\r\n
    \r\n {item}\r\n
    \r\n ))}\r\n
    \r\n\r\n \r\n );\r\n }\r\n}\r\n\r\nHorizontalBarchartComponent.propTypes = {\r\n label: PropTypes.string.isRequired,\r\n labels: PropTypes.array.isRequired,\r\n data: PropTypes.array.isRequired,\r\n backgroundColors: PropTypes.array.isRequired,\r\n}\r\n\r\nexport const HorizontalBarchart = HorizontalBarchartComponent;\r\n","import _ from 'lodash';\r\n\r\nexport const lawyerCount = (currentMainResults, filter, top, sorted = true) => {\r\n\r\n let resultArr = [];\r\n\r\n if (currentMainResults != null) {\r\n\r\n\r\n for (let i = 0; i < currentMainResults.length; i++) {\r\n\r\n let sc = null;\r\n if (filter === \"lookupStateProvince\") {\r\n sc = currentMainResults[i].lookupStateProvince;\r\n }\r\n else if (filter === \"city\") {\r\n sc = currentMainResults[i].city;\r\n }\r\n else {\r\n sc = currentMainResults[i].lookupStateProvince;\r\n }\r\n\r\n let flag = 0;\r\n //checking whether the lp is already present in our new array\r\n for (let j = 0; j < resultArr.length; j++) {\r\n if (resultArr[j].data === sc) {\r\n resultArr[j].value += 1;\r\n flag = 1;\r\n break;\r\n }\r\n }\r\n\r\n if (flag === 0) {\r\n resultArr.push({\r\n data: sc,\r\n value: 1\r\n });\r\n }\r\n }\r\n }\r\n \r\n let resultArrSorted = resultArr;\r\n if (sorted) resultArrSorted = _.orderBy(resultArr, ['value'], ['desc']);\r\n\r\n if (top > 0) {\r\n let resultArrSortedfirstX = _.take(resultArrSorted, top);\r\n return resultArrSortedfirstX;\r\n }\r\n else\r\n {\r\n return resultArrSorted\r\n }\r\n \r\n}","export const getLawyerPACount = (currentPracticeAreasResults, top, sorted = true) => {\r\n\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.desc);\r\n\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n\r\n let result = Object.entries(occurrences).map(([desc, count]) => ({ desc, count }));\r\n\r\n if (sorted) result.sort((a, b) => b.count - a.count);\r\n\r\n if (top > 0)\r\n return result.slice(0, top);\r\n else\r\n return result;\r\n}","export const getLawyerCollegeCount = (currentCollegesResult, top, sorted = true) => {\r\n let colleges = currentCollegesResult.map(a => a.attbr);\r\n let occurrences = {};\r\n for (let i = 0, j = colleges.length; i < j; i++) {\r\n occurrences[colleges[i]] = (occurrences[colleges[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([attbr, count]) => ({ college:attbr, count }));\r\n if (sorted) result.sort((a, b) => b.count - a.count);\r\n\r\n if (top > 0)\r\n return result.slice(0, top);\r\n else\r\n return result;\r\n}","import React, { useState, useEffect } from 'react';\r\nimport { useSelector } from \"react-redux\";\r\nimport PAGINATION_ACTION from \"pages/utils/common\";\r\n\r\nconst PaginationBarChartV1 = ({ totalRecords, pageSize, paginate, setPage, paginationAction }) => { \r\n const currentPage = useSelector(state => state.search.barChartPage);\r\n const totalPages = Math.ceil(totalRecords / pageSize);\r\n const PagesLimit = totalPages < 11 ? totalPages : 11;\r\n const handlePageNumbers = (startingPage, endingPage) => {\r\n const pages = [];\r\n for (let i = startingPage; i <= endingPage; i++) {\r\n pages.push(i);\r\n }\r\n return pages;\r\n }\r\n const [selectedIndex, setSelectedIndex] = useState(0);\r\n const [pageNumbers, setPageNumbers] = useState(handlePageNumbers(1, (totalPages <= PagesLimit ? totalPages : PagesLimit)));\r\n useEffect(() => {\r\n if (currentPage == 1) {\r\n setPageNumbers(handlePageNumbers(1, (totalPages <= PagesLimit ? totalPages : PagesLimit)));\r\n selectedPage(1);\r\n }\r\n else if (paginationAction == PAGINATION_ACTION.selectPage) {\r\n if (setPage <= 6) {\r\n setSelectedIndex(setPage - 1);\r\n }\r\n else if (setPage - 5 > 1 || setPage + 5 < totalPages) {\r\n setSelectedIndex(5);\r\n }\r\n updatePageNumbers(setPage);\r\n }\r\n }, [totalRecords, currentPage])\r\n const updatePageNumbers = (selectedPage) => {\r\n const startingPage = selectedPage <= 6 ? 1 : (selectedPage - 5 >= 1 ? (selectedPage - 5) : 1);\r\n const endingPage = selectedPage <= 6 ? PagesLimit : (selectedPage + 5 <= totalPages ? (selectedPage + 5) : totalPages);\r\n // process page numbers\r\n setPageNumbers(handlePageNumbers(startingPage, endingPage));\r\n }\r\n const nextPage = (page) => {\r\n let newIndex = selectedIndex;\r\n if (page <= 6 || page > totalPages - 5) {\r\n newIndex = selectedIndex + 1;\r\n }\r\n else if (page + 5 <= totalPages) {\r\n newIndex = 5;\r\n } else {\r\n newIndex = selectedIndex + 1;\r\n }\r\n if ((page - 5 >= 1) && (page + 5 <= totalPages)) {\r\n // process page numbers\r\n updatePageNumbers(page);\r\n }\r\n\r\n //paginate to selected page\r\n paginate(page, PAGINATION_ACTION.nextPage);\r\n setSelectedIndex(newIndex);\r\n }\r\n const prevPage = (page) => {\r\n let newIndex = selectedIndex;\r\n if (page <= 5 || page > totalPages - 5) {\r\n newIndex = selectedIndex - 1;\r\n }\r\n else if (page - 5 >= 1) {\r\n newIndex = 5;\r\n\r\n } else {\r\n newIndex = selectedIndex - 1;\r\n }\r\n if ((page - 5 >= 1) && (page + 5 <= totalPages)) {\r\n // process page numbers\r\n updatePageNumbers(page);\r\n }\r\n //paginate to selected page\r\n paginate(page, PAGINATION_ACTION.PrevPage);\r\n setSelectedIndex(newIndex);\r\n }\r\n const selectedPage = (page) => {\r\n paginate(page, PAGINATION_ACTION.selectPage);\r\n }\r\n return (totalPages > 1 ?\r\n :
    \r\n );\r\n}\r\nexport default PaginationBarChartV1;","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport color from \"../../utils/color\";\r\nimport { HorizontalBarchart } from \"components/charts/HorizontalBarchart\";\r\nimport { lawyerCount } from '../utils/lawyerCount';\r\nimport { getLawyerCount } from '../utils/lawyerYATBCount';\r\nimport { getLawyerPACount } from '../utils/lawyerPACount';\r\nimport { getLawyerCollegeCount } from '../utils/lawyerCollegeCount';\r\nimport _, { result } from \"lodash\";\r\nimport PaginationBarChartV1 from './PaginationBarChartV1';\r\nimport { setBarChartPage, selectSearchItem } from \"state/actions/searchActions\";\r\nimport { scrollToTop } from '../../utils/scrollToTop';\r\nimport { chartPageSize } from '../utils/common';\r\n\r\nconst SRPAllBIs = ({ currentResult, selectedBIIndex, filterByLawyerIds, isPieChart, currentBarChartPage }) => {\r\n const [stats, setStats] = useState([]);\r\n const [rstAll, setrstAll] = useState([]); \r\n const [BIIndexs, setBIIndexs] = useState([]);\r\n const [setPage, setSelectedPage] = useState(0);\r\n const [paginationAction, setPaginationAction] = useState('');\r\n\r\n const dispatch = useDispatch();\r\n const paginate = (pagNumber) => {\r\n dispatch(setBarChartPage(pagNumber));\r\n setSelectedPage(pagNumber);\r\n setPaginationAction(paginationAction);\r\n };\r\n\r\n const pageSize = chartPageSize;\r\n\r\n useEffect(() => {\r\n if (currentResult) {\r\n let resultAll = [];\r\n let resultPage = [];\r\n let resultNotSorted = [];\r\n let indexs = [];\r\n\r\n switch (selectedBIIndex) {\r\n case 0:\r\n resultAll = lawyerCount(currentResult, \"lookupStateProvince\", 0);\r\n /* keep the code for Bubble Chart\r\n resultNotSorted = lawyerCount(currentResult, \"lookupStateProvince\", 0, false);\r\n resultAll.forEach((item, index) => {\r\n indexs.push(resultNotSorted.findIndex(i => i.data == item.data));\r\n });*/\r\n break;\r\n case 1:\r\n resultAll = lawyerCount(currentResult, \"city\", 0);\r\n /* keep the code for Bubble Chart\r\n resultNotSorted = lawyerCount(currentResult, \"city\", 0, false);\r\n resultAll.forEach((item, index) => {\r\n indexs.push(resultNotSorted.findIndex(i => i.data == item.data));\r\n });*/\r\n break;\r\n case 2:\r\n resultAll = getLawyerCount(currentResult, 0);\r\n /* keep the code for Bubble Chart\r\n resultNotSorted = getLawyerCount(currentResult, 0, false);\r\n resultAll.forEach((item, index) => {\r\n indexs.push(resultNotSorted.findIndex(i => i.year == item.year));\r\n });*/\r\n break;\r\n case 3:\r\n resultAll = getLawyerPACount(currentResult, 0);\r\n /* keep the code for Bubble Chart\r\n resultNotSorted = getLawyerPACount(currentResult, 0, false);\r\n resultAll.forEach((item, index) => {\r\n indexs.push(resultNotSorted.findIndex(i => i.desc == item.desc));\r\n });*/\r\n \r\n break;\r\n case 4:\r\n resultAll = getLawyerCollegeCount(_.cloneDeep(currentResult), 0);\r\n /* keep the code for Bubble Chart\r\n resultNotSorted = getLawyerCollegeCount(_.cloneDeep(currentResult), 0, false);\r\n resultAll.forEach((item, index) => {\r\n indexs.push(resultNotSorted.findIndex(i => i.college == item.college));\r\n });*/\r\n \r\n break;\r\n default:\r\n resultAll = []; resultPage = [];\r\n }\r\n\r\n if (!isPieChart) {\r\n let lastIndex = currentBarChartPage * pageSize;\r\n let firstIndex = lastIndex - pageSize;\r\n resultPage = resultAll.slice(firstIndex, lastIndex);\r\n setStats(resultPage);\r\n }\r\n else {\r\n setStats(resultAll);\r\n } \r\n setrstAll(resultAll);\r\n setBIIndexs(indexs);\r\n }\r\n let ele = document.getElementById(\"BIOverlayBody\");\r\n if (ele) ele.scrollTo(0, 0);\r\n\r\n }, [currentResult, currentBarChartPage]);\r\n\r\n return (\r\n \r\n \r\n {!isPieChart &&\r\n
    \r\n \r\n
    \r\n }\r\n\r\n {isPieChart && selectedBIIndex == 0 && item.value)}\r\n labels={stats.map(item => item.data)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_COMPANY_STATES_CHART)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 0 && item.value)}\r\n labels={stats.map(item => item.data)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_COMPANY_STATES_CHART)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {isPieChart && selectedBIIndex == 1 && item.value)}\r\n labels={stats.map(item => item.data)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_COMPANY_CITIES_CHART)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 1 && item.value)}\r\n labels={stats.map(item => item.data)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_COMPANY_CITIES_CHART)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {isPieChart && selectedBIIndex == 2 && item.relevance)}\r\n labels={stats.map(item => item.year)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_YEARS_ADMITTED_TO_BAR_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 2 && item.relevance)}\r\n labels={stats.map(item => item.year)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_YEARS_ADMITTED_TO_BAR_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {isPieChart && selectedBIIndex == 3 && item.count)}\r\n labels={stats.map(item => item.desc)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 3 && item.count)}\r\n labels={stats.map(item => item.desc)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {isPieChart && selectedBIIndex == 4 && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 4 &&\r\n item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(BI.PSF_OVERLAY_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n \r\n );\r\n};\r\nexport default SRPAllBIs;\r\n","import React, { useRef, useEffect, useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport SRPAllBIs from \"./SRPAllBIs\";\r\nimport { BI_TITLE } from \"pages/utils/common\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nconst SRPBIOverlay = ({ currentResult, selectedBIIndex, isVisible, closeDialog, filterData, chartType }) => {\r\n\r\n const currentBarChartPage = useSelector(state => state.search.barChartPage);\r\n\r\n useEffect(() => {\r\n reSizeBI();\r\n window.addEventListener('resize', (event) => {\r\n reSizeBI();\r\n });\r\n });\r\n\r\n const reSizeBI = () => {\r\n let headerEle = document.getElementById(\"BIOverlayHeader\");\r\n if (headerEle != null) {\r\n let section = document.getElementById(\"BIOverlaySection\");\r\n let header = headerEle.clientHeight;\r\n let margin = window.getComputedStyle(section)['marginTop'].replace('px', '');\r\n let bodyHeight = window.innerHeight - (margin + header != 0 ? header : 49);\r\n bodyHeight = margin == 0 ? bodyHeight : bodyHeight * 0.9;\r\n document.getElementById(\"BIOverlayBody\").style.height = bodyHeight + 'px';\r\n }\r\n }\r\n\r\n let isPieChart = true;\r\n if (chartType != \"PieChart\") {\r\n isPieChart = false;\r\n\r\n }\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    {BI_TITLE[selectedBIIndex]}
    \r\n \r\n
    \r\n\r\n {!isPieChart &&\r\n
    \r\n \r\n
    \r\n }\r\n\r\n {isPieChart &&\r\n
    \r\n \r\n
    \r\n }\r\n\r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default SRPBIOverlay;","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { getLawyerPACount } from 'pages/utils/lawyerPACount';\r\nimport { filterMainResultsByLawyerIds } from \"state/actions/searchActions\";\r\nimport color from \"../../utils/color\";\r\nimport { createLoadingSelector } from \"../../state/selectors/loadingSelector\";\r\nimport NoRecordFound from \"../../components/NoRecordFound\";\r\n\r\nconst PracticeAreasResultsBI = ({ isOverlay = false }) => {\r\n const currentPracticeAreasResults = useSelector(state => state.search.currentPracticeAreasResults);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n const [stats, setStats] = useState([]);\r\n const loadingSelector = createLoadingSelector(['PRACTICEAREA_DATA_BY_SEARCH']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentPracticeAreasResults) {\r\n let top = 5;\r\n if(isOverlay)\r\n top = 0;\r\n let result = getLawyerPACount(currentPracticeAreasResults, top, true);\r\n setStats(result);\r\n }\r\n }\r\n getStats();\r\n }, [currentPracticeAreasResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().search.currentPracticeAreasResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.desc === legendItem.text).map(item => parseInt(item.lId));\r\n dispatch(filterMainResultsByLawyerIds(lawyerIds));\r\n }\r\n }\r\n\r\n return (\r\n
    \r\n {loading && }\r\n {!loading && stats.length > 0 && item.count)}\r\n labels={stats.map(item => item.desc)}\r\n ref={registerTestObject(BI.PSF_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]}/>\r\n }\r\n {!loading && !stats.length && }\r\n
    \r\n );\r\n};\r\nexport default PracticeAreasResultsBI;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport _ from \"lodash\";\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { filterMainResultsByLawyerIds } from \"state/actions/searchActions\"\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { getLawyerCollegeCount } from 'pages/utils/lawyerCollegeCount';\r\nimport color from \"utils/color\";\r\nimport { createLoadingSelector } from \"../../state/selectors/loadingSelector\";\r\nimport NoRecordFound from \"../../components/NoRecordFound\";\r\n\r\nconst CollegeBi = ({ isOverlay = false }) => {\r\n const currentCollegesResults = useSelector(state => state.search.currentYearsCollegesResults);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n const [stats, setStats] = useState([]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().search.currentYearsCollegesResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.attbr === legendItem.text).map(item => item.lId);\r\n dispatch(filterMainResultsByLawyerIds(lawyerIds));\r\n }\r\n }\r\n const loadingSelector = createLoadingSelector(['COLLEGES_DATA_BY_SEARCH']);\r\n const loading = useSelector(state => loadingSelector(state));\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentCollegesResults) {\r\n let top = 5;\r\n if(isOverlay)\r\n top = 0;\r\n let result = getLawyerCollegeCount(currentCollegesResults, top, true);\r\n setStats(result);\r\n }\r\n }\r\n\r\n getStats();\r\n }, [currentCollegesResults]);\r\n return (\r\n \r\n {loading && }\r\n {!loading && stats.length > 0 && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(BI.PSF_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]}/>}\r\n {!loading && !stats.length && }\r\n \r\n );\r\n};\r\nexport default CollegeBi;\r\n","import React, { useState, useEffect } from 'react';\r\nimport clsx from 'clsx';\r\nimport UserID from 'components/layout/UserID';\r\nimport EmailAdditionalRecipients from 'common/EmailAdditionalRecipients/EmailAdditionalRecipients';\r\nimport { useSelector } from 'react-redux';\r\n\r\nconst CreateParentAlertOverlay = ({ isVisible, selections, saveAlert, parentCompanyAlertsPresent, maxWarningCompanies }) => {\r\n\r\n const [checkedItems, setCheckedItems] = useState(selections); \r\n const [isDialogVisible, setDialogVisible] = useState(false);\r\n const [isAdditionalRecipientsDisabled, setAdditionalRecipientsDisabled] = useState(false);\r\n const [presentCompaniesWarning, setPresentCompaniesWarning] = useState(false);\r\n const [presentCompaniesMessage, setPresentCompaniesMessage] = useState('');\r\n const [maxCompaniesWarning, setMaxCompaniesWarning] = useState(false);\r\n const [maxCompaniesMessage, setMaxCompaniesMessage] = useState('');\r\n const [recipients, setRecipients] = useState('');\r\n const userInfo = useSelector(state => state.home.userInfo);\r\n\r\n useEffect(() => {\r\n if (parentCompanyAlertsPresent.length > 0) {\r\n let presentSelections = [];\r\n let presentSelectionsCompanies = [];\r\n parentCompanyAlertsPresent.map(i => presentSelections.push(i.parentCompanyId));\r\n let presentSelectionsFromSelections = selections.filter(i => presentSelections.includes(i.fkParentCompany));\r\n presentSelectionsFromSelections.map(i => presentSelectionsCompanies.push(i.company));\r\n selections = selections.filter(s => presentSelections.every(ps => ps !== s.fkParentCompany));\r\n setPresentCompaniesWarning(true);\r\n setPresentCompaniesMessage('You have already created Alert(s) for the following: ' + presentSelectionsCompanies.join('; '));\r\n }\r\n setMaxCompaniesWarning(maxWarningCompanies);\r\n setMaxCompaniesMessage(maxWarningCompanies ? 'You can only create 100 Alerts at a time. Only your first 100 selections appear above.' : '');\r\n if (selections.length == 0) { setAdditionalRecipientsDisabled(true) }\r\n setCheckedItems(selections);\r\n setDialogVisible(isVisible);\r\n }, [selections, parentCompanyAlertsPresent]);\r\n\r\n const isAnyCompanyChecked = checkedItems.filter(item => item.checked).length > 0;\r\n\r\n const handleChange = (e) => {\r\n setCheckedItems(\r\n checkedItems.map(item => {\r\n if (item.fkParentCompany == e.target.value)\r\n return { ...item, checked: e.target.checked }\r\n return item;\r\n })\r\n )\r\n };\r\n\r\n const closeOverlay = () => {\r\n setRecipients('');\r\n setMaxCompaniesWarning(false);\r\n setMaxCompaniesMessage('');\r\n setPresentCompaniesWarning(false);\r\n setPresentCompaniesMessage('');\r\n setAdditionalRecipientsDisabled(false);\r\n setDialogVisible(false);\r\n document.getElementsByClassName(\"scroll-checkbox-5\")[0].scrollTo(0, 0);\r\n }\r\n\r\n const syncAdditionalRecipients = (emaillist) => {\r\n setRecipients(emaillist)\r\n }\r\n \r\n return (\r\n
    \r\n
    \r\n
    \r\n
    Create Alert(s)
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    Company Alert Name(s)
    \r\n
    {presentCompaniesMessage}
    \r\n
    \r\n
    \r\n
    \r\n { \r\n checkedItems.map(selection => (\r\n
    \r\n \r\n
    \r\n ))\r\n }\r\n
    \r\n

    {maxCompaniesMessage}

    \r\n

    You can deselect any from the above list of choices by removing any checkmark.

    \r\n

    Your selected Company Alert(s) will be sent weekly to your email account at {userInfo.Email}.

    \r\n \r\n

    If you agree with your selections above, please click Save. If you want to add any more selections you can click Cancel and adjust your selections.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default CreateParentAlertOverlay;","import React, { useEffect, useState } from 'react';\r\nimport { useLocation } from \"react-router\";\r\nimport queryString from \"querystring\";\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { resetSearchToInitialState, resetBarChartPage, resetAllSearchData, searchDataRequested, searchDataSortBy, setSearchPage} from \"state/actions/searchActions\";\r\nimport { SearchResultHeader } from './SearchResultHeader';\r\nimport { SearchResultDetail } from './SearchResultDetail';\r\nimport { scrollToTop } from '../../utils/scrollToTop';\r\nimport { reduceSelections } from '../utils/reduceSelections';\r\nimport CitiesResultsBI from \"./CitiesResultsBI\";\r\nimport StatesResultsBI from \"./StatesResultsBI\";\r\nimport YearAdmittedToBarSRPBI from \"./YearsAdmitedtoBarSRPBI\";\r\nimport SRPBIOverlay from \"./SRPBIOverlay\";\r\nimport PracticeAreasResultsBI from \"./PracticeAreasResultsBI\";\r\nimport CollegeBi from \"./CollegesBI\";\r\nimport { filterMainResultsByLawyerIdsAll } from \"state/actions/searchActions\";\r\nimport NoRecordFound from 'components/NoRecordFound';\r\nimport CreateParentAlertOverlay from \"pages/Common/CreateParentAlertOverlay\";\r\nimport { SEARCH_RESULT_OPTIONS } from 'pages/utils/common';\r\nimport { post } from 'services/ApiService';\r\nimport { onLocationChanged } from \"state/actions/locationActions\";\r\n\r\nexport const Search = ({ saveAlert }) => {\r\n\r\n const previousLocation = useSelector(state => state.location.previousLocation);\r\n const [isParentAlertVisible, setParentAlertVisible] = useState(false);\r\n const [maxWarningCompanies, setMaxWarningCompanies] = useState(false);\r\n const [selections, setSelections] = useState([]);\r\n const [parentCompanyAlertsPresent, setParentCompanyAlertsPresent] = useState([]);\r\n const location = useLocation();\r\n const { ...searchCriteria } = queryString.parse(location.search.substring(1));\r\n const dispatch = useDispatch();\r\n const [isPrinting, setIsPrinting] = useState(false);\r\n const [isPieChartVisible, setPieChartVisible] = useState(false);\r\n const [isHorizontalBarVisible, setHorizontalBarVisible] = useState(false);\r\n const [selectedBIIndex, setSelectedBIIndex] = useState(-1);\r\n const [sortBy, setSortBy] = useState(SEARCH_RESULT_OPTIONS.Company_Name_Value);\r\n const [currentResult, setCurrentResult] = useState([]);\r\n const result = useSelector(state => state.search.currentYearsAdmitedtoBarResults);\r\n const resultCity = useSelector(state => state.search.cityBiData);\r\n const resultStates = useSelector(state => state.search.statesBiData);\r\n const resultPA = useSelector(state => state.search.currentPracticeAreasResults);\r\n const resultColleges = useSelector(state => state.search.currentYearsCollegesResults);\r\n const store = useStore();\r\n const showParentAlertOverlay = (data, sorted, showWarning) => {\r\n setParentCompanyAlertsPresent([]);\r\n setMaxWarningCompanies(showWarning);\r\n setSelections(sorted)\r\n setParentCompanyAlertsPresent(data);\r\n setParentAlertVisible(true);\r\n };\r\n\r\n const closeParentAlertOverlay = (e) => {\r\n setParentAlertVisible(false);\r\n setMaxWarningCompanies(false)\r\n }\r\n\r\n const filterData = legendItem => {\r\n const mainCurrentResults = store.getState().search.currentMainResults;\r\n if (mainCurrentResults.length > 0) {\r\n let lawyerIds;\r\n switch (selectedBIIndex) {\r\n case 0:\r\n lawyerIds = mainCurrentResults.filter(item => item.lookupStateProvince === legendItem.text).map(item => item.lawyerId);\r\n break;\r\n case 1:\r\n lawyerIds = mainCurrentResults.filter(item => item.city === legendItem.text).map(item => item.lawyerId);\r\n break;\r\n case 2:\r\n lawyerIds = result.filter(item => item.attbr === legendItem.text).map(item => parseInt(item.lid));\r\n break;\r\n case 3:\r\n lawyerIds = resultPA.filter(item => item.desc === legendItem.text).map(item => parseInt(item.lId));\r\n break;\r\n case 4:\r\n lawyerIds = resultColleges.filter(item => item.attbr === legendItem.text).map(item => item.lId);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n dispatch(filterMainResultsByLawyerIdsAll(lawyerIds, sortBy));\r\n }\r\n setPieChartVisible(false);\r\n setHorizontalBarVisible(false);\r\n setSelectedBIIndex(-1);\r\n }\r\n\r\n const showSRPBIOverlay4Pie = (index) => {\r\n setPieChartVisible(true);\r\n setSelectedBIIndex(index);\r\n const mainCurrentResults = store.getState().search.currentMainResults;\r\n switch (index) {\r\n case 0:\r\n setCurrentResult(mainCurrentResults);\r\n break;\r\n case 1:\r\n setCurrentResult(mainCurrentResults);\r\n break;\r\n case 2:\r\n setCurrentResult(result);\r\n break;\r\n case 3:\r\n setCurrentResult(resultPA);\r\n break;\r\n case 4:\r\n setCurrentResult(resultColleges);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n \r\n }\r\n\r\n const showSRPBIOverlay4Horizontal = (index) => {\r\n setHorizontalBarVisible(true);\r\n setSelectedBIIndex(index);\r\n const mainCurrentResults = store.getState().search.currentMainResults;\r\n switch (index) {\r\n case 0:\r\n setCurrentResult(mainCurrentResults);\r\n break;\r\n case 1:\r\n setCurrentResult(mainCurrentResults);\r\n break;\r\n case 2:\r\n setCurrentResult(result);\r\n break;\r\n case 3:\r\n setCurrentResult(resultPA);\r\n break;\r\n case 4:\r\n setCurrentResult(resultColleges);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n }\r\n\r\n const closeDialog = (e) => {\r\n setPieChartVisible(false);\r\n setHorizontalBarVisible(false);\r\n dispatch(resetBarChartPage());\r\n }\r\n\r\n const print = async e => {\r\n await setIsPrinting(true);\r\n window.print();\r\n const mainCurrentResults = store.getState().search.currentMainResults;\r\n await post('./api/logs', { shortInfo: \"Print\", logInfo: mainCurrentResults.filter(item => item.checked).map(c=>c.lawyerId).toString() })\r\n }\r\n\r\n const onKeyPress = e => {\r\n if (e.ctrlKey && e.keyCode === 80 && !isPrinting) {\r\n e.preventDefault();\r\n print();\r\n }\r\n }\r\n\r\n const changeHandler = (val) => {\r\n dispatch(searchDataSortBy(val)); \r\n setSortBy(val);\r\n }\r\n\r\n const clearHandler = () => {\r\n dispatch(resetAllSearchData(sortBy));\r\n };\r\n useEffect(() => {\r\n //dispatch search data requested action\r\n if(previousLocation === \"/\"){\r\n dispatch(searchDataRequested(searchCriteria));\r\n }\r\n //scroll to top of page\r\n scrollToTop();\r\n const printMq = typeof window !== 'undefined' && window.matchMedia && window.matchMedia('print');\r\n const mqEvent = mqList => {\r\n if (!mqList.matches)\r\n setIsPrinting(mqList.matches)\r\n };\r\n dispatch(onLocationChanged(\"/search\"));\r\n document.onkeydown = onKeyPress;\r\n printMq.addListener(mqEvent);\r\n if (navigator.userAgent.indexOf(\"Firefox\") != -1)\r\n {\r\n window.onafterprint = () => {\r\n setIsPrinting(false)\r\n }\r\n }\r\n return () => {\r\n document.onkeydown = null;\r\n window.onafterprint = null;\r\n printMq.removeListener(mqEvent);\r\n //Commented because we don't need to reset state on component unmount.\r\n // dispatch(resetSearchToInitialState());\r\n }\r\n }, [])\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    STATES

    \r\n {\r\n (resultStates && resultStates.length > 0) ?\r\n \r\n : \r\n }\r\n \r\n
    \r\n
    \r\n

    CITIES

    \r\n {\r\n (resultCity && resultCity.length > 0) ?\r\n \r\n : \r\n }\r\n
    \r\n
    \r\n

    YEARS ADMITTED TO BAR

    \r\n {\r\n
    \r\n \r\n {result && result.length > 0 && <>\r\n

    \r\n showSRPBIOverlay4Pie(2)}>Show More - Pie Chart\r\n

    \r\n

    \r\n showSRPBIOverlay4Horizontal(2)}>Show More - Bar Chart\r\n

    \r\n }\r\n
    \r\n }\r\n
    \r\n
    \r\n

    PRACTICE AREAS

    \r\n {\r\n
    \r\n \r\n {resultPA && resultPA.length > 0 && <>\r\n

    \r\n showSRPBIOverlay4Pie(3)}>Show More - Pie Chart\r\n

    \r\n

    \r\n showSRPBIOverlay4Horizontal(3)}>Show More - Bar Chart\r\n

    \r\n\r\n }\r\n
    \r\n }\r\n
    \r\n
    \r\n

    COLLEGES

    \r\n
    \r\n \r\n {resultColleges && resultColleges.length > 0 && <>\r\n

    \r\n showSRPBIOverlay4Pie(4)}>\r\n Show More - Pie Chart\r\n \r\n

    \r\n

    \r\n showSRPBIOverlay4Horizontal(4)}>\r\n Show More - Bar Chart\r\n \r\n

    \r\n \r\n }\r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {!isPrinting && }\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {isPieChartVisible && }\r\n {isHorizontalBarVisible && }\r\n {isParentAlertVisible && }\r\n
    \r\n );\r\n};\r\n\r\n\r\n","export const COMPANY_DATA_REQUESTED = \"COMPANY_DATA_REQUESTED\";\r\nexport const COMPANY_DATA_LOADED = \"COMPANY_DATA_LOADED\";\r\nexport const COMPANYLAWYERS_DATA_REQUESTED = \"COMPANYLAWYERS_DATA_REQUESTED\";\r\nexport const COMPANYLAWYERS_DATA_LOADED = \"COMPANYLAWYERS_DATA_LOADED\";\r\nexport const FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS = \"FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS\";\r\nexport const LAWYER_DATA_REQUESTED = \"LAWYER_DATA_REQUESTED\";\r\nexport const LAWYER_DATA_LOADED = \"LAWYER_DATA_LOADED\";\r\nexport const UPDATE_COMPANYLAWYERS_DATA = \"UPDATE_COMPANYLAWYERS_DATA\";\r\nexport const COMPANY_COLLEGE_DATA_REQUESTED = \"COMPANY_COLLEGE_DATA_REQUESTED\";\r\nexport const COMPANY_COLLEGE_DATA_LOADED = \"COMPANY_COLLEGE_DATA_LOADED\";\r\nexport const COMPANY_PA_DATA_REQUESTED = \"COMPANY_PA_DATA_REQUESTED\";\r\nexport const COMPANY_PA_DATA_LOADED = \"COMPANY_PA_DATA_LOADED\";\r\nexport const COMPANY_TITLE_DATA_REQUESTED = \"COMPANY_TITLE_DATA_REQUESTED\";\r\nexport const COMPANY_TITLE_DATA_LOADED = \"COMPANY_TITLE_DATA_LOADED\";\r\nexport const PARENTCOMPANY_DATA_REQUESTED = \"PARENTCOMPANY_DATA_REQUESTED\";\r\nexport const PARENTCOMPANY_DATA_LOADED = \"PARENTCOMPANY_DATA_LOADED\";\r\nexport const PARENTCOMPANYLAWYERS_DATA_REQUESTED = \"PARENTCOMPANYLAWYERS_DATA_REQUESTED\";\r\nexport const PARENTCOMPANYLAWYERS_DATA_LOADED = \"PARENTCOMPANYLAWYERS_DATA_LOADED\";\r\nexport const RBSFILINGS_DATA_REQUESTED = \"RBSFILINGS_DATA_REQUESTED\";\r\nexport const RBSFILINGS_DATA_LOADED = \"RBSFILINGS_DATA_LOADED\";\r\nexport const RESET_ALL_READ_DATA = \"RESET_ALL_READ_DATA\";\r\nexport const READ_RESET_INITIAL_STATE = \"READ_RESET_INITIAL_STATE\";\r\n\r\nexport const parentCompanyDataRequested = (payload) => ({\r\n type: PARENTCOMPANY_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const parentCompanyDataLoaded = (payload) => ({\r\n type: PARENTCOMPANY_DATA_LOADED,\r\n payload\r\n});\r\nexport const updateCompanyLawyersData = (payload) => ({\r\n type: UPDATE_COMPANYLAWYERS_DATA,\r\n payload\r\n});\r\nexport const companyDataRequested = (payload) => ({\r\n type: COMPANY_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const companyDataLoaded = (payload) => ({\r\n type: COMPANY_DATA_LOADED,\r\n payload\r\n});\r\nexport const companyLawyersDataRequested = (payload) => ({\r\n type: COMPANYLAWYERS_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const companyLawyersDataLoaded = (payload) => ({\r\n type: COMPANYLAWYERS_DATA_LOADED,\r\n payload\r\n});\r\nexport const parentCompanyLawyersDataRequested = (payload) => ({\r\n type: PARENTCOMPANYLAWYERS_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const parentCompanyLawyersDataLoaded = (payload) => ({\r\n type: PARENTCOMPANYLAWYERS_DATA_LOADED,\r\n payload\r\n});\r\nexport const filterAllCompanyResultsByLawyerIds = (lawyerIds) => ({\r\n type: FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS,\r\n lawyerIds\r\n});\r\nexport const lawyerDataRequested = (payload) => ({\r\n type: LAWYER_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const lawyerDataLoaded = (payload) => ({\r\n type: LAWYER_DATA_LOADED,\r\n payload\r\n});\r\nexport const companyCollegeDataRequested = (parentCompanyId, companyId, lawyerId) => ({\r\n type: COMPANY_COLLEGE_DATA_REQUESTED,\r\n companyId,\r\n lawyerId,\r\n parentCompanyId\r\n});\r\nexport const companyCollegeDataLoaded = (payload) => ({\r\n type: COMPANY_COLLEGE_DATA_LOADED,\r\n payload\r\n});\r\nexport const companyPaDataRequested = (parentCompanyId, companyId, lawyerId) => ({\r\n type: COMPANY_PA_DATA_REQUESTED,\r\n parentCompanyId,\r\n companyId,\r\n lawyerId\r\n});\r\nexport const companyPaDataLoaded = (payload) => ({\r\n type: COMPANY_PA_DATA_LOADED,\r\n payload\r\n});\r\nexport const companyTitleDataRequested = (parentCompanyId, companyId, lawyerId) => ({\r\n type: COMPANY_TITLE_DATA_REQUESTED,\r\n parentCompanyId,\r\n companyId,\r\n lawyerId\r\n});\r\nexport const companyTitleDataLoaded = (payload) => ({\r\n type: COMPANY_TITLE_DATA_LOADED,\r\n payload\r\n});\r\nexport const RBSFilingsDataRequested = (payload) => ({\r\n type: RBSFILINGS_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const RBSFilingsDataLoaded = (payload) => ({\r\n type: RBSFILINGS_DATA_LOADED,\r\n payload\r\n});\r\nexport const resetAllReadData = () => ({\r\n type: RESET_ALL_READ_DATA\r\n});\r\nexport const resetReadToInitialState = () => ({\r\n type: READ_RESET_INITIAL_STATE\r\n})","import React from 'react';\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport _ from \"lodash\";\r\nimport { useLocation } from \"react-router\";\r\nimport queryString from \"querystring\";\r\nimport { resetAllReadData } from \"state/actions/readActions\";\r\nimport { downloadLawyers } from \"services/DownloadService\";\r\nimport { spinnerChangedAction } from \"state/actions/spinnerActions\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { useHistory } from \"react-router\";\r\nimport { post } from 'services/ApiService';\r\n\r\nexport const ReadHeader = ({ isToolbarActive, print, showParentAlertOverlay }) => {\r\n const dispatch = useDispatch();\r\n let history = useHistory();\r\n const location = useLocation();\r\n const { pid } = queryString.parse(location.search.substring(1));\r\n const currentCompanyLawyers = _.values(useSelector(state => state.read.currentCompanyLawyers));\r\n const allCompanyLawyers = _.values(useSelector(state => state.read.allCompanyLawyers));\r\n const companyResult = useSelector(state => state.read.companyResult);\r\n const parentCompanyResult = useSelector(state => state.read.parentCompanyResult);\r\n const userInfo = useSelector(state => state.home.userInfo);\r\n const showAlertButton = !userInfo?.Sub?.startsWith('TempUser');\r\n\r\n const downloadCsv = e => {\r\n dispatch(spinnerChangedAction(true));\r\n const lawyerIds = currentCompanyLawyers.filter(lawyer => lawyer.isChecked).map(lawyer => lawyer.lId).join(\",\");\r\n downloadLawyers(lawyerIds).catch((error) => logAndRedirectToErrorPage(error, history)).finally(() => dispatch(spinnerChangedAction(false)));\r\n }\r\n const processingParentCompanies = () => {\r\n let company = \"\";\r\n if (parentCompanyResult) {\r\n company = parentCompanyResult.currentName;\r\n } else {\r\n company = companyResult.currentName;\r\n }\r\n let parentSelection = [{ 'checked': true, 'company': company, 'fkParentCompany': pid }];\r\n post('/api/Alert/getAlertsPresent', pid)\r\n .then(data => {\r\n showParentAlertOverlay(data, parentSelection)\r\n dispatch(spinnerChangedAction(false));\r\n });\r\n };\r\n const onCreateAlertClicked = () => {\r\n dispatch(spinnerChangedAction(true));\r\n setTimeout(() => {\r\n processingParentCompanies();\r\n }, 100);\r\n };\r\n return (<>\r\n
    \r\n
    \r\n \r\n \r\n */}\r\n
    \r\n
    \r\n );\r\n};\r\n","export function highlightField(resultset, fieldName) {\r\n if (resultset?.fieldsChangedList?.some(x => x === fieldName.toLowerCase()))\r\n return 'highlight-text'\r\n return '';\r\n}","export function showField(resultset, fieldName, fieldValue) {\r\n return fieldValue || resultset?.fieldsChangedList?.some(x => x === fieldName.toLowerCase());\r\n}","import React from 'react';\r\nimport { useSelector } from \"react-redux\";\r\nimport { REPORTS_TYPE } from 'pages/utils/common';\r\n\r\nexport const RBSFilings = ({ ticker }) => {\r\n const rbsfilingsInfo = useSelector(state => state.read.rbsfilingsInfo);\r\n\r\n const url = (rbsfilings) => {\r\n if (rbsfilings) {\r\n return rbsfilings.rootUrl + 'id=' + rbsfilings.userId + \"&date=\" + rbsfilings.date + \"&hash=\" + rbsfilings.hash + \"&tickersymbol=\" + ticker;\r\n }\r\n return \"\";\r\n }\r\n\r\n return (\r\n <>\r\n {REPORTS_TYPE[0]}\r\n \r\n \r\n );\r\n};","import React from 'react';\r\nimport { useSelector } from \"react-redux\";\r\nimport _ from 'lodash';\r\nimport { highlightField } from 'utils/highlightField';\r\nimport { showField } from 'utils/showField';\r\nimport { RBSFilings } from \"../Common/RBSFilings\";\r\n\r\nexport const ReadCompany = () => {\r\n const companyResult = useSelector(state => state.read.companyResult); \r\n \r\n const handleCityState = (city, state)=>{\r\n if (city && state) {\r\n return (<>
    {city}
    {state}
    );\r\n }\r\n return (<>
    {city}
    {state}
    );\r\n };\r\n return (\r\n
    \r\n

    {companyResult?.currentName}

    \r\n { companyResult?.formerName ?
    Formerly {companyResult?.formerName}
    : \"\"}\r\n
    \r\n
    \r\n
    {companyResult?.st1}
    \r\n
    {companyResult?.st2}
    \r\n {handleCityState(companyResult?.city, companyResult?.state)} {companyResult?.zip ?  
    {companyResult?.zip}
    : <>}
    \r\n
    {companyResult?.country}
    \r\n {showField(companyResult, 'phone', companyResult?.phone) && \r\n
    \r\n Phone: {companyResult?.phone} {companyResult?.phone && companyResult?.extension && ` x ${companyResult?.extension}`}\r\n
    \r\n
    }\r\n {showField(companyResult, 'fax', companyResult?.fax) &&
    Fax: {companyResult?.fax}
    }\r\n
    \r\n
    \r\n {companyResult?.desc}\r\n {companyResult?.exchange ? (companyResult?.exchange + \":\") : \"\"} {companyResult?.ticker}\r\n {companyResult?.ticker && }\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport NoRecordFound from 'components/NoRecordFound';\r\nimport {\r\n toggleReadToolbar, updateCompanyLawyersData\r\n} from \"../../state/actions/readActions\";\r\nimport { highlightField } from 'utils/highlightField';\r\nimport { READ_LAWYER_LABELS } from '../utils/common';\r\n\r\nexport const ReadLawyers = ({ toggleToolbar, isPrinting }) => {\r\n const dispatch = useDispatch();\r\n let companyLawyers = useSelector(state => state.read.currentCompanyLawyers);\r\n const [selectAll, setSelectAll] = useState(false);\r\n useEffect(() => {\r\n if (companyLawyers.length === companyLawyers.filter(item => item.isChecked === true).length) {\r\n setSelectAll(true);\r\n } else {\r\n setSelectAll(false);\r\n }\r\n }, [companyLawyers]);\r\n if (isPrinting) {\r\n companyLawyers = companyLawyers.filter(item => item.isChecked);\r\n }\r\n const parseEducation = (colleges, degrees) => {\r\n return colleges?.split(\"|\").map((clg, index) => {\r\n return (clg + parseDegree(degrees?.split(\"|\")[index]))\r\n }).join(\"|\");\r\n }\r\n const parseDegree = (degree) => {\r\n return ((degree && degree?.trim() != \"0\") ? (\" (\" + (degree?.replace(\" 0\", \"\").trim()) + \")\") : \"\")\r\n }\r\n const handleAllChecked = (event) => {\r\n const lawyers = companyLawyers.map(lawyer => {\r\n return { ...lawyer, isChecked: event.target.checked }\r\n });\r\n dispatch(updateCompanyLawyersData(lawyers));\r\n handleReadToolbar(lawyers);\r\n }\r\n\r\n const handleCheckLawyerElement = (event) => {\r\n const lawyers = companyLawyers.map(lawyer => {\r\n if (lawyer.lId == event.target.value)\r\n return { ...lawyer, isChecked: event.target.checked }\r\n return lawyer;\r\n });\r\n dispatch(updateCompanyLawyersData(lawyers));\r\n handleReadToolbar(lawyers);\r\n }\r\n const handleReadToolbar = (lawyers) => {\r\n if (lawyers.some(item => item.isChecked == true)) {\r\n toggleToolbar(true);\r\n } else {\r\n toggleToolbar(false);\r\n }\r\n\r\n }\r\n return (\r\n
    \r\n {(companyLawyers && companyLawyers.length > 0) ?
    \r\n \r\n handleAllChecked(event)}\r\n checked={selectAll}/>\r\n Check/Uncheck All\r\n \r\n {companyLawyers?.map((ccr, index) => (\r\n
    \r\n
    \r\n
    \r\n handleCheckLawyerElement(event)}\r\n checked={ccr.isChecked}/>\r\n {ccr?.firstName} \r\n {ccr?.lastName} \r\n {ccr?.lawyerSuffix ? {ccr?.lawyerSuffix}  : <>}\r\n {ccr?.email ? {\"(\" + ccr?.email + \")\"} :\r\n }\r\n {(ccr?.practiceAreas && ccr?.practiceAreas?.split(\"|\").length > 0) ?\r\n
    { READ_LAWYER_LABELS.Practice_Areas }\r\n
      {ccr?.practiceAreas?.split(\"|\").map(pa => (\r\n
    • {pa}
    • ))}\r\n
    \r\n
    : \"\"}\r\n {ccr?.yearJoined ? {READ_LAWYER_LABELS.Joined_Firm}{ccr?.yearJoined} :\r\n }\r\n
    \r\n
    \r\n {ccr?.position}\r\n {(ccr?.barInfo && ccr?.barInfo.split(\"|\").length > 0) ?
    \r\n {READ_LAWYER_LABELS.US_State_Non_US_Bars}\r\n
      {ccr?.barInfo.split(\"|\").map(bi => (
    • {bi}
    • ))}\r\n
    \r\n
    : \"\"} \r\n {\r\n (ccr?.colleges || ccr?.degrees) ?
    \r\n {READ_LAWYER_LABELS.Education}\r\n
      {parseEducation(ccr?.colleges, ccr?.degrees).split(\"|\").map(ed => (\r\n ed ?
    • {ed}
    • : \"\"\r\n ))}\r\n
    \r\n
    : \"\"\r\n }\r\n
    \r\n
    \r\n {\r\n (ccr?.phone) ? {READ_LAWYER_LABELS.Telephone_Number} {ccr?.phone} : \"\"\r\n }\r\n {(ccr?.prevPos && ccr?.prevPos.split(\"|\").length > 0) ?
    \r\n {READ_LAWYER_LABELS.Previous_Positions}\r\n
      {ccr?.prevPos.split(\"|\").map(pp => (\r\n
    • {pp}
    • ))}\r\n
    \r\n
    : \"\"} \r\n {(ccr?.memberships && ccr?.memberships.split(\"|\").length>0) ?
    \r\n {READ_LAWYER_LABELS.Memberships_Affiliations}\r\n
      {ccr?.memberships.split(\"|\").map(mem => (\r\n
    • {mem}
    • ))}\r\n
    \r\n
    : \"\"}\r\n
    \r\n
    \r\n
    \r\n ))}\r\n
    \r\n : \r\n }\r\n\r\n
    \r\n );\r\n};","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { filterAllCompanyResultsByLawyerIds } from \"state/actions/readActions\";\r\nimport color from \"../../utils/color\";\r\n\r\nconst getLawyerCollegeCount = (currentCollegesResult, top) => {\r\n let colleges = currentCollegesResult.map(a => a.attbr);\r\n let occurrences = {};\r\n for (let i = 0, j = colleges.length; i < j; i++) {\r\n occurrences[colleges[i]] = (occurrences[colleges[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([attbr, count]) => ({ college: attbr, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\nconst CollegeBi = ({ isOverlay = false, closeDialog, currentCollegesResults }) => {\r\n const [stats, setStats] = useState([]);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentCollegesResults) {\r\n let top = 5;\r\n if (isOverlay) {\r\n top = currentCollegesResults.length;\r\n }\r\n let result = getLawyerCollegeCount(currentCollegesResults, top);\r\n setStats(result);\r\n }\r\n }\r\n\r\n getStats();\r\n }, [currentCollegesResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().read.currentCollegesResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.attbr === legendItem.text).map(item => item.lawyerId);\r\n dispatch(filterAllCompanyResultsByLawyerIds(lawyerIds));\r\n if(isOverlay){\r\n closeDialog();\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(isOverlay ? BI.READ_OVERLAY_COLLEGES_CHART : BI.READ_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]}/>\r\n \r\n );\r\n};\r\nexport default CollegeBi;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { filterAllCompanyResultsByLawyerIds } from \"state/actions/readActions\";\r\nimport color from \"../../utils/color\";\r\n\r\nconst getLawyerPACount = (currentPracticeAreasResults, top) => {\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.pa);\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([pa, count]) => ({ pa, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\nconst PracticeAreaBi = ({ isOverlay = false, closeDialog, currentPaResults }) => {\r\n const [stats, setStats] = useState([]);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentPaResults) {\r\n let top = 5;\r\n if (isOverlay) {\r\n top = currentPaResults.length;\r\n }\r\n let result = getLawyerPACount(currentPaResults, top);\r\n setStats(result);\r\n }\r\n }\r\n\r\n getStats();\r\n }, [currentPaResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().read.currentPaResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.pa === legendItem.text).map(item => item.lawyerId);\r\n dispatch(filterAllCompanyResultsByLawyerIds(lawyerIds));\r\n if (isOverlay) {\r\n closeDialog();\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n item.count)}\r\n labels={stats.map(item => item.pa)}\r\n ref={registerTestObject(isOverlay ? BI.READ_OVERLAY_PRACTICE_AREAS_CHART : BI.READ_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]}/>\r\n \r\n );\r\n};\r\nexport default PracticeAreaBi;\r\n","import React, { useEffect, useState } from 'react';\r\nimport _ from \"lodash\";\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { filterAllCompanyResultsByLawyerIds } from \"state/actions/readActions\";\r\nimport color from \"../../utils/color\";\r\n\r\nconst getTitleCount = (currentPracticeAreasResults, top) => {\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.title);\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([title, count]) => ({ title, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\nconst TitlesBi = ({ isOverlay = false, closeDialog, currentTitlesResults }) => {\r\n const [stats, setStats] = useState([]);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentTitlesResults) {\r\n let top = 5;\r\n if (isOverlay) {\r\n top = currentTitlesResults.length;\r\n }\r\n let result = getTitleCount(currentTitlesResults, top);\r\n setStats(result);\r\n if(isOverlay){\r\n closeDialog();\r\n }\r\n }\r\n }\r\n\r\n getStats();\r\n }, [currentTitlesResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().read.currentTitlesResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.title === legendItem.text).map(item => item.lawyerId);\r\n dispatch(filterAllCompanyResultsByLawyerIds(lawyerIds));\r\n }\r\n }\r\n\r\n return (\r\n \r\n item.count)}\r\n labels={stats.map(item => item.title)}\r\n ref={registerTestObject(isOverlay ? BI.READ_OVERLAY_TITLES_CHART : BI.READ_TITLES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]}/>\r\n \r\n );\r\n};\r\nexport default TitlesBi;\r\n","import React from 'react';\r\nimport { useSelector } from \"react-redux\";\r\nimport _ from 'lodash';\r\nimport { highlightField } from 'utils/highlightField';\r\nimport { showField } from 'utils/showField';\r\nimport { RBSFilings } from \"../Common/RBSFilings\";\r\n\r\nexport const ReadParentCompany = () => {\r\n const companyResult = useSelector(state => state.read.parentCompanyResult);\r\n const handleCityState = (city, state) => {\r\n if (city && state) {\r\n return (<>
    {city}
    {state}
    );\r\n }\r\n return (<>
    {city}
    {state}
    );\r\n };\r\n return (\r\n
    \r\n
    A subsidiary of
    \r\n

    {companyResult?.currentName}

    \r\n { companyResult?.formerName ?
    Formerly {companyResult?.formerName}
    : \"\"}\r\n
    \r\n
    \r\n
    {companyResult?.st1}
    \r\n
    {companyResult?.st2}
    \r\n {handleCityState(companyResult?.city, companyResult?.state)} {companyResult?.zip ?  
    {companyResult?.zip}
    : <>}
    \r\n
    {companyResult?.country}
    \r\n {showField(companyResult, 'phone', companyResult?.phone) && \r\n
    \r\n Phone: {companyResult?.phone} {companyResult?.phone && companyResult?.extension && ` x ${companyResult?.extension}`}\r\n
    \r\n
    }\r\n {showField(companyResult, 'fax', companyResult?.fax) &&
    Fax: {companyResult?.fax}
    }\r\n
    \r\n
    \r\n {companyResult?.desc}\r\n {companyResult?.exchange ? (companyResult?.exchange + \":\") : \"\"} {companyResult?.ticker}\r\n {companyResult?.ticker && }\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport color from \"../../utils/color\";\r\nimport { HorizontalBarchart } from \"components/charts/HorizontalBarchart\";\r\nimport { getLawyerCollegeCount } from '../utils/lawyerCollegeCount';\r\nimport _, { result } from \"lodash\";\r\n\r\nconst getTitleCount = (currentPracticeAreasResults, top) => {\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.title);\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([title, count]) => ({ title, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\n\r\nconst getLawyerPACount = (currentPracticeAreasResults, top) => {\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.pa);\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([pa, count]) => ({ pa, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\n\r\nconst ReadAllBIs = ({ currentResult, selectedBIIndex, filterByLawyerIds, isPieChart }) => {\r\n const [stats, setStats] = useState([]);\r\n const [BIIndexs, setBIIndexs] = useState([]);\r\n useEffect(() => {\r\n if (currentResult) {\r\n let resultAll = [];\r\n let resultNotSorted = [];\r\n let indexs = [];\r\n switch (selectedBIIndex) {\r\n case 0:\r\n //Colleges\r\n resultAll = getLawyerCollegeCount(_.cloneDeep(currentResult), 0);\r\n break;\r\n case 1:\r\n //PA's\r\n resultAll = getLawyerPACount(currentResult, currentResult.length);\r\n break;\r\n case 2:\r\n //Titles\r\n resultAll = getTitleCount(currentResult, currentResult.length);\r\n break;\r\n default:\r\n resultAll = [];\r\n }\r\n\r\n setStats(resultAll);\r\n setBIIndexs(indexs);\r\n }\r\n }, [currentResult]);\r\n return (\r\n \r\n {isPieChart && selectedBIIndex == 0 && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(BI.READ_OVERLAY_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 0 && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(BI.READ_OVERLAY_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n\r\n {isPieChart && selectedBIIndex == 1 && item.count)}\r\n labels={stats.map(item => item.pa)}\r\n ref={registerTestObject(BI.READ_OVERLAY_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 1 && item.count)}\r\n labels={stats.map(item => item.pa)}\r\n ref={registerTestObject(BI.READ_OVERLAY_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n\r\n {isPieChart && selectedBIIndex == 2 && item.count)}\r\n labels={stats.map(item => item.title)}\r\n ref={registerTestObject(BI.READ_OVERLAY_TITLES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 2 && item.count)}\r\n labels={stats.map(item => item.title)}\r\n ref={registerTestObject(BI.READ_OVERLAY_TITLES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n\r\n \r\n );\r\n};\r\nexport default ReadAllBIs;\r\n","import React, { useRef, useEffect, useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport ReadAllBIs from \"./ReadAllBIs\";\r\nimport { BI_READ_VIEW_CHECKED_TITLE } from \"pages/utils/common\";\r\n\r\nconst ReadBIOverlay = ({ currentResult, selectedBIIndex, isVisible, closeDialog, filterData, chartType }) => {\r\n\r\n useEffect(() => {\r\n reSizeBI();\r\n window.addEventListener('resize', (event) => {\r\n reSizeBI();\r\n });\r\n });\r\n\r\n const reSizeBI = () => {\r\n let headerEle = document.getElementById(\"BIOverlayHeader\");\r\n if (headerEle != null) {\r\n let section = document.getElementById(\"BIOverlaySection\");\r\n let header = headerEle.clientHeight;\r\n let margin = window.getComputedStyle(section)['marginTop'].replace('px', '');\r\n let bodyHeight = window.innerHeight - (margin + header != 0 ? header : 49);\r\n bodyHeight = margin == 0 ? bodyHeight : bodyHeight * 0.9;\r\n document.getElementById(\"BIOverlayBody\").style.height = bodyHeight + 'px';\r\n }\r\n }\r\n\r\n let isPieChart = true;\r\n if (chartType != \"PieChart\")\r\n isPieChart = false;\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    {BI_READ_VIEW_CHECKED_TITLE[selectedBIIndex]}
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default ReadBIOverlay;","import React, { useEffect, useState } from 'react';\r\nimport { useLocation } from \"react-router\";\r\nimport queryString from \"querystring\";\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { ReadHeader } from \"./ReadHeader\";\r\nimport { ReadCompany } from \"./ReadCompany\";\r\nimport { ReadLawyers } from \"./ReadLawyers\";\r\nimport { scrollToTop } from 'utils/scrollToTop';\r\nimport {\r\n companyDataRequested,\r\n companyLawyersDataRequested,\r\n lawyerDataRequested,\r\n parentCompanyDataRequested,\r\n parentCompanyLawyersDataRequested,\r\n RBSFilingsDataRequested,\r\n resetReadToInitialState\r\n} from 'state/actions/readActions';\r\nimport CollegeBi from \"./CollegesBi\";\r\nimport PracticeAreaBi from \"./PracticeAreaBi\";\r\nimport TitlesBi from \"./TitlesBi\";\r\nimport { ReadParentCompany } from \"pages/Read/ReadParentCompany\";\r\nimport ReadBIOverlay from \"./ReadBIOverlay\";\r\nimport { filterAllCompanyResultsByLawyerIds } from \"state/actions/readActions\";\r\nimport NoRecordFound from \"components/NoRecordFound\";\r\nimport CreateParentAlertOverlay from \"pages/Common/CreateParentAlertOverlay\";\r\nimport { post } from 'services/ApiService';\r\nimport { onLocationChanged } from \"state/actions/locationActions\";\r\n\r\nexport const Read = ({ saveAlert }) => {\r\n const location = useLocation();\r\n const { pid, cid, lid } = queryString.parse(location.search.substring(1));\r\n const currentCollegesResults = useSelector(state => state.read.currentCollegesResults);\r\n const currentTitlesResults = useSelector(state => state.read.currentTitlesResults);\r\n const currentPaResults = useSelector(state => state.read.currentPaResults);\r\n const [selectedBIIndex, setSelectedBIIndex] = useState(-1);\r\n const [isPieChartVisible, setPieChartVisible] = useState(false);\r\n const [isHorizontalBarVisible, setHorizontalBarVisible] = useState(false);\r\n const [isParentAlertVisible, setParentAlertVisible] = useState(false);\r\n const [selections, setSelections] = useState([]);\r\n const [currentResult, setCurrentResult] = useState([]);\r\n const [isPrinting, setIsPrinting] = useState(false);\r\n const [isToolbarActive, setIsToolbarActive] = useState(false);\r\n const [parentCompanyAlertsPresent, setParentCompanyAlertsPresent] = useState([]);\r\n const store = useStore();\r\n \r\n const dispatch = useDispatch();\r\n const readParentCompany = (pid && cid && (pid != cid)) ? :
    ;\r\n useEffect(() => {\r\n if (lid) {\r\n dispatch(companyDataRequested(cid));\r\n dispatch(lawyerDataRequested({\r\n lawyerId: lid,\r\n companyId: cid\r\n }))\r\n } else if (cid) {\r\n dispatch(companyDataRequested(cid));\r\n dispatch(companyLawyersDataRequested(cid));\r\n } else {\r\n dispatch(companyDataRequested(pid));\r\n dispatch(parentCompanyLawyersDataRequested(pid));\r\n }\r\n if (pid && cid && (pid != cid)) {\r\n dispatch(parentCompanyDataRequested(pid));\r\n }\r\n dispatch(RBSFilingsDataRequested());\r\n dispatch(onLocationChanged(\"/read\"));\r\n //scroll to top of page\r\n scrollToTop();\r\n const printMq = typeof window !== 'undefined' && window.matchMedia && window.matchMedia('print');\r\n const mqEvent = mqList => {\r\n if (!mqList.matches)\r\n setIsPrinting(mqList.matches)\r\n };\r\n document.onkeydown = onKeyPress;\r\n printMq.addListener(mqEvent);\r\n if (navigator.userAgent.indexOf(\"Firefox\") != -1) {\r\n window.onafterprint = () => {\r\n setIsPrinting(false)\r\n }\r\n }\r\n return () => {\r\n document.onkeydown = null;\r\n window.onafterprint = null;\r\n printMq.removeListener(mqEvent);\r\n dispatch(resetReadToInitialState());\r\n }\r\n }, [])\r\n const toggleToolbar = (isActive) => {\r\n setIsToolbarActive(isActive);\r\n }\r\n\r\n const print = async e => {\r\n await setIsPrinting(true);\r\n window.print();\r\n const mainCurrentResults = store.getState().read.currentCompanyLawyers;\r\n await post('./api/logs', { shortInfo: \"Print\", logInfo: mainCurrentResults.filter(item => item.isChecked).map(c=>c.lId).toString() })\r\n }\r\n const onKeyPress = e => {\r\n if (e.ctrlKey && e.keyCode === 80 && !isPrinting) {\r\n e.preventDefault();\r\n print();\r\n }\r\n }\r\n\r\n const closeDialog = (e) => {\r\n setPieChartVisible(false);\r\n setHorizontalBarVisible(false);\r\n }\r\n\r\n const filterData = legendItem => {\r\n let lawyerIds;\r\n switch (selectedBIIndex) {\r\n case 0:\r\n lawyerIds = currentCollegesResults.filter(item => item.attbr === legendItem.text).map(item => item.lawyerId);\r\n break;\r\n case 1:\r\n lawyerIds = currentPaResults.filter(item => item.pa === legendItem.text).map(item => item.lawyerId);\r\n break;\r\n case 2:\r\n lawyerIds = currentTitlesResults.filter(item => item.title === legendItem.text).map(item => item.lawyerId);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n dispatch(filterAllCompanyResultsByLawyerIds(lawyerIds));\r\n\r\n setPieChartVisible(false);\r\n setHorizontalBarVisible(false);\r\n setSelectedBIIndex(-1);\r\n }\r\n\r\n const showReadBIOverlay4Pie = (index) => {\r\n setPieChartVisible(true);\r\n setSelectedBIIndex(index);\r\n\r\n switch (index) {\r\n case 0:\r\n setCurrentResult(currentCollegesResults);\r\n break;\r\n case 1:\r\n setCurrentResult(currentPaResults);\r\n break;\r\n case 2:\r\n setCurrentResult(currentTitlesResults);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n\r\n }\r\n\r\n const showReadBIOverlay4Horizontal = (index) => {\r\n setHorizontalBarVisible(true);\r\n setSelectedBIIndex(index);\r\n\r\n switch (index) {\r\n case 0:\r\n setCurrentResult(currentCollegesResults);\r\n break;\r\n case 1:\r\n setCurrentResult(currentPaResults);\r\n break;\r\n case 2:\r\n setCurrentResult(currentTitlesResults);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n }\r\n\r\n const showParentAlertOverlay = (data, parentSelection) => {\r\n setSelections(parentSelection);\r\n setParentCompanyAlertsPresent(data);\r\n setParentAlertVisible(true);\r\n }\r\n\r\n const closeParentAlertOverlay = (e) => {\r\n setParentAlertVisible(false);\r\n }\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {readParentCompany}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    Corporate Counsel
    \r\n
    \r\n
    \r\n
    Colleges
    \r\n {currentCollegesResults?.length > 0 && (\r\n <>\r\n \r\n

    showReadBIOverlay4Pie(0)}>Show More - Pie Chart

    \r\n

    showReadBIOverlay4Horizontal(0)}>Show More - Bar Chart

    \r\n )}\r\n {currentCollegesResults?.length === 0 && }\r\n
    \r\n
    \r\n
    Practice Areas
    \r\n {currentPaResults?.length > 0 && (\r\n <>\r\n \r\n

    showReadBIOverlay4Pie(1)}>Show More - Pie Chart

    \r\n

    showReadBIOverlay4Horizontal(1)}>Show More - Bar Chart

    \r\n\r\n )}\r\n {currentPaResults?.length === 0 && }\r\n\r\n
    \r\n
    \r\n
    Titles
    \r\n {currentTitlesResults?.length > 0 && (\r\n <>\r\n \r\n

    showReadBIOverlay4Pie(2)}>Show More - Pie Chart

    \r\n

    showReadBIOverlay4Horizontal(2)}>Show More - Bar Chart

    \r\n\r\n )}\r\n {currentTitlesResults?.length === 0 && }\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n {isPieChartVisible && }\r\n {isHorizontalBarVisible && }\r\n {isParentAlertVisible && }\r\n
    \r\n \r\n );\r\n};\r\n\r\n\r\n","export const READCHECKED_COMPANY_DATA_REQUESTED = \"READCHECKED_COMPANY_DATA_REQUESTED\";\r\nexport const READCHECKED_COMPANY_DATA_LOADED = \"READCHECKED_COMPANY_DATA_LOADED\";\r\nexport const READCHECKED_LAWYER_DATA_REQUESTED = \"READCHECKED_LAWYER_DATA_REQUESTED\";\r\nexport const READCHECKED_LAWYER_DATA_LOADED = \"READCHECKED_LAWYER_DATA_LOADED\";\r\nexport const READCHECKED_FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS = \"READCHECKED_FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS\";\r\nexport const LAWYERS_COLLEGE_DATA_REQUESTED = \"LAWYERS_COLLEGE_DATA_REQUESTED\";\r\nexport const LAWYERS_COLLEGE_DATA_LOADED = \"LAWYERS_COLLEGE_DATA_LOADED\";\r\nexport const LAWYERS_PA_DATA_REQUESTED = \"LAWYERS_PA_DATA_REQUESTED\";\r\nexport const LAWYERS_PA_DATA_LOADED = \"LAWYERS_PA_DATA_LOADED\";\r\nexport const LAWYERS_TITLES_DATA_REQUESTED = \"LAWYERS_TITLES_DATA_REQUESTED\";\r\nexport const LAWYERS_TITLES_DATA_LOADED = \"LAWYERS_TITLES_DATA_LOADED\";\r\nexport const READCHECKED_RESET_ALL_READ_DATA = \"READCHECKED_RESET_ALL_READ_DATA\";\r\nexport const READCHECKED_SET_SELECT_ALL = \"READCHECKED_SET_SELECT_ALL\";\r\nexport const READCHECKED_UPDATE_COMPANY_LAWYERS_DATA = \"READCHECKED_UPDATE_COMPANY_LAWYERS_DATA\";\r\nexport const READCHECKED_RESET_INITIAL_STATE = \"READCHECKED_RESET_INITIAL_STATE\";\r\n\r\nexport const readcheckedCompanyDataRequested = (payload) => ({\r\n type: READCHECKED_COMPANY_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const readcheckedCompanyDataLoaded = (payload) => ({\r\n type: READCHECKED_COMPANY_DATA_LOADED,\r\n payload\r\n});\r\nexport const readcheckedLawyerDataRequested = (payload) => ({\r\n type: READCHECKED_LAWYER_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const readcheckedLawyerDataLoaded = (payload) => ({\r\n type: READCHECKED_LAWYER_DATA_LOADED,\r\n payload\r\n});\r\nexport const lawyersCollegeDataRequested = (payload) => ({\r\n type: LAWYERS_COLLEGE_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const lawyersCollegeDataLoaded = (payload) => ({\r\n type: LAWYERS_COLLEGE_DATA_LOADED,\r\n payload\r\n});\r\nexport const lawyersPADataRequested = (payload) => ({\r\n type: LAWYERS_PA_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const lawyersPADataLoaded = (payload) => ({\r\n type: LAWYERS_PA_DATA_LOADED,\r\n payload\r\n});\r\nexport const lawyersTitlesDataRequested = (payload) => ({\r\n type: LAWYERS_TITLES_DATA_REQUESTED,\r\n payload\r\n});\r\nexport const lawyersTitlesDataLoaded = (payload) => ({\r\n type: LAWYERS_TITLES_DATA_LOADED,\r\n payload\r\n});\r\nexport const readcheckedfilterAllCompanyResultsByLawyerIds = (lawyerIds) => ({\r\n type: READCHECKED_FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS,\r\n lawyerIds\r\n});\r\nexport const readcheckedresetAllReadData = () => ({\r\n type: READCHECKED_RESET_ALL_READ_DATA\r\n});\r\nexport const setReadCheckedSelectAll = readCheckedSelectAll => ({\r\n type: READCHECKED_SET_SELECT_ALL,\r\n readCheckedSelectAll\r\n});\r\nexport const updateCheckedCompanyLawyersData = (payload) => ({\r\n type: READCHECKED_UPDATE_COMPANY_LAWYERS_DATA,\r\n payload\r\n});\r\nexport const resetReadCheckedToInitialState = () => ({\r\n type: READCHECKED_RESET_INITIAL_STATE\r\n})\r\n","import React from 'react';\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport _ from \"lodash\";\r\nimport { readcheckedresetAllReadData } from \"state/actions/readCheckedActions\";\r\nimport { spinnerChangedAction } from \"state/actions/spinnerActions\";\r\nimport { downloadLawyers } from \"services/DownloadService\";\r\nimport { logAndRedirectToErrorPage } from 'components/ErrorComponent';\r\nimport { useHistory } from \"react-router\";\r\nimport { post } from 'services/ApiService';\r\n\r\nexport const ReadCheckedHeader = ({ isToolbarActive, print, showParentAlertOverlay }) => {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const currentLawyers = _.values(useSelector(state => state.readchecked.currentLawyers));\r\n const companyResult = useSelector(state => state.readchecked.companyResult);\r\n const allLawyers = _.values(useSelector(state => state.readchecked.allLawyers));\r\n const userInfo = useSelector(state => state.home.userInfo);\r\n const showAlertButton = !userInfo?.Sub?.startsWith('TempUser');\r\n const downloadCsv = e => {\r\n dispatch(spinnerChangedAction(true));\r\n const lawyerIds = currentLawyers.filter(lawyer => lawyer.checked).map(lawyer => lawyer.lId).join(\",\");\r\n downloadLawyers(lawyerIds).catch(error => logAndRedirectToErrorPage(error, history)).finally(() => dispatch(spinnerChangedAction(false)));\r\n }\r\n\r\n const processingParentCompanies = () => {\r\n let parentCompaniesList = [];\r\n let checkedUberIds = currentLawyers.filter(item => item.checked).map(item => item.uberId);\r\n let filteredParentCompanies = companyResult.filter(i => checkedUberIds.includes(i.uberId && i.cId));\r\n let sortedParentCompanies = filteredParentCompanies.sort((a, b) => (a.currentName > b.currentName) ? 1 : -1);\r\n let parentSelections = sortedParentCompanies.map((i) => ({ 'checked': true, 'company': i.currentName, 'fkParentCompany': i.uberId.toString() }));\r\n parentSelections.map(item => parentCompaniesList.push(item.fkParentCompany));\r\n post('/api/Alert/getAlertsPresent', parentCompaniesList.join(','))\r\n .then(data => {\r\n showParentAlertOverlay(data, parentSelections)\r\n dispatch(spinnerChangedAction(false));\r\n });\r\n };\r\n\r\n const onCreateAlertClicked = () => {\r\n dispatch(spinnerChangedAction(true));\r\n setTimeout(() => {\r\n processingParentCompanies();\r\n }, 100);\r\n };\r\n\r\n return (<>\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n */}\r\n
    \r\n
    \r\n );\r\n};\r\n","import React from 'react';\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport NoRecordFound from 'components/NoRecordFound';\r\nimport { updateCheckedCompanyLawyersData } from \"state/actions/readCheckedActions\";\r\nimport { highlightField } from 'utils/highlightField';\r\nimport { READ_LAWYER_LABELS } from '../utils/common';\r\n\r\nexport const ReadCheckedLawyers = ({ toggleToolbar, companyLawyers, isPrinting }) => {\r\n const dispatch = useDispatch();\r\n const currentLawyers = useSelector(state => state.readchecked.currentLawyers);\r\n const parseEducation = (colleges, degrees) => {\r\n return colleges?.split(\"|\").map((clg, index) => {\r\n return (clg + parseDegree(degrees?.split(\"|\")[index]))\r\n }).join(\"|\");\r\n }\r\n const parseDegree = (degree) => {\r\n return ((degree && degree?.trim() != \"0\") ? (\" (\" + (degree?.replace(\" 0\", \"\").trim()) + \")\") : \"\")\r\n }\r\n const handleCheckLawyerElement = (event) => {\r\n const lawyers = currentLawyers.map(lawyer => {\r\n if (lawyer.lId == event.target.value)\r\n return { ...lawyer, checked: event.target.checked }\r\n return lawyer;\r\n });\r\n dispatch(updateCheckedCompanyLawyersData(lawyers));\r\n handleReadToolbar(lawyers);\r\n }\r\n const handleReadToolbar = (lawyers) => {\r\n if (lawyers.some(item => item.checked == true)) {\r\n toggleToolbar(true);\r\n } else {\r\n toggleToolbar(false);\r\n }\r\n\r\n }\r\n return (\r\n
    \r\n {(companyLawyers && companyLawyers.length > 0) ?
    \r\n {companyLawyers?.map((ccr, index) => (\r\n
    \r\n
    \r\n
    \r\n handleCheckLawyerElement(e)}\r\n checked={ccr.checked} />\r\n {ccr?.firstName} \r\n {ccr?.lastName} \r\n {ccr?.lawyerSuffix ? {ccr?.lawyerSuffix}  : <>}\r\n {ccr?.email ? {\"(\" + ccr?.email + \")\"} :\r\n }\r\n {(ccr?.practiceAreas && ccr?.practiceAreas?.split(\"|\").length > 0) ?\r\n
    {READ_LAWYER_LABELS.Practice_Areas}\r\n
      {ccr?.practiceAreas?.split(\"|\").map(pa => (\r\n
    • {pa}
    • ))}\r\n
    \r\n
    : \"\"}\r\n {ccr?.yearJoined ? {READ_LAWYER_LABELS.Joined_Firm}{ccr?.yearJoined} :\r\n }\r\n
    \r\n
    \r\n {ccr?.position}\r\n {(ccr?.barInfo && ccr?.barInfo.split(\"|\").length > 0) ?
    \r\n {READ_LAWYER_LABELS.US_State_Non_US_Bars}\r\n
      {ccr?.barInfo.split(\"|\").map(bi => (
    • {bi}
    • ))}\r\n
    \r\n
    : \"\"} \r\n {\r\n (ccr?.colleges || ccr?.degrees) ?
    {READ_LAWYER_LABELS.Education}\r\n
      {parseEducation(ccr?.colleges, ccr?.degrees).split(\"|\").map(ed => (\r\n ed?
    • {ed}
    • : \"\"))}\r\n
    \r\n
    : \"\"\r\n }\r\n\r\n
    \r\n
    \r\n {\r\n (ccr?.phone) ? {READ_LAWYER_LABELS.Telephone_Number} {ccr?.phone} : \"\"\r\n }\r\n {(ccr?.prevPos && ccr?.prevPos.split(\"|\").length > 0) ?
    \r\n {READ_LAWYER_LABELS.Previous_Positions}\r\n
      {ccr?.prevPos.split(\"|\").map(pp => (\r\n
    • {pp}
    • ))}\r\n
    \r\n
    : \"\"} \r\n {(ccr?.memberships && ccr?.memberships.split(\"|\").length>0) ?
    \r\n {READ_LAWYER_LABELS.Memberships_Affiliations}\r\n
      {ccr?.memberships.split(\"|\").map(mem => (\r\n
    • {mem}
    • ))}\r\n
    \r\n
    : \"\"}\r\n
    \r\n
    \r\n
    \r\n ))}\r\n
    \r\n : !isPrinting && \r\n }\r\n\r\n
    \r\n );\r\n};","import React from 'react';\r\nimport _ from 'lodash';\r\nimport { highlightField } from 'utils/highlightField';\r\nimport { showField } from 'utils/showField';\r\nimport { ReadCheckedLawyers } from \"pages/ReadChecked/ReadCheckedLawyers\";\r\nimport { RBSFilings } from \"../Common/RBSFilings\";\r\nexport const ReadCheckedParentCompany = ({ toggleToolbar, companyResult, isPrinting }) => {\r\n const handleCityState = (city, state) => {\r\n if (city && state) {\r\n return (<>
    {city}
    {state}
    );\r\n }\r\n return (<>
    {city}
    {state}
    );\r\n };\r\n\r\n const lawyersList = (companyResult, isPrinting) => {\r\n if (!isPrinting) return companyResult.lawyers;\r\n return companyResult.lawyers.filter(l => l.checked == true);\r\n\r\n }\r\n\r\n const companyInfoShown = (companyResult, isPrinting) => {\r\n\r\n return lawyersList(companyResult, isPrinting).length > 0;\r\n }\r\n return (\r\n <>\r\n
    \r\n {companyInfoShown(companyResult, isPrinting) &&
    \r\n

    {companyResult?.companyInfo?.currentName}

    \r\n {companyResult?.companyInfo?.formerName ?
    Formerly {companyResult?.companyInfo?.formerName}
    : \"\"}\r\n
    \r\n
    \r\n
    {companyResult?.companyInfo?.st1}
    \r\n
    {companyResult?.companyInfo?.st2}
    \r\n {handleCityState(companyResult?.companyInfo?.city, companyResult?.companyInfo?.state)} {companyResult?.companyInfo?.zip ?  
    {companyResult?.companyInfo?.zip}
    :<>}
    \r\n
    {companyResult?.companyInfo?.country}
    \r\n {showField(companyResult?.companyInfo, \"phone\", companyResult?.companyInfo?.phone) && \r\n
    \r\n Phone: {companyResult?.companyInfo?.phone} {companyResult?.companyInfo?.phone && companyResult?.companyInfo?.extension && ` x ${companyResult?.companyInfo?.extension}`}\r\n
    \r\n
    }\r\n {showField(companyResult?.companyInfo, \"fax\", companyResult?.companyInfo?.fax) &&
    Fax: {companyResult?.companyInfo?.fax}
    }\r\n
    \r\n
    \r\n {companyResult?.companyInfo?.desc}\r\n {companyResult?.companyInfo?.exchange ? (companyResult?.companyInfo?.exchange + \":\") : \"\"} {companyResult?.companyInfo?.ticker}\r\n {companyResult?.companyInfo?.ticker && }\r\n
    \r\n
    \r\n
    }\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport { ReadCheckedLawyers } from \"pages/ReadChecked/ReadCheckedLawyers\";\r\nimport _ from 'lodash';\r\nimport { highlightField } from 'utils/highlightField';\r\nimport { showField } from 'utils/showField';\r\nimport { RBSFilings } from \"../Common/RBSFilings\";\r\nexport const ReadCheckedCompany = ({ toggleToolbar, companyResult, isPrinting }) => {\r\n const handleCityState = (city, state) => {\r\n if (city && state) {\r\n return (<>
    {city}
    {state}
    );\r\n }\r\n return (<>
    {city}
    {state}
    );\r\n };\r\n const handleParentCityState = (city, state) => {\r\n if (city && state) {\r\n return (<>
    {city}
    {state}
    );\r\n }\r\n return (<>
    {city}
    {state}
    );\r\n };\r\n const lawyersList = (companyResult, isPrinting) => {\r\n if (!isPrinting) return companyResult.lawyers;\r\n return companyResult.lawyers.filter(l => l.checked == true);\r\n\r\n }\r\n\r\n const companyInfoShown = (companyResult, isPrinting) => {\r\n\r\n return lawyersList(companyResult, isPrinting).length > 0;\r\n }\r\n return (\r\n <>\r\n
    \r\n {companyInfoShown(companyResult, isPrinting) &&
    \r\n

    {companyResult?.companyInfo?.currentName}

    \r\n
    \r\n
    \r\n
    {companyResult?.companyInfo?.st1}
    \r\n
    {companyResult?.companyInfo?.st2}
    \r\n {handleCityState(companyResult?.companyInfo?.city, companyResult?.companyInfo?.state)} {companyResult?.companyInfo?.zip ?  
    {companyResult?.companyInfo?.zip}
    :<>}
    \r\n
    {companyResult?.companyInfo?.country}
    \r\n {showField(companyResult?.companyInfo, \"phone\", companyResult?.companyInfo?.phone) && \r\n
    \r\n Phone: {companyResult?.companyInfo?.phone} {companyResult?.companyInfo?.phone && companyResult?.companyInfo?.extension && ` x ${companyResult?.companyInfo?.extension}`}\r\n
    \r\n
    }\r\n {showField(companyResult?.companyInfo, \"fax\", companyResult?.companyInfo?.fax) &&
    Fax: {companyResult?.companyInfo?.fax}
    }\r\n
    \r\n
    \r\n {companyResult?.companyInfo?.desc}\r\n {companyResult?.companyInfo?.exchange ? (companyResult?.companyInfo?.exchange + \":\") : \"\"} {companyResult?.companyInfo?.ticker}\r\n {companyResult?.companyInfo?.ticker && }\r\n
    \r\n
    \r\n
    }\r\n {companyInfoShown(companyResult, isPrinting) &&
    \r\n
    A subsidiary of
    \r\n

    {companyResult?.parentCompanyInfo?.currentName}

    \r\n {companyResult?.parentCompanyInfo?.formerName ?
    Formerly {companyResult?.parentCompanyInfo?.formerName}
    : \"\"}\r\n
    \r\n
    \r\n
    {companyResult?.parentCompanyInfo?.st1}
    \r\n
    {companyResult?.parentCompanyInfo?.st2}
    \r\n {handleCityState(companyResult?.parentCompanyInfo?.city, companyResult?.parentCompanyInfo?.state)}  
    {companyResult?.parentCompanyInfo?.zip}
    \r\n
    {companyResult?.parentCompanyInfo?.country}
    \r\n {showField(companyResult?.companyInfo, \"phone\", companyResult?.companyInfo?.phone) &&
    Phone: {companyResult?.parentCompanyInfo?.phone}
    }\r\n {showField(companyResult?.companyInfo, \"fax\", companyResult?.companyInfo?.fax) &&
    Fax: {companyResult?.parentCompanyInfo?.fax}
    }\r\n
    \r\n
    \r\n {companyResult?.parentCompanyInfo?.desc}\r\n {companyResult?.parentCompanyInfo?.exchange ? (companyResult?.parentCompanyInfo?.exchange + \":\") : \"\"} {companyResult?.parentCompanyInfo?.ticker}\r\n {companyResult?.parentCompanyInfo?.ticker && }\r\n
    \r\n
    \r\n
    }\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport _ from 'lodash';\r\nimport { highlightField } from 'utils/highlightField';\r\nimport { isMetaProperty } from 'typescript';\r\nimport { ReadCheckedParentCompany } from \"pages/ReadChecked/ReadCheckedParentCompany\";\r\nimport { ReadCheckedCompany } from \"pages/ReadChecked/ReadCheckedCompany\";\r\nexport const ReadCheckedResultItem = ({ toggleToolbar, resultItem, isPrinting }) => {\r\n const lawyersList = (companyResult, isPrinting) => {\r\n if (!isPrinting) return companyResult.lawyers;\r\n return companyResult.lawyers.filter(l => l.checked == true);\r\n\r\n }\r\n\r\n const companyInfoShown = (companyResult, isPrinting) => {\r\n\r\n return lawyersList(companyResult, isPrinting).length > 0;\r\n }\r\n return (\r\n <>\r\n {resultItem?.parentInfo?.lawyers?.length > 0 ? companyInfoShown(resultItem?.parentInfo, isPrinting) && : <>}\r\n {\r\n resultItem?.companies?.map((company, index) => (companyInfoShown(company, isPrinting) && ))\r\n }\r\n \r\n );\r\n};","import React, { useEffect, useState } from 'react';\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport NoRecordFound from \"components/NoRecordFound\";\r\nimport { ReadCheckedResultItem } from \"pages/ReadChecked/ReadCheckedResultItem\";\r\nimport { setReadCheckedSelectAll as setReadCheckedSelectAllAction } from \"state/actions/readCheckedActions\";\r\nexport const ReadCheckedResult = ({ toggleToolbar, isPrinting }) => {\r\n const readcheckedResult = [];\r\n const companyResult = useSelector(state => state.readchecked.companyResult);\r\n const currentLawyers = useSelector(state => state.readchecked.currentLawyers);\r\n const dispatch = useDispatch();\r\n const parentCompanies = companyResult.filter((item) => { return item.uberId == item.cId }).sort((a, b) => {\r\n if (a.currentName < b.currentName) { return -1; }\r\n if (a.currentName > b.currentName) { return 1; }\r\n return 0;\r\n });\r\n const [readCheckedSelectAll, setReadCheckedSelectAll] = useState(false);\r\n useEffect(() => {\r\n if (currentLawyers.length === currentLawyers.filter(item => item.checked === true).length) {\r\n setReadCheckedSelectAll(true);\r\n } else {\r\n setReadCheckedSelectAll(false);\r\n }\r\n handleReadToolbar(currentLawyers);\r\n }, [currentLawyers]);\r\n const onChangeSelectAll = e => {\r\n setReadCheckedSelectAll(e.target.checked);\r\n dispatch(setReadCheckedSelectAllAction(e.target.checked));\r\n };\r\n const handleReadToolbar = (lawyers) => {\r\n if (lawyers.some(item => item.checked == true)) {\r\n toggleToolbar(true);\r\n } else {\r\n toggleToolbar(false);\r\n }\r\n }\r\n const getCompanyLawyers = (cId, lawyers) => {\r\n return lawyers.filter((item) => { return item.cId == cId }).sort((a, b) => {\r\n if (a.lastName < b.lastName) { return -1; }\r\n if (a.lastName > b.lastName) { return 1; }\r\n return 0;\r\n });\r\n };\r\n const getCompanySubsidiaries = (uberId, companies) => {\r\n return companies.filter((item) => { return item.uberId == uberId && item.cId != item.uberId }).sort((a, b) => {\r\n if (a.currentName < b.currentName) { return -1; }\r\n if (a.currentName > b.currentName) { return 1; }\r\n return 0;\r\n });\r\n };\r\n const getCompanies = (pCompany) => {\r\n let companiesResult = [];\r\n let companies = getCompanySubsidiaries(pCompany.uberId, companyResult);\r\n companies.forEach((item) => {\r\n companiesResult.push({\r\n companyInfo: item,\r\n parentCompanyInfo: pCompany,\r\n lawyers: getCompanyLawyers(item.cId, currentLawyers)\r\n });\r\n });\r\n return companiesResult;\r\n };\r\n const getParentInfo = (pCompany) => {\r\n return {\r\n companyInfo: pCompany,\r\n lawyers: getCompanyLawyers(pCompany.cId, currentLawyers)\r\n };\r\n };\r\n\r\n const hrShown = (resultItem) => {\r\n if (!isPrinting) return true;\r\n let parentLawyerLength = resultItem?.parentInfo?.lawyers?.length > 0 ? resultItem?.parentInfo?.lawyers?.filter(l => l.checked == true).length : 0;\r\n let companyLawyerLength = resultItem?.companies?.lawyers?.length > 0 ? resultItem?.companies?.lawyers?.filter(l => l.checked == true).length : 0;\r\n return parentLawyerLength > 0 || companyLawyerLength > 0;\r\n }\r\n parentCompanies.forEach((item, index) => {\r\n // get all lawyers for the parent company \r\n readcheckedResult.push({\r\n parentInfo: getParentInfo(item),\r\n companies: getCompanies(item)\r\n });\r\n\r\n });\r\n return (\r\n <>\r\n {(readcheckedResult && readcheckedResult.length > 0) ?
    \r\n \r\n \r\n Check/Uncheck All\r\n \r\n {readcheckedResult?.map((resultItem, index) => (\r\n
    \r\n \r\n {readcheckedResult[index + 1] && (resultItem?.parentInfo?.lawyers?.length > 0 || resultItem?.companies?.lawyers?.length > 0) ? hrShown(resultItem) &&
    : <>}\r\n
    \r\n ))}\r\n
    \r\n : !isPrinting && \r\n }\r\n \r\n );\r\n};","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { HorizontalBarchart } from \"components/charts/HorizontalBarchart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { readcheckedfilterAllCompanyResultsByLawyerIds } from \"state/actions/readCheckedActions\";\r\nimport color from \"../../utils/color\";\r\n\r\nconst getLawyerCollegeCount = (currentCollegesResult, top) => {\r\n let colleges = currentCollegesResult.map(a => a.attbr);\r\n let occurrences = {};\r\n for (let i = 0, j = colleges.length; i < j; i++) {\r\n occurrences[colleges[i]] = (occurrences[colleges[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([attbr, count]) => ({ college: attbr, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\nconst ReadCheckedCollegesBi = ({ isOverlay = false, closeDialog, currentCollegesResults, chartType }) => {\r\n const [stats, setStats] = useState([]);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentCollegesResults) {\r\n let top = 5;\r\n if (isOverlay) {\r\n top = currentCollegesResults.length;\r\n }\r\n let result = getLawyerCollegeCount(currentCollegesResults, top);\r\n setStats(result);\r\n }\r\n }\r\n\r\n getStats();\r\n }, [currentCollegesResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().readchecked.readSelectedcurrentCollegesResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.attbr === legendItem.text).map(item => item.lId);\r\n dispatch(readcheckedfilterAllCompanyResultsByLawyerIds(lawyerIds));\r\n if(isOverlay){\r\n closeDialog();\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n\r\n {chartType === \"Pie\" && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(isOverlay ? BI.READ_CHECKED_OVERLAY_COLLEGES_CHART : BI.READ_CHECKED_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />\r\n }\r\n {chartType === \"Bar\" && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(isOverlay ? BI.READ_CHECKED_OVERLAY_COLLEGES_CHART : BI.READ_CHECKED_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />\r\n }\r\n
    \r\n );\r\n};\r\nexport default ReadCheckedCollegesBi;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport color from \"../../utils/color\";\r\nimport { HorizontalBarchart } from \"components/charts/HorizontalBarchart\";\r\nimport { getLawyerPACount } from '../utils/lawyerPACount';\r\nimport { getLawyerCollegeCount } from '../utils/lawyerCollegeCount';\r\nimport _, { result } from \"lodash\";\r\n\r\nconst getTitleCount = (currentPracticeAreasResults, top) => {\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.title);\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([title, count]) => ({ title, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\n\r\nconst ViewCheckedAllBIs = ({ currentResult, selectedBIIndex, filterByLawyerIds, isPieChart }) => {\r\n const [stats, setStats] = useState([]);\r\n const [BIIndexs, setBIIndexs] = useState([]);\r\n useEffect(() => {\r\n if (currentResult) {\r\n let resultAll = [];\r\n let resultNotSorted = [];\r\n let indexs = [];\r\n switch (selectedBIIndex) {\r\n case 0:\r\n //Colleges\r\n resultAll = getLawyerCollegeCount(_.cloneDeep(currentResult), 0);\r\n break;\r\n case 1:\r\n //PA's\r\n resultAll = getLawyerPACount(currentResult, 0);\r\n break;\r\n case 2:\r\n //Titles\r\n resultAll = getTitleCount(currentResult, currentResult.length);\r\n break;\r\n default:\r\n resultAll = [];\r\n }\r\n\r\n setStats(resultAll);\r\n setBIIndexs(indexs);\r\n }\r\n }, [currentResult]);\r\n return (\r\n \r\n {isPieChart && selectedBIIndex == 0 && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(BI.READ_CHECKED_OVERLAY_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 0 && item.count)}\r\n labels={stats.map(item => item.college)}\r\n ref={registerTestObject(BI.READ_CHECKED_OVERLAY_COLLEGES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n\r\n {isPieChart && selectedBIIndex == 1 && item.count)}\r\n labels={stats.map(item => item.desc)}\r\n ref={registerTestObject(BI.READ_CHECKED_OVERLAY_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 1 && item.count)}\r\n labels={stats.map(item => item.desc)}\r\n ref={registerTestObject(BI.READ_CHECKED_OVERLAY_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n\r\n {isPieChart && selectedBIIndex == 2 && item.count)}\r\n labels={stats.map(item => item.title)}\r\n ref={registerTestObject(BI.READ_CHECKED_OVERLAY_TITLES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n {!isPieChart && selectedBIIndex == 2 && item.count)}\r\n labels={stats.map(item => item.title)}\r\n ref={registerTestObject(BI.READ_CHECKED_OVERLAY_TITLES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />}\r\n\r\n \r\n );\r\n};\r\nexport default ViewCheckedAllBIs;\r\n","import React, { useRef, useEffect, useState } from 'react';\r\nimport clsx from 'clsx';\r\nimport ViewCheckedAllBIs from \"./ViewCheckedAllBIs\";\r\nimport { BI_READ_VIEW_CHECKED_TITLE } from \"pages/utils/common\";\r\n\r\nconst ViewCheckedBIOverlay = ({ currentResult, selectedBIIndex, isVisible, closeDialog, filterData, chartType }) => {\r\n\r\n useEffect(() => {\r\n reSizeBI();\r\n window.addEventListener('resize', (event) => {\r\n reSizeBI();\r\n });\r\n });\r\n\r\n const reSizeBI = () => {\r\n let headerEle = document.getElementById(\"BIOverlayHeader\");\r\n if (headerEle != null) {\r\n let section = document.getElementById(\"BIOverlaySection\");\r\n let header = headerEle.clientHeight;\r\n let margin = window.getComputedStyle(section)['marginTop'].replace('px', '');\r\n let bodyHeight = window.innerHeight - (margin + header != 0 ? header : 49);\r\n bodyHeight = margin == 0 ? bodyHeight : bodyHeight * 0.9;\r\n document.getElementById(\"BIOverlayBody\").style.height = bodyHeight + 'px';\r\n }\r\n }\r\n\r\n let isPieChart = true;\r\n if (chartType != \"PieChart\")\r\n isPieChart = false;\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    {BI_READ_VIEW_CHECKED_TITLE[selectedBIIndex]}
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default ViewCheckedBIOverlay;","import React, { useEffect, useState } from 'react';\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { HorizontalBarchart } from \"components/charts/HorizontalBarchart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { readcheckedfilterAllCompanyResultsByLawyerIds } from \"state/actions/readCheckedActions\";\r\nimport color from \"../../utils/color\";\r\n\r\nconst getLawyerPACount = (currentPracticeAreasResults, top) => {\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.desc);\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([desc, count]) => ({ desc, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\nconst ReadCheckedPracticeAreaBi = ({ isOverlay = false, closeDialog, currentPaResults, chartType }) => {\r\n const [stats, setStats] = useState([]);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentPaResults) {\r\n let top = 5;\r\n if (isOverlay) {\r\n top = currentPaResults.length;\r\n }\r\n let result = getLawyerPACount(currentPaResults, top);\r\n setStats(result);\r\n }\r\n }\r\n getStats();\r\n }, [currentPaResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().readchecked.readSelectedcurrentPAResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.desc === legendItem.text).map(item => item.lId);\r\n dispatch(readcheckedfilterAllCompanyResultsByLawyerIds(lawyerIds));\r\n if (isOverlay) {\r\n closeDialog();\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n {chartType === \"Pie\" && item.count)}\r\n labels={stats.map(item => item.desc)}\r\n ref={registerTestObject(isOverlay ? BI.READ_CHECKED_OVERLAY_PRACTICE_AREAS_CHART : BI.READ_CHECKED_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />\r\n }\r\n {chartType === \"Bar\" && item.count)}\r\n labels={stats.map(item => item.desc)}\r\n ref={registerTestObject(isOverlay ? BI.READ_CHECKED_OVERLAY_PRACTICE_AREAS_CHART : BI.READ_CHECKED_PRACTICE_AREAS_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />\r\n }\r\n\r\n \r\n );\r\n};\r\nexport default ReadCheckedPracticeAreaBi;\r\n","import React, { useEffect, useState } from 'react';\r\nimport _ from \"lodash\";\r\nimport { Piechart } from \"components/charts/PieChart\";\r\nimport { HorizontalBarchart } from \"components/charts/HorizontalBarchart\";\r\nimport { registerTestObject, BI } from 'utils/testUtils';\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { readcheckedfilterAllCompanyResultsByLawyerIds } from \"state/actions/readCheckedActions\";\r\nimport color from \"../../utils/color\";\r\n\r\nconst getTitleCount = (currentPracticeAreasResults, top) => {\r\n let practiceAreas = currentPracticeAreasResults.map(a => a.title);\r\n let occurrences = {};\r\n for (let i = 0, j = practiceAreas.length; i < j; i++) {\r\n occurrences[practiceAreas[i]] = (occurrences[practiceAreas[i]] || 0) + 1;\r\n }\r\n let result = Object.entries(occurrences).map(([title, count]) => ({ title, count }));\r\n result.sort((a, b) => b.count - a.count);\r\n return result.slice(0, top);\r\n}\r\nconst ReadCheckedTitlesBi = ({ isOverlay = false, closeDialog, currentTitlesResults, chartType }) => {\r\n const [stats, setStats] = useState([]);\r\n const dispatch = useDispatch();\r\n const store = useStore();\r\n useEffect(() => {\r\n async function getStats() {\r\n if (currentTitlesResults) {\r\n let top = 5;\r\n if (isOverlay) {\r\n top = currentTitlesResults.length;\r\n }\r\n let result = getTitleCount(currentTitlesResults, top);\r\n setStats(result);\r\n if(isOverlay){\r\n closeDialog();\r\n }\r\n }\r\n }\r\n\r\n getStats();\r\n }, [currentTitlesResults]);\r\n const filterByLawyerIds = legendItem => {\r\n const result = store.getState().readchecked.readSelectedcurrentTitlesResults;\r\n if (result) {\r\n const lawyerIds = result.filter(item => item.title === legendItem.text).map(item => item.lawyerId);\r\n dispatch(readcheckedfilterAllCompanyResultsByLawyerIds(lawyerIds));\r\n }\r\n }\r\n\r\n return (\r\n \r\n {chartType === \"Pie\" && item.count)}\r\n labels={stats.map(item => item.title)}\r\n ref={registerTestObject(isOverlay ? BI.READ_CHECKED_OVERLAY_TITLES_CHART : BI.READ_CHECKED_TITLES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />\r\n }\r\n {chartType === \"Bar\" && item.count)}\r\n labels={stats.map(item => item.title)}\r\n ref={registerTestObject(isOverlay ? BI.READ_CHECKED_OVERLAY_TITLES_CHART : BI.READ_CHECKED_TITLES_CHART)}\r\n legendCallBack={(event, legendItem) => filterByLawyerIds(legendItem)}\r\n backgroundColors={[...color(stats.length)]} />\r\n }\r\n \r\n );\r\n};\r\nexport default ReadCheckedTitlesBi;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useLocation } from \"react-router\";\r\nimport queryString from \"querystring\";\r\nimport { useDispatch, useSelector, useStore } from \"react-redux\";\r\nimport { ReadCheckedHeader } from \"pages/ReadChecked/ReadCheckedHeader\";\r\nimport { scrollToTop } from 'utils/scrollToTop';\r\nimport {\r\n readcheckedLawyerDataRequested, \r\n resetReadCheckedToInitialState, \r\n readcheckedfilterAllCompanyResultsByLawyerIds\r\n} from 'state/actions/readCheckedActions';\r\nimport {\r\n RBSFilingsDataRequested\r\n} from 'state/actions/readActions';\r\n\r\nimport { ReadCheckedResult } from \"pages/ReadChecked/ReadCheckedResult\";\r\nimport ReadCheckedCollegeBi from \"./ReadCheckedCollegesBi\";\r\nimport ViewCheckedBIOverlay from \"./ViewCheckedBIOverlay\";\r\nimport ReadCheckedPracticeAreaBi from \"./ReadCheckedPracticeAreaBi\";\r\nimport ReadCheckedTitlesBi from \"./ReadCheckedTitlesBi\";\r\nimport NoRecordFound from \"../../components/NoRecordFound\";\r\nimport CreateParentAlertOverlay from \"pages/Common/CreateParentAlertOverlay\";\r\nimport { post } from 'services/ApiService';\r\nimport { onLocationChanged } from \"state/actions/locationActions\";\r\n\r\nexport const ReadChecked = ({ saveAlert }) => {\r\n const location = useLocation();\r\n const { lids } = queryString.parse(location.search.substring(1));\r\n const [isToolbarActive, setIsToolbarActive] = useState(false);\r\n const [isPrinting, setIsPrinting] = useState(false);\r\n const readSelectedcurrentCollegesResults = useSelector(state => state.readchecked.readSelectedcurrentCollegesResults);\r\n const readSelectedcurrentPAResults = useSelector(state => state.readchecked.readSelectedcurrentPAResults);\r\n const readSelectedcurrentTitlesResults = useSelector(state => state.readchecked.readSelectedcurrentTitlesResults);\r\n const [selectedBIIndex, setSelectedBIIndex] = useState(-1);\r\n const [currentResult, setCurrentResult] = useState([]);\r\n const companyLawyers = useSelector(state => state.readchecked.currentLawyers);\r\n const [selections, setSelections] = useState([]);\r\n const [isPieChartVisible, setPieChartVisible] = useState(false);\r\n const [isHorizontalBarVisible, setHorizontalBarVisible] = useState(false);\r\n const [isParentAlertVisible, setParentAlertVisible] = useState(false);\r\n const store = useStore();\r\n const [parentCompanyAlertsPresent, setParentCompanyAlertsPresent] = useState([]);\r\n\r\n const dispatch = useDispatch();\r\n useEffect(() => {\r\n if (lids) {\r\n dispatch(readcheckedLawyerDataRequested(lids));\r\n }\r\n dispatch(RBSFilingsDataRequested());\r\n dispatch(onLocationChanged(\"/readchecked\"));\r\n //scroll to top of page\r\n scrollToTop();\r\n const printMq = typeof window !== 'undefined' && window.matchMedia && window.matchMedia('print');\r\n const mqEvent = mqList => {\r\n if (!mqList.matches)\r\n setIsPrinting(mqList.matches)\r\n };\r\n document.onkeydown = onKeyPress;\r\n printMq.addListener(mqEvent);\r\n if (navigator.userAgent.indexOf(\"Firefox\") != -1) {\r\n window.onafterprint = () => {\r\n setIsPrinting(false)\r\n }\r\n }\r\n return () => {\r\n document.onkeydown = null;\r\n window.onafterprint = null;\r\n printMq.removeListener(mqEvent);\r\n dispatch(resetReadCheckedToInitialState());\r\n }\r\n }, [])\r\n const toggleToolbar = (isActive) => {\r\n setIsToolbarActive(isActive);\r\n }\r\n const print = async e => {\r\n await setIsPrinting(true);\r\n window.print();\r\n await post('./api/logs', { shortInfo: \"Print\", logInfo: companyLawyers.filter(item => item.checked).map(c=>c.lId).toString() })\r\n }\r\n const onKeyPress = e => {\r\n if (e.ctrlKey && e.keyCode === 80 && !isPrinting) {\r\n e.preventDefault();\r\n print();\r\n }\r\n }\r\n\r\n const closeDialog = (e) => {\r\n setPieChartVisible(false);\r\n setHorizontalBarVisible(false);\r\n }\r\n\r\n const filterData = legendItem => {\r\n let lawyerIds;\r\n switch (selectedBIIndex) {\r\n case 0:\r\n lawyerIds = readSelectedcurrentCollegesResults.filter(item => item.attbr === legendItem.text).map(item => item.lId);\r\n break;\r\n case 1:\r\n lawyerIds = readSelectedcurrentPAResults.filter(item => item.desc === legendItem.text).map(item => item.lId);\r\n break;\r\n case 2:\r\n lawyerIds = readSelectedcurrentTitlesResults.filter(item => item.title === legendItem.text).map(item => item.lawyerId);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n dispatch(readcheckedfilterAllCompanyResultsByLawyerIds(lawyerIds));\r\n\r\n setPieChartVisible(false);\r\n setHorizontalBarVisible(false);\r\n setSelectedBIIndex(-1);\r\n }\r\n\r\n const showViewCheckedBIOverlay4Pie = (index) => {\r\n setPieChartVisible(true);\r\n setSelectedBIIndex(index);\r\n\r\n switch (index) {\r\n case 0:\r\n setCurrentResult(readSelectedcurrentCollegesResults);\r\n break;\r\n case 1:\r\n setCurrentResult(readSelectedcurrentPAResults);\r\n break;\r\n case 2:\r\n setCurrentResult(readSelectedcurrentTitlesResults);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n\r\n }\r\n\r\n const showViewCheckedBIOverlay4Horizontal = (index) => {\r\n setHorizontalBarVisible(true);\r\n setSelectedBIIndex(index);\r\n\r\n switch (index) {\r\n case 0:\r\n setCurrentResult(readSelectedcurrentCollegesResults);\r\n break;\r\n case 1:\r\n setCurrentResult(readSelectedcurrentPAResults);\r\n break;\r\n case 2:\r\n setCurrentResult(readSelectedcurrentTitlesResults);\r\n break;\r\n default:\r\n setCurrentResult([]);\r\n }\r\n }\r\n\r\n const showParentAlertOverlay = (data, parentSelections) => {\r\n setParentCompanyAlertsPresent([]);\r\n setSelections(parentSelections)\r\n setParentCompanyAlertsPresent(data);\r\n setParentAlertVisible(true);\r\n };\r\n\r\n const closeParentAlertOverlay = (e) => {\r\n setParentAlertVisible(false);\r\n }\r\n\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n {!isPrinting &&\r\n
    \r\n
    \r\n
    Corporate Counsel
    \r\n
    \r\n
    \r\n
    Colleges
    \r\n {readSelectedcurrentCollegesResults?.length > 0 && (\r\n <>\r\n \r\n

    showViewCheckedBIOverlay4Pie(0)}>Show More - Pie Chart

    \r\n

    showViewCheckedBIOverlay4Horizontal(0)}>Show More - Bar Chart

    \r\n\r\n )}\r\n {readSelectedcurrentCollegesResults?.length === 0 && }\r\n
    \r\n
    \r\n
    Practice Areas
    \r\n {readSelectedcurrentPAResults?.length > 0 && (\r\n <>\r\n \r\n\r\n

    showViewCheckedBIOverlay4Pie(1)}>Show More - Pie Chart

    \r\n

    showViewCheckedBIOverlay4Horizontal(1)}>Show More - Bar Chart

    \r\n\r\n )}\r\n {readSelectedcurrentPAResults?.length === 0 && }\r\n
    \r\n
    \r\n
    Titles
    \r\n {readSelectedcurrentTitlesResults?.length > 0 && (\r\n <>\r\n \r\n\r\n

    showViewCheckedBIOverlay4Pie(2)}>Show More - Pie Chart

    \r\n

    showViewCheckedBIOverlay4Horizontal(2)}>Show More - Bar Chart

    \r\n\r\n )}\r\n {readSelectedcurrentTitlesResults?.length === 0 && }\r\n
    \r\n
    \r\n
    \r\n
    \r\n }\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n {isPieChartVisible && }\r\n {isHorizontalBarVisible && }\r\n {isParentAlertVisible && }\r\n
    \r\n \r\n );\r\n};\r\n\r\n\r\n","import React, { useState } from 'react';\r\nimport { Switch } from 'react-router';\r\nimport Layout from './components/layout/Layout';\r\nimport { ProtectedRoute } from \"./utils/ProtectedRoute\";\r\nimport { get } from 'services/ApiService';\r\n\r\nimport './custom.css';\r\nimport \"./print.css\";\r\nimport Home from \"./pages/Home\";\r\nimport { Search } from \"./pages/Search\";\r\nimport { Read } from \"./pages/Read\";\r\nimport { ReadChecked } from \"./pages/ReadChecked\";\r\nimport { ErrorComponent } from \"./components/ErrorComponent\";\r\n\r\nconst App = () => {\r\n const [AlertUpdated, setAlertUpdated] = useState(false);\r\n const saveAlert = (checkedItems, recipients) => {\r\n let filterChecked = checkedItems.filter(item => item.checked === true);\r\n let alertParentCompaniesIds = filterChecked.map(item => {\r\n return item.fkParentCompany\r\n }).join();\r\n\r\n setAlertUpdated(false);\r\n get('/api/alert?alertParentCompaniesList=' + alertParentCompaniesIds + '&additionalRecipients=' + recipients)\r\n .then(data => {\r\n setAlertUpdated(true);\r\n });\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n } exact={true}/>\r\n }\r\n exact={true}/>\r\n }\r\n exact={true}/>\r\n }\r\n exact={true}/>\r\n \r\n \r\n \r\n );\r\n\r\n}\r\n\r\nexport default App;","// In production, we register a service worker to serve assets from local cache.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\r\n// cached resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\r\n// This link also includes instructions on opting out of this behavior.\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport default function register () {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Lets check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl);\r\n } else {\r\n // Is not local host. Just register service worker\r\n registerValidSW(swUrl);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW (swUrl) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the old content will have been purged and\r\n // the fresh content will have been added to the cache.\r\n // It's the perfect time to display a \"New content is\r\n // available; please refresh.\" message in your web app.\r\n console.log('New content is available; please refresh.');\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker (swUrl) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n if (\r\n response.status === 404 ||\r\n response.headers.get('content-type').indexOf('javascript') === -1\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister () {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","import {\r\n PRODUCTS_LOADED,\r\n RSS_FEED_LOADED,\r\n STATE_MULTIPLE_SELECTED,\r\n STATE_RESET,\r\n STATE_SINGLE_SELECTED,\r\n HOME_DATA_COUNSEL_COUNT_LOADED,\r\n HOME_DATA_TOP_CITIES_LOADED,\r\n HOME_DATA_TOP_COLLEGES_LOADED,\r\n HOME_DATA_TOP_PRACTICEAREAS_LOADED,\r\n HOME_DATA_TOP_YEARADMITTEDTOBAR_LOADED,\r\n TOTAL_COUNSEL_COUNT_LOADED,\r\n TOTAL_COUNSEL_EMAIL_COUNT_LOADED, USER_INFO_LOADED\r\n} from \"../actions/homeActions\";\r\n\r\nconst initialState = {\r\n selectedStates: [],\r\n topCities: [],\r\n topColleges: [],\r\n counselCountByState: [],\r\n topPracticeAreas: [],\r\n topYearAdmittedToBars: [],\r\n totalCounselCount: undefined,\r\n totalCounselEmailCount: 0,\r\n userInfo: {},\r\n rssFeed: [],\r\n products: [],\r\n};\r\nexport default function (state = initialState, action) {\r\n switch (action.type) {\r\n case STATE_SINGLE_SELECTED:\r\n return { ...state, selectedStates: [action.usState] }\r\n case STATE_MULTIPLE_SELECTED:\r\n return { ...state, selectedStates: [...action.usStates] };\r\n case STATE_RESET:\r\n return { ...state, selectedStates: [] };\r\n case HOME_DATA_TOP_CITIES_LOADED:\r\n return { ...state, topCities: [...action.data] };\r\n case HOME_DATA_TOP_COLLEGES_LOADED:\r\n return { ...state, topColleges: [...action.data] };\r\n case HOME_DATA_COUNSEL_COUNT_LOADED:\r\n return { ...state, counselCountByState: [...action.data] };\r\n case HOME_DATA_TOP_PRACTICEAREAS_LOADED:\r\n return { ...state, topPracticeAreas: [...action.data] };\r\n case HOME_DATA_TOP_YEARADMITTEDTOBAR_LOADED:\r\n return { ...state, topYearAdmittedToBars: [...action.data] };\r\n case TOTAL_COUNSEL_EMAIL_COUNT_LOADED:\r\n return { ...state, totalCounselEmailCount: action.data };\r\n case TOTAL_COUNSEL_COUNT_LOADED:\r\n return { ...state, totalCounselCount: action.data };\r\n case USER_INFO_LOADED:\r\n return { ...state, userInfo: action.data };\r\n case RSS_FEED_LOADED:\r\n return { ...state, rssFeed: action.data };\r\n case PRODUCTS_LOADED:\r\n return { ...state, products: action.data };\r\n default:\r\n return state;\r\n }\r\n}","import { SEARCH_RESULT_OPTIONS } from 'pages/utils/common';\r\nexport const getCurrentMainResultsSortBy = (currentMainResults, val) => {\r\n currentMainResults.sort((a, b) => {\r\n switch (val) {\r\n case SEARCH_RESULT_OPTIONS.Company_Name_Value:\r\n if (a.company.toLowerCase() < b.company.toLowerCase()) { return -1; }\r\n if (a.company.toLowerCase() > b.company.toLowerCase()) { return 1; }\r\n return 0;\r\n case SEARCH_RESULT_OPTIONS.Subsidiary_Name_Value:\r\n if (a.subsidiary.toLowerCase() < b.subsidiary.toLowerCase()) { return -1; }\r\n if (a.subsidiary.toLowerCase() > b.subsidiary.toLowerCase()) { return 1; }\r\n return 0;\r\n case SEARCH_RESULT_OPTIONS.Attorneys_last_name_Value:\r\n if (a.lName.toLowerCase() < b.lName.toLowerCase()) { return -1; }\r\n if (a.lName.toLowerCase() > b.lName.toLowerCase()) { return 1; }\r\n return 0;\r\n case SEARCH_RESULT_OPTIONS.Company_City_Value:\r\n if (a.city.toLowerCase() < b.city.toLowerCase()) { return -1; }\r\n if (a.city.toLowerCase() > b.city.toLowerCase()) { return 1; }\r\n return 0;\r\n case SEARCH_RESULT_OPTIONS.Company_State_Value:\r\n if (a.lookupStateProvince.toLowerCase() < b.lookupStateProvince.toLowerCase()) { return -1; }\r\n if (a.lookupStateProvince.toLowerCase() > b.lookupStateProvince.toLowerCase()) { return 1; }\r\n return 0;\r\n default:\r\n }\r\n });\r\n\r\n return currentMainResults;\r\n}","import {\r\n SEARCH_DATA_LOADING,\r\n SEARCH_DATA_LOADED,\r\n SEARCH_CURRENT_MAIN_RESULTS_LOADED,\r\n PRACTICEAREA_DATA_LOADED,\r\n PRACTICEAREA_CURRENT_MAIN_RESULTS_LOADED,\r\n YEARSADMITEDTOBAR_DATA_LOADED,\r\n YEARSADMITEDTOBAR_CURRENT_MAIN_RESULTS_LOADED,\r\n COLLEGES_DATA_LOADED,\r\n COLLEGES_CURRENT_MAIN_RESULTS_LOADED,\r\n FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS,\r\n FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS_ALL,\r\n RESET_ALL_SEARCH_DATA,\r\n FILTER_BY_MAIN_RESULTS_BY_YEAR,\r\n SET_SEARCH_PAGE,\r\n SELECT_SEARCH_ITEM,\r\n RESET_SELECT_SEARCH_ITEM,\r\n SET_SELECT_ALL,\r\n SEARCH_RESET_INITIAL_STATE,\r\n SET_BARCHART_PAGE,\r\n RESET_BARCHART_PAGE,\r\n SEARCH_DATA_SORTBY,\r\n PRACTICEAREA_DATA_BY_SEARCH_LOADED,\r\n COLLEGES_DATA_BY_SEARCH_REQUEST_LOADED,\r\n YEARSADMITEDTOBAR_DATA_BY_SEARCH_LOADED\r\n} from \"../actions/searchActions\";\r\nimport { lawyerCount } from 'pages/utils/lawyerCount';\r\nimport { getCurrentMainResultsSortBy } from 'pages/utils/searchResultSort';\r\n\r\nconst initialState = {\r\n searchPage: 1,\r\n allMainResults: [],\r\n currentMainResults: [],\r\n allPracticeAreasResults: [],\r\n currentPracticeAreasResults: [],\r\n allYearsAdmitedtoBarResults: [],\r\n currentYearsAdmitedtoBarResults: [],\r\n allYearsCollegesResults: [],\r\n currentYearsCollegesResults: [],\r\n cityBiData: [],\r\n statesBiData: [],\r\n barChartPage: 1,\r\n}\r\nexport default function (state = initialState, action) {\r\n switch (action.type) {\r\n case SEARCH_DATA_LOADED:\r\n const cityBiData = lawyerCount(action.payload, \"city\", 0);\r\n const statesBiData = lawyerCount(action.payload, \"lookupStateProvince\", 0);\r\n return { ...state, allMainResults: action.payload, cityBiData, statesBiData };\r\n case RESET_ALL_SEARCH_DATA:\r\n const allResultSet = getCurrentMainResultsSortBy(state.allMainResults, action.sortBy);\r\n return {\r\n ...state,\r\n searchPage: 1,\r\n currentMainResults: allResultSet,\r\n currentPracticeAreasResults: [...state.allPracticeAreasResults],\r\n currentYearsAdmitedtoBarResults: [...state.allYearsAdmitedtoBarResults],\r\n currentYearsCollegesResults: [...state.allYearsCollegesResults],\r\n cityBiData: lawyerCount(state.allMainResults, \"city\", 0),\r\n statesBiData: lawyerCount(state.allMainResults, \"lookupStateProvince\", 0)\r\n };\r\n case SEARCH_CURRENT_MAIN_RESULTS_LOADED:\r\n return {\r\n ...state,\r\n searchPage: 1,\r\n currentMainResults: action.payload\r\n };\r\n case SEARCH_DATA_LOADING:\r\n return { ...state, isLoading: action.loading };\r\n case PRACTICEAREA_DATA_BY_SEARCH_LOADED:\r\n case PRACTICEAREA_DATA_LOADED:\r\n return { ...state, allPracticeAreasResults: action.payload };\r\n case PRACTICEAREA_CURRENT_MAIN_RESULTS_LOADED:\r\n return { ...state, currentPracticeAreasResults: action.payload };\r\n case YEARSADMITEDTOBAR_DATA_BY_SEARCH_LOADED:\r\n case YEARSADMITEDTOBAR_DATA_LOADED:\r\n return { ...state, allYearsAdmitedtoBarResults: action.payload };\r\n case YEARSADMITEDTOBAR_CURRENT_MAIN_RESULTS_LOADED:\r\n return { ...state, currentYearsAdmitedtoBarResults: action.payload };\r\n case COLLEGES_DATA_BY_SEARCH_REQUEST_LOADED:\r\n case COLLEGES_DATA_LOADED:\r\n return { ...state, allYearsCollegesResults: action.payload };\r\n case COLLEGES_CURRENT_MAIN_RESULTS_LOADED:\r\n return { ...state, currentYearsCollegesResults: action.payload };\r\n case FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS:\r\n const filteredMainResults = state.allMainResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lawyerId) > -1)\r\n const filteredColleges = state.currentYearsCollegesResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lId) !== -1);\r\n const filteredPracticeAreas = state.currentPracticeAreasResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lId) !== -1);\r\n const filteredYearAdmittedToBar = state.currentYearsAdmitedtoBarResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lid) !== -1);\r\n return {\r\n ...state,\r\n searchPage: 1,\r\n currentMainResults: filteredMainResults,\r\n currentYearsCollegesResults: filteredColleges,\r\n currentYearsAdmitedtoBarResults: filteredYearAdmittedToBar,\r\n currentPracticeAreasResults: filteredPracticeAreas,\r\n cityBiData: lawyerCount(filteredMainResults, \"city\", 0),\r\n statesBiData: lawyerCount(filteredMainResults, \"lookupStateProvince\", 0)\r\n };\r\n case FILTER_BY_MAIN_RESULTS_BY_LAWYER_IDS_ALL:\r\n let filteredMainResultsAll = state.allMainResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lawyerId) > -1)\r\n const filteredCollegesAll = state.allYearsCollegesResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lId) !== -1);\r\n const filteredPracticeAreasAll = state.allPracticeAreasResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lId) !== -1);\r\n const filteredYearAdmittedToBarAll = state.allYearsAdmitedtoBarResults.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lid) !== -1);\r\n filteredMainResultsAll = getCurrentMainResultsSortBy(filteredMainResultsAll, action.sortBy);\r\n return {\r\n ...state,\r\n searchPage: 1,\r\n currentMainResults: filteredMainResultsAll,\r\n currentYearsCollegesResults: filteredCollegesAll,\r\n currentYearsAdmitedtoBarResults: filteredYearAdmittedToBarAll,\r\n currentPracticeAreasResults: filteredPracticeAreasAll,\r\n cityBiData: lawyerCount(filteredMainResultsAll, \"city\", 5),\r\n statesBiData: lawyerCount(filteredMainResultsAll, \"lookupStateProvince\", 5)\r\n };\r\n case FILTER_BY_MAIN_RESULTS_BY_YEAR:\r\n const filteredYearAdmittedToBarByYear = state.allYearsAdmitedtoBarResults.filter(item => action.year === item.attbr);\r\n const lawyerIds = filteredYearAdmittedToBarByYear.map(item => item.lid);\r\n const filteredMainResultsByYear = state.allMainResults.filter(item => lawyerIds.findIndex(lawyerId => lawyerId === item.lawyerId) > -1)\r\n const filteredCollegesByYear = state.allYearsCollegesResults.filter(item => lawyerIds.findIndex(lawyerId => lawyerId === item.lId) !== -1);\r\n const filteredPracticeAreasByYear = state.allPracticeAreasResults.filter(item => lawyerIds.findIndex(lawyerId => lawyerId === item.lId) !== -1);\r\n return {\r\n ...state,\r\n currentMainResults: filteredMainResultsByYear,\r\n currentYearsCollegesResults: filteredCollegesByYear,\r\n currentYearsAdmitedtoBarResults: filteredYearAdmittedToBarByYear,\r\n currentPracticeAreasResults: filteredPracticeAreasByYear,\r\n cityBiData: lawyerCount(filteredMainResultsByYear, \"city\", 5),\r\n statesBiData: lawyerCount(filteredMainResultsByYear, \"lookupStateProvince\", 5)\r\n };\r\n case SET_SEARCH_PAGE:\r\n return { ...state, searchPage: action.payload };\r\n case SELECT_SEARCH_ITEM:\r\n const currentResults = state.currentMainResults;\r\n return {\r\n ...state, currentMainResults: currentResults.map((item, index) => {\r\n if (item.lawyerId !== action.lId) {\r\n return item\r\n }\r\n return {\r\n ...item,\r\n checked: action.checked\r\n }\r\n })\r\n };\r\n case RESET_SELECT_SEARCH_ITEM:\r\n return {\r\n ...state, currentMainResults: state.currentMainResults.map((item, index) => {\r\n if (item.checked) {\r\n return {\r\n ...item,\r\n checked: false\r\n }\r\n }\r\n return item;\r\n })\r\n };\r\n case SET_SELECT_ALL:\r\n return {\r\n ...state, currentMainResults: state.currentMainResults.map((item, index) => {\r\n return {\r\n ...item,\r\n checked: action.selectAll\r\n }\r\n })\r\n };\r\n case SEARCH_RESET_INITIAL_STATE:\r\n return {\r\n ...initialState\r\n };\r\n case SET_BARCHART_PAGE:\r\n return { ...state, barChartPage: action.payload };\r\n case RESET_BARCHART_PAGE:\r\n return {\r\n ...state, barChartPage: 1,\r\n };\r\n case SEARCH_DATA_SORTBY:\r\n let currentMainResultsSortBy = getCurrentMainResultsSortBy(state.currentMainResults, action.val);\r\n return {\r\n ...state,\r\n searchPage: 1,\r\n currentMainResults: currentMainResultsSortBy \r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import {\r\n COMPANY_DATA_LOADED,\r\n COMPANYLAWYERS_DATA_LOADED,\r\n PARENTCOMPANYLAWYERS_DATA_LOADED,\r\n FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS,\r\n LAWYER_DATA_LOADED,\r\n UPDATE_COMPANYLAWYERS_DATA,\r\n COMPANY_TITLE_DATA_LOADED,\r\n COMPANY_PA_DATA_LOADED,\r\n COMPANY_COLLEGE_DATA_LOADED,\r\n PARENTCOMPANY_DATA_LOADED,\r\n RESET_ALL_READ_DATA,\r\n RBSFILINGS_DATA_LOADED, READ_RESET_INITIAL_STATE\r\n} from \"state/actions/readActions\";\r\n\r\nconst initialState = {\r\n isToolbarActive: false,\r\n companyResult: [],\r\n allCompanyLawyers: [],\r\n lawyerIds: [],\r\n currentCompanyLawyers: [],\r\n allCollegesResults: [],\r\n currentCollegesResults: [],\r\n allPaResults: [],\r\n currentPaResults: [],\r\n allTitlesResults: [],\r\n currentTitlesResults: [],\r\n rbsfilingsInfo: null\r\n}\r\nexport default function (state = initialState, action) {\r\n switch (action.type) {\r\n case COMPANY_DATA_LOADED:\r\n return {...state, companyResult: action.payload};\r\n case PARENTCOMPANY_DATA_LOADED:\r\n return {...state, parentCompanyResult: action.payload};\r\n case COMPANYLAWYERS_DATA_LOADED:\r\n return {...state, allCompanyLawyers: action.payload};\r\n case PARENTCOMPANYLAWYERS_DATA_LOADED:\r\n return {...state, allCompanyLawyers: action.payload};\r\n case LAWYER_DATA_LOADED:\r\n return {...state, allCompanyLawyers: action.payload};\r\n case FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS:\r\n const filteredCompanyLawyers = state.allCompanyLawyers?.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lId) > -1);\r\n const filteredColleges = state.currentCollegesResults?.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lawyerId) !== -1);\r\n const filteredPracticeAreas = state.currentPaResults?.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lawyerId) !== -1);\r\n const filteredTitles = state.currentTitlesResults?.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lawyerId) !== -1);\r\n return {\r\n ...state,\r\n lawyerIds: action.lawyerIds,\r\n currentCompanyLawyers: filteredCompanyLawyers,\r\n currentCollegesResults: filteredColleges,\r\n currentPaResults: filteredPracticeAreas,\r\n currentTitlesResults: filteredTitles\r\n };\r\n case RESET_ALL_READ_DATA:\r\n return {\r\n ...state,\r\n lawyerIds: state.allCompanyLawyers.map(item => item.lId),\r\n currentCompanyLawyers: state.allCompanyLawyers,\r\n currentCollegesResults: state.allCollegesResults,\r\n currentPaResults: state.allPaResults,\r\n currentTitlesResults: state.allTitlesResults,\r\n };\r\n case UPDATE_COMPANYLAWYERS_DATA:\r\n return {\r\n ...state,\r\n currentCompanyLawyers: action.payload\r\n };\r\n case COMPANY_COLLEGE_DATA_LOADED:\r\n return {\r\n ...state,\r\n currentCollegesResults: action.payload,\r\n allCollegesResults: action.payload\r\n }\r\n case COMPANY_PA_DATA_LOADED:\r\n return {\r\n ...state,\r\n currentPaResults: action.payload,\r\n allPaResults: action.payload\r\n }\r\n case COMPANY_TITLE_DATA_LOADED:\r\n return {\r\n ...state,\r\n currentTitlesResults: action.payload,\r\n allTitlesResults: action.payload\r\n }\r\n case RBSFILINGS_DATA_LOADED:\r\n return {\r\n ...state,\r\n rbsfilingsInfo: action.payload\r\n }\r\n case READ_RESET_INITIAL_STATE:\r\n return {\r\n ...initialState\r\n }\r\n default:\r\n return state;\r\n }\r\n}\r\n","import {\r\n READCHECKED_COMPANY_DATA_LOADED,\r\n READCHECKED_LAWYER_DATA_LOADED,\r\n LAWYERS_COLLEGE_DATA_LOADED,\r\n LAWYERS_PA_DATA_LOADED,\r\n LAWYERS_TITLES_DATA_LOADED,\r\n READCHECKED_FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS,\r\n READCHECKED_RESET_ALL_READ_DATA,\r\n READCHECKED_SET_SELECT_ALL,\r\n READCHECKED_UPDATE_COMPANY_LAWYERS_DATA, READCHECKED_RESET_INITIAL_STATE\r\n} from \"state/actions/readCheckedActions\";\r\n\r\nconst initialState = {\r\n isToolbarActive: false,\r\n companyResult: [],\r\n allLawyers: [],\r\n lawyerIds: [],\r\n currentLawyers: [],\r\n readSelectedallCollegesResults: [],\r\n readSelectedallPAResults: [],\r\n readSelectedallTitlesResults: [],\r\n readSelectedcurrentCollegesResults: [],\r\n readSelectedcurrentPAResults: [],\r\n readSelectedcurrentTitlesResults: []\r\n}\r\nexport default function (state = initialState, action) {\r\n switch (action.type) {\r\n case READCHECKED_COMPANY_DATA_LOADED:\r\n return { ...state, companyResult: action.payload };\r\n case READCHECKED_LAWYER_DATA_LOADED:\r\n return { ...state, allLawyers: action.payload, currentLawyers: action.payload };\r\n case LAWYERS_COLLEGE_DATA_LOADED:\r\n return {\r\n ...state,\r\n readSelectedcurrentCollegesResults: action.payload,\r\n readSelectedallCollegesResults: action.payload\r\n }\r\n case LAWYERS_PA_DATA_LOADED:\r\n return {\r\n ...state,\r\n readSelectedcurrentPAResults: action.payload,\r\n readSelectedallPAResults: action.payload\r\n }\r\n case LAWYERS_TITLES_DATA_LOADED:\r\n return {\r\n ...state,\r\n readSelectedcurrentTitlesResults: action.payload,\r\n readSelectedallTitlesResults: action.payload\r\n }\r\n case READCHECKED_FILTER_ALL_COMPANY_RESULTS_BY_LAWYER_IDS:\r\n const readselectedfilteredCompanyLawyers = state.allLawyers?.filter(item => action.lawyerIds.findIndex(lawyerId => lawyerId === item.lId) > -1);\r\n const readSelectedfilteredColleges = state.readSelectedcurrentCollegesResults?.filter(item => action.lawyerIds.findIndex(lId => lId === item.lId) !== -1);\r\n const readSelectedfilteredPracticeAreas = state.readSelectedcurrentPAResults?.filter(item => action.lawyerIds.findIndex(lId => lId === item.lId) !== -1);\r\n const readSelectedfilteredTitles = state.readSelectedcurrentTitlesResults?.filter(item => action.lawyerIds.findIndex(lId => lId === item.lawyerId) !== -1);\r\n return {\r\n ...state,\r\n lawyerIds: action.lawyerIds,\r\n currentLawyers: readselectedfilteredCompanyLawyers,\r\n readSelectedcurrentCollegesResults: readSelectedfilteredColleges,\r\n readSelectedcurrentPAResults: readSelectedfilteredPracticeAreas,\r\n readSelectedcurrentTitlesResults: readSelectedfilteredTitles\r\n };\r\n case READCHECKED_RESET_ALL_READ_DATA:\r\n return {\r\n ...state,\r\n lawyerIds: state.allLawyers.map(item => item.lId),\r\n currentLawyers: state.allLawyers,\r\n readSelectedcurrentCollegesResults: state.readSelectedallCollegesResults,\r\n readSelectedcurrentPAResults: state.readSelectedallPAResults,\r\n readSelectedcurrentTitlesResults: state.readSelectedallTitlesResults,\r\n };\r\n case READCHECKED_SET_SELECT_ALL:\r\n return {\r\n ...state, currentLawyers: state.currentLawyers.map((item, index) => {\r\n return {\r\n ...item,\r\n checked: action.readCheckedSelectAll\r\n }\r\n })\r\n };\r\n case READCHECKED_UPDATE_COMPANY_LAWYERS_DATA:\r\n return {\r\n ...state,\r\n currentLawyers: action.payload\r\n };\r\n case READCHECKED_RESET_INITIAL_STATE:\r\n return {\r\n ...initialState\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import {\r\n SPINNER_CHANGED,\r\n} from \"../actions/spinnerActions\";\r\n\r\nconst initialState = {\r\n isLoading: false,\r\n};\r\n\r\nexport default function (state = initialState, action) {\r\n switch (action.type) {\r\n case SPINNER_CHANGED:\r\n return {\r\n ...state,\r\n isLoading: action.isLoading,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { LOCATION_CHANGED } from \"../actions/locationActions\";\r\n\r\nconst initialState = {\r\n previousLocation: \"/\"\r\n}\r\nexport default function locationReducer(state = initialState, action) {\r\n switch (action.type) {\r\n case LOCATION_CHANGED:\r\n state.previousLocation = action.pathname;\r\n return { ...state };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { combineReducers } from \"redux\";\r\nimport homeReducer from \"./homeReducer\";\r\nimport searchReducer from \"./searchReducer\";\r\nimport readReducer from \"./readReducer\";\r\nimport readCheckedReducer from \"./readCheckedReducer\";\r\nimport spinnerReducer from \"./spinnerReducer\";\r\nimport { loadingReducer } from \"./loadingReducer\";\r\nimport locationReducer from \"./locationReducer\";\r\n\r\nexport default combineReducers({\r\n home: homeReducer,\r\n search: searchReducer,\r\n read: readReducer,\r\n readchecked: readCheckedReducer,\r\n spinner: spinnerReducer,\r\n loading: loadingReducer,\r\n location: locationReducer,\r\n});\r\n","export const loadingReducer = (state = {}, action) => {\r\n const { type } = action;\r\n const matches = /(.*)_(REQUEST|SUCCESS|FAILURE|LOADED)/.exec(type);\r\n\r\n // not a *_REQUEST / *_SUCCESS / *_FAILURE actions, so we ignore them\r\n if (!matches) return state;\r\n\r\n const [, requestName, requestState] = matches;\r\n return {\r\n ...state,\r\n // Store whether a request is happening at the moment or not\r\n // e.g. will be true when receiving GET_TODOS_REQUEST\r\n // and false when receiving GET_TODOS_SUCCESS / GET_TODOS_FAILURE\r\n [requestName]: requestState === 'REQUEST',\r\n };\r\n};\r\n","import {get} from \"./ApiService\";\r\n\r\nexport const getSearchResults = (payload) => {\r\n let url = 'api/search?';\r\n return get(preparQueryString(url, payload)).then(response =>\r\n response\r\n );\r\n};\r\n\r\nfunction preparQueryString(url, payload) {\r\n if (payload.cn) {\r\n url = url.concat(\"cn=\", encodeURIComponent(payload.cn));\r\n }\r\n if (payload.cc) {\r\n url = url.concat(\"&cc=\", encodeURIComponent(payload.cc));\r\n }\r\n if (payload.cs) {\r\n url = url.concat(\"&cs=\", encodeURIComponent(payload.cs));\r\n }\r\n if (payload.an) {\r\n url = url.concat(\"&an=\", encodeURIComponent(payload.an));\r\n }\r\n if (payload.ap) {\r\n url = url.concat(\"&ap=\", encodeURIComponent(payload.ap));\r\n }\r\n if (payload.auj) {\r\n url = url.concat(\"&auj=\", encodeURIComponent(payload.auj));\r\n }\r\n if (payload.anj) {\r\n url = url.concat(\"&anj=\", encodeURIComponent(payload.anj));\r\n }\r\n if (payload.at) {\r\n url = url.concat(\"&at=\", encodeURIComponent(payload.at));\r\n }\r\n if (payload.am) {\r\n url = url.concat(\"&am=\", encodeURIComponent(payload.am));\r\n }\r\n if (payload.al) {\r\n url = url.concat(\"&al=\", encodeURIComponent(payload.al));\r\n }\r\n if (payload.ad) {\r\n url = url.concat(\"&ad=\", encodeURIComponent(payload.ad));\r\n }\r\n if (payload.yf) {\r\n url = url.concat(\"&yf=\", encodeURIComponent(payload.yf));\r\n }\r\n if (payload.yt) {\r\n url = url.concat(\"&yt=\", encodeURIComponent(payload.yt));\r\n }\r\n\tif (payload.yb) {\r\n url = url.concat(\"&yb=\", payload.yb);\r\n }\r\n if (payload.gc) {\r\n url = url.concat(\"&gc=\", payload.gc);\r\n }\r\n if (payload.em) {\r\n url = url.concat(\"&em=\", payload.em);\r\n }\r\n return url;\r\n}\r\n","export function prepareQueryString(url, payload) {\r\n if (payload.cn) {\r\n url = url.concat(\"cn=\", encodeURIComponent(payload.cn));\r\n }\r\n if (payload.cc) {\r\n url = url.concat(\"&cc=\", encodeURIComponent(payload.cc));\r\n }\r\n if (payload.cs) {\r\n url = url.concat(\"&cs=\", encodeURIComponent(payload.cs));\r\n }\r\n if (payload.an) {\r\n url = url.concat(\"&an=\", encodeURIComponent(payload.an));\r\n }\r\n if (payload.ap) {\r\n url = url.concat(\"&ap=\", encodeURIComponent(payload.ap));\r\n }\r\n if (payload.auj) {\r\n url = url.concat(\"&auj=\", encodeURIComponent(payload.auj));\r\n }\r\n if (payload.anj) {\r\n url = url.concat(\"&anj=\", encodeURIComponent(payload.anj));\r\n }\r\n if (payload.at) {\r\n url = url.concat(\"&at=\", encodeURIComponent(payload.at));\r\n }\r\n if (payload.am) {\r\n url = url.concat(\"&am=\", encodeURIComponent(payload.am));\r\n }\r\n if (payload.al) {\r\n url = url.concat(\"&al=\", encodeURIComponent(payload.al));\r\n }\r\n if (payload.ad) {\r\n url = url.concat(\"&ad=\", encodeURIComponent(payload.ad));\r\n }\r\n if (payload.yf) {\r\n url = url.concat(\"&yf=\", encodeURIComponent(payload.yf));\r\n }\r\n if (payload.yt) {\r\n url = url.concat(\"&yt=\", encodeURIComponent(payload.yt));\r\n }\r\n if (payload.yb) {\r\n url = url.concat(\"&yb=\", payload.yb);\r\n }\r\n if (payload.gc) {\r\n url = url.concat(\"&gc=\", payload.gc);\r\n }\r\n if (payload.em) {\r\n url = url.concat(\"&em=\", payload.em);\r\n }\r\n return url;\r\n}","import { get, post } from \"./ApiService\";\r\nimport { prepareQueryString } from \"utils/prepareQueryString\";\r\n\r\nexport const getPracticeAreasBySearch = (payload) => {\r\n let url = 'api/practicearea/byBISRPSearch?';\r\n return get(prepareQueryString(url, payload)).then(response =>\r\n response\r\n );\r\n};\r\nexport const getPracticeAreasByLawyerId = async (lawyerIds) => {\r\n let url = 'api/practicearea/byLawyerId';\r\n return await post(url, {lawyerIds});\r\n};","import { get, post } from \"./ApiService\";\r\nimport { prepareQueryString } from \"utils/prepareQueryString\";\r\n\r\nexport const getCollegesBySearch = async payload => {\r\n let url = 'api/colleges/byBISRPSearch?';\r\n return await get(prepareQueryString(url, payload));\r\n};\r\nexport const getCollegesByLawyerId = async lawyerIds => {\r\n let url = 'api/colleges/byLawyerId';\r\n return await post(url, {lawyerIds});\r\n};","import { get, post } from \"./ApiService\";\r\nimport { prepareQueryString } from \"utils/prepareQueryString\";\r\n\r\nexport const getYearsAdmittedtoBarResultsBySearch = (payload) => {\r\n let url = 'api/yearsadmitedtobar/byBISRPSearch?';\r\n return get(prepareQueryString(url, payload)).then(response =>\r\n response\r\n );\r\n};\r\nexport const getYearsAdmitedtoBarResults = async (lawyerIds) => {\r\n let url = 'api/yearsadmitedtobar/byLawyerId';\r\n return await post(url, {lawyerIds});\r\n};","import { call, put, fork, takeLatest } from \"redux-saga/effects\";\r\nimport {\r\n SEARCH_DATA_REQUESTED,\r\n PRACTICEAREA_DATA_REQUESTED,\r\n YEARSADMITEDTOBAR_DATA_REQUESTED,\r\n COLLEGES_DATA_REQUESTED,\r\n YEARSADMITEDTOBAR_DATA_BY_SEARCH_REQUEST,\r\n COLLEGES_DATA_BY_SEARCH_REQUEST,\r\n PRACTICEAREA_DATA_BY_SEARCH_REQUEST,\r\n practiceAreaDataLazyLoading,\r\n collegesDataLazyLoading,\r\n yearsAdmittedToBarDataLazyLoading,\r\n collegesDataRequested,\r\n collegesDataLoaded,\r\n collegesCurrentMainDataLoaded,\r\n searchDataLoaded,\r\n searchCurrentMainResultsLoaded,\r\n practiceAreaDataLoaded,\r\n practiceAreaDataRequested,\r\n practiceAreaCurrentMainResultsLoaded,\r\n yearsAdmitedtoBarDataLoaded,\r\n yearsAdmitedtoBarCurrentMainResultsLoaded,\r\n yearsAdmitedtoBarDataRequested,\r\n collegesDataBySearchLoaded,\r\n yearsAdmitedtoBarDataBySearchLoaded,\r\n practiceAreaDataBySearchLoaded,\r\n} from '../actions/searchActions';\r\nimport { spinnerChangedAction } from \"../actions/spinnerActions\";\r\nimport { getSearchResults } from '../../services/searchDataService';\r\nimport { getPracticeAreasByLawyerId, getPracticeAreasBySearch } from '../../services/practiceAreaDataService';\r\nimport { getCollegesByLawyerId, getCollegesBySearch } from '../../services/collegeDataService';\r\nimport {\r\n getYearsAdmitedtoBarResults,\r\n getYearsAdmittedtoBarResultsBySearch\r\n} from '../../services/yearsAdmitedtoBarDataService';\r\nimport { logAndRedirectToErrorPage } from \"../../components/ErrorComponent\";\r\nimport { history } from \"../../routerHistory\";\r\nimport { AuthenticationError } from \"../../common/AuthenticationError\";\r\nimport { SEARCH_RESULT_OPTIONS } from 'pages/utils/common';\r\nimport { getCurrentMainResultsSortBy } from 'pages/utils/searchResultSort';\r\n\r\nfunction* getPracticeAreaResultsLazyLoading(action) {\r\n try {\r\n const practiceAreaResults = yield call(getPracticeAreasBySearch, action.payload);\r\n yield put(practiceAreaDataBySearchLoaded(practiceAreaResults));\r\n yield put(practiceAreaCurrentMainResultsLoaded(practiceAreaResults));\r\n }\r\n catch (e) {\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n\r\n}\r\nfunction* getYearsAdmitedtoBarResultsLazyLoading(action) {\r\n try { \r\n const yearAdmittedResults = yield call(getYearsAdmittedtoBarResultsBySearch, action.payload);\r\n yield put(yearsAdmitedtoBarDataBySearchLoaded(yearAdmittedResults));\r\n yield put(yearsAdmitedtoBarCurrentMainResultsLoaded(yearAdmittedResults));\r\n }\r\n catch (e) { \r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n\r\n}\r\nfunction* getCollegesLazyLoading(action) {\r\n try {\r\n const collegesResults = yield call(getCollegesBySearch, action.payload);\r\n yield put(collegesDataBySearchLoaded(collegesResults));\r\n yield put(collegesCurrentMainDataLoaded(collegesResults));\r\n }\r\n catch (e) {\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* getSearchRsults(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const searchResult = yield call(getSearchResults, action.payload);\r\n //concat lawyer ids and trigger practice areas search\r\n if (searchResult.results && searchResult.results.length > 0) {\r\n yield put(collegesDataLazyLoading(action.payload));\r\n yield put(yearsAdmittedToBarDataLazyLoading(action.payload));\r\n yield put(practiceAreaDataLazyLoading(action.payload));\r\n searchResult.results.forEach((resultItem) => {\r\n if (!resultItem.company) resultItem.company = '';\r\n if (!resultItem.subsidiary) resultItem.subsidiary = '';\r\n if (!resultItem.lName) resultItem.lName = '';\r\n if (!resultItem.city) resultItem.city = '';\r\n if (!resultItem.lookupStateProvince) resultItem.lookupStateProvince = ''; \r\n });\r\n searchResult.results = getCurrentMainResultsSortBy(searchResult.results, SEARCH_RESULT_OPTIONS.Company_Name_Value);\r\n yield put(searchDataLoaded(searchResult.results));\r\n yield put(searchCurrentMainResultsLoaded(searchResult.results));\r\n } else {\r\n //for No results\r\n yield put(searchDataLoaded(searchResult.results));\r\n yield put(searchCurrentMainResultsLoaded(searchResult.results));\r\n yield put(practiceAreaDataRequested(\"\"));\r\n yield put(yearsAdmitedtoBarDataRequested(\"\"));\r\n yield put(collegesDataRequested(\"\"));\r\n }\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* getPracticeAreaRsults(action) {\r\n try {\r\n const results = yield call(getPracticeAreasByLawyerId, action.querystring);\r\n yield put(practiceAreaDataLoaded(results));\r\n yield put(practiceAreaCurrentMainResultsLoaded(results));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* getYearsAdmitedtoBarRsults(action) {\r\n try {\r\n const results = yield call(getYearsAdmitedtoBarResults, action.querystring);\r\n yield put(yearsAdmitedtoBarDataLoaded(results));\r\n yield put(yearsAdmitedtoBarCurrentMainResultsLoaded(results));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* getCollegesResults(action) {\r\n try {\r\n const results = yield call(getCollegesByLawyerId, action.payload);\r\n yield put(collegesDataLoaded(results));\r\n yield put(collegesCurrentMainDataLoaded(results));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* watchGetPracticeAreResults() {\r\n yield takeLatest(PRACTICEAREA_DATA_REQUESTED, getPracticeAreaRsults);\r\n}\r\nfunction* watchGetSearchResults() {\r\n yield takeLatest(SEARCH_DATA_REQUESTED, getSearchRsults);\r\n}\r\nfunction* watchGetYearsAdmitedtoBarResults() {\r\n yield takeLatest(YEARSADMITEDTOBAR_DATA_REQUESTED, getYearsAdmitedtoBarRsults);\r\n}\r\nfunction* watchGetCollegesResults() {\r\n yield takeLatest(COLLEGES_DATA_REQUESTED, getCollegesResults);\r\n}\r\nfunction* watchCollegesDataLazyLoading() {\r\n yield takeLatest(COLLEGES_DATA_BY_SEARCH_REQUEST, getCollegesLazyLoading);\r\n}\r\nfunction* watchYearsAdmittedToBarDataLazyLoading() {\r\n yield takeLatest(YEARSADMITEDTOBAR_DATA_BY_SEARCH_REQUEST, getYearsAdmitedtoBarResultsLazyLoading);\r\n}\r\nfunction* watchPracticeAreaDataLazyLoading() {\r\n yield takeLatest(PRACTICEAREA_DATA_BY_SEARCH_REQUEST, getPracticeAreaResultsLazyLoading);\r\n}\r\nexport default [\r\n fork(watchGetSearchResults),\r\n fork(watchGetPracticeAreResults),\r\n fork(watchGetYearsAdmitedtoBarResults),\r\n fork(watchGetCollegesResults),\r\n fork(watchCollegesDataLazyLoading),\r\n fork(watchYearsAdmittedToBarDataLazyLoading),\r\n fork(watchPracticeAreaDataLazyLoading)\r\n];","import {get} from \"./ApiService\";\r\nimport querystring from \"query-string\";\r\n\r\nexport const getParentCompanyData = (id) => {\r\n let url = 'api/company/' + id + \"/true\";\r\n return get(url).then(response =>\r\n response\r\n );\r\n};\r\nexport const getCompanyData = (id) => {\r\n let url = 'api/company/' + id ;\r\n return get(url).then(response =>\r\n response\r\n );\r\n};\r\nexport const getCompanyLawyersData = (id) => {\r\n let url = 'api/companylawyer/' + id;\r\n return get(url).then(response =>\r\n response\r\n );\r\n};\r\nexport const getParentCompanyLawyersData = (id) => {\r\n let url = 'api/companylawyer/byparentcompanyid/' + id;\r\n return get(url).then(response =>\r\n response\r\n );\r\n};\r\nexport const getLawyerData = (id) => {\r\n let url = 'api/lawyer/' + id;\r\n return get(url).then(response =>\r\n response\r\n );\r\n};\r\nexport const getCompanyColleges = (parentCompanyId, companyId, lawyerId) => {\r\n let url = `/api/colleges/byLawyerIdAndCompanyId?`;\r\n let queryString = querystring.stringify({companyId, parentCompanyId, lawyerId});\r\n url = url.concat(queryString);\r\n return get(url).then(response=> response);\r\n}\r\nexport const getCompanyPa = (parentCompanyId, companyId, lawyerId) => {\r\n let url = `/api/practiceArea/byLawyerIdAndCompanyId?`;\r\n let queryString = querystring.stringify({companyId, parentCompanyId, lawyerId});\r\n url = url.concat(queryString);\r\n return get(url).then(response=> response);\r\n}\r\nexport const getCompanyTitles = (parentCompanyId, companyId, lawyerId) => {\r\n let url = `/api/company/companyPositions?`;\r\n let queryString = querystring.stringify({companyId, parentCompanyId, lawyerId});\r\n url = url.concat(queryString);\r\n return get(url).then(response=> response);\r\n}","import { get } from \"./ApiService\";\r\n\r\nexport const getRBSFilingsInfo = () => {\r\n let url = 'api/RBSFilings';\r\n return get(url).then(response =>\r\n response\r\n );\r\n};","import { call, put, fork, takeLatest, all } from \"redux-saga/effects\";\r\nimport {\r\n COMPANY_DATA_REQUESTED,\r\n COMPANYLAWYERS_DATA_REQUESTED,\r\n COMPANY_COLLEGE_DATA_REQUESTED,\r\n COMPANY_TITLE_DATA_REQUESTED,\r\n COMPANY_PA_DATA_REQUESTED,\r\n LAWYER_DATA_REQUESTED,\r\n PARENTCOMPANY_DATA_REQUESTED,\r\n PARENTCOMPANYLAWYERS_DATA_REQUESTED,\r\n RBSFILINGS_DATA_REQUESTED,\r\n parentCompanyDataLoaded,\r\n companyDataLoaded,\r\n companyLawyersDataLoaded,\r\n parentCompanyLawyersDataLoaded,\r\n filterAllCompanyResultsByLawyerIds,\r\n lawyerDataLoaded,\r\n companyCollegeDataLoaded,\r\n companyPaDataLoaded,\r\n companyTitleDataLoaded,\r\n companyCollegeDataRequested,\r\n companyTitleDataRequested,\r\n companyPaDataRequested,\r\n RBSFilingsDataLoaded,\r\n RBSFilingsDataRequested\r\n} from 'state/actions/readActions';\r\nimport {\r\n getCompanyData,\r\n getParentCompanyData,\r\n getCompanyLawyersData,\r\n getLawyerData,\r\n getCompanyColleges,\r\n getCompanyPa,\r\n getCompanyTitles,\r\n getParentCompanyLawyersData\r\n} from 'services/readDataService';\r\nimport { getRBSFilingsInfo } from 'services/RBSFilingsService';\r\nimport { spinnerChangedAction } from \"../actions/spinnerActions\";\r\nimport { history } from \"routerHistory\"\r\nimport { logAndRedirectToErrorPage } from \"../../components/ErrorComponent\";\r\nimport { AuthenticationError } from \"../../common/AuthenticationError\";\r\n\r\nfunction* getCompanyResult(action) {\r\n try {\r\n const searchResult = yield call(getCompanyData, action.payload);\r\n yield put(companyDataLoaded(searchResult));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getParentCompanyResult(action) {\r\n try {\r\n const searchResult = yield call(getParentCompanyData, action.payload);\r\n yield put(parentCompanyDataLoaded(searchResult));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getCompanyLawyersResult(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const searchResult = yield call(getCompanyLawyersData, action.payload);\r\n yield put(companyLawyersDataLoaded(searchResult));\r\n yield all([\r\n put(companyCollegeDataRequested(null, action.payload, null)),\r\n put(companyTitleDataRequested(null, action.payload, null)),\r\n put(companyPaDataRequested(null, action.payload, null))\r\n ]);\r\n //get lawyer Ids and filter all results based on lawyerids\r\n const lawyerIds = searchResult.map(item => item.lId);\r\n yield put(filterAllCompanyResultsByLawyerIds(lawyerIds));\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n\r\n}\r\n\r\nfunction* getParentCompanyLawyersResult(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const searchResult = yield call(getParentCompanyLawyersData, action.payload);\r\n yield put(parentCompanyLawyersDataLoaded(searchResult));\r\n yield all([\r\n put(companyCollegeDataRequested(action.payload, null)),\r\n put(companyTitleDataRequested(action.payload, null)),\r\n put(companyPaDataRequested(action.payload, null))\r\n ]);\r\n //get lawyer Ids and filter all results based on lawyerids\r\n const lawyerIds = searchResult.map(item => item.lId);\r\n yield put(filterAllCompanyResultsByLawyerIds(lawyerIds));\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getLawyerResult(action) {\r\n try {\r\n const searchResult = yield call(getLawyerData, action.payload.lawyerId);\r\n yield put(lawyerDataLoaded(new Array(searchResult)));\r\n let lawyerIds = [];\r\n //get lawyer Ids and filter all results based on lawyerids\r\n if (searchResult) {\r\n lawyerIds.push(searchResult.lId)\r\n }\r\n yield all([\r\n put(companyCollegeDataRequested(null, action.payload.companyId, action.payload.lawyerId)),\r\n put(companyTitleDataRequested(null, action.payload.companyId, action.payload.lawyerId)),\r\n put(companyPaDataRequested(null, action.payload.companyId, action.payload.lawyerId))\r\n ])\r\n yield put(filterAllCompanyResultsByLawyerIds(lawyerIds));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getCompanyCollegeResults(action) {\r\n try {\r\n const searchResult = yield call(getCompanyColleges, action.parentCompanyId, action.companyId, action.lawyerId);\r\n yield put(companyCollegeDataLoaded(searchResult));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getCompanyPaResults(action) {\r\n try {\r\n const searchResult = yield call(getCompanyPa, action.parentCompanyId, action.companyId, action.lawyerId);\r\n yield put(companyPaDataLoaded(searchResult));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n\r\n}\r\n\r\nfunction* getCompanyTitleResults(action) {\r\n try {\r\n const searchResult = yield call(getCompanyTitles, action.parentCompanyId, action.companyId, action.lawyerId);\r\n yield put(companyTitleDataLoaded(searchResult));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getRBSFilingsResult(action) {\r\n try {\r\n const searchResult = yield call(getRBSFilingsInfo, action.payload);\r\n yield put(RBSFilingsDataLoaded(searchResult));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* watchGetParentCompanyResult() {\r\n yield takeLatest(PARENTCOMPANY_DATA_REQUESTED, getParentCompanyResult);\r\n}\r\n\r\nfunction* watchGetCompanyResult() {\r\n yield takeLatest(COMPANY_DATA_REQUESTED, getCompanyResult);\r\n}\r\n\r\nfunction* watchGetCompanyLawyersResult() {\r\n yield takeLatest(COMPANYLAWYERS_DATA_REQUESTED, getCompanyLawyersResult);\r\n}\r\n\r\nfunction* watchGetParentCompanyLawyersResult() {\r\n yield takeLatest(PARENTCOMPANYLAWYERS_DATA_REQUESTED, getParentCompanyLawyersResult);\r\n}\r\n\r\nfunction* watchGetLawyerResult() {\r\n yield takeLatest(LAWYER_DATA_REQUESTED, getLawyerResult);\r\n}\r\n\r\nfunction* watchCompanyColleges() {\r\n yield takeLatest(COMPANY_COLLEGE_DATA_REQUESTED, getCompanyCollegeResults);\r\n}\r\n\r\nfunction* watchCompanyPa() {\r\n yield takeLatest(COMPANY_PA_DATA_REQUESTED, getCompanyPaResults);\r\n}\r\n\r\nfunction* watchCompanyTitle() {\r\n yield takeLatest(COMPANY_TITLE_DATA_REQUESTED, getCompanyTitleResults);\r\n}\r\n\r\nfunction* watchRBSFilings() {\r\n yield takeLatest(RBSFILINGS_DATA_REQUESTED, getRBSFilingsResult);\r\n}\r\n\r\nexport default [\r\n fork(watchGetCompanyResult),\r\n fork(watchGetParentCompanyResult),\r\n fork(watchGetParentCompanyLawyersResult),\r\n fork(watchGetCompanyLawyersResult),\r\n fork(watchGetLawyerResult),\r\n fork(watchCompanyColleges),\r\n fork(watchCompanyPa),\r\n fork(watchCompanyTitle),\r\n fork(watchRBSFilings),\r\n];","import {get,post} from \"./ApiService\";\r\nimport querystring from \"query-string\";\r\n\r\nexport const getCompanyData = (ids) => {\r\n let url = 'api/readchecked/companies/' + ids ;\r\n return get(url).then(response =>\r\n response\r\n );\r\n};\r\nexport const getLawyerData = (ids) => {\r\n let url = 'api/readchecked/lawyers/' + ids;\r\n return get(url).then(response =>\r\n response\r\n );\r\n};\r\nexport const postLawyerData = async (ids) => {\r\n let url = 'api/readchecked';\r\n return await post(url, { lawyerIds: ids });\r\n};\r\nexport const getCollegesByLawyerId = async lawyerIds => {\r\n let url = 'api/colleges/byLawyerId';\r\n return await post(url, { lawyerIds });\r\n};\r\nexport const getPAsByLawyerId = async lawyerIds => {\r\n let url = 'api/practicearea/byLawyerId';\r\n return await post(url, { lawyerIds });\r\n};\r\nexport const getTitlesByLawyerId = async lawyerIds => {\r\n let url = 'api/Company/lawyersTitles';\r\n return await post(url, { lawyerIds });\r\n};","import { call, put, fork, takeLatest } from \"redux-saga/effects\";\r\nimport {\r\n READCHECKED_COMPANY_DATA_REQUESTED,\r\n READCHECKED_LAWYER_DATA_REQUESTED,\r\n readcheckedCompanyDataLoaded,\r\n readcheckedLawyerDataLoaded,\r\n LAWYERS_COLLEGE_DATA_REQUESTED,\r\n LAWYERS_PA_DATA_REQUESTED,\r\n LAWYERS_TITLES_DATA_REQUESTED,\r\n lawyersCollegeDataRequested,\r\n lawyersPADataRequested,\r\n lawyersTitlesDataRequested,\r\n lawyersCollegeDataLoaded,\r\n lawyersPADataLoaded,\r\n lawyersTitlesDataLoaded,\r\n} from 'state/actions/readCheckedActions';\r\nimport {\r\n getCompanyData,\r\n getLawyerData,\r\n postLawyerData,\r\n getCollegesByLawyerId,\r\n getPAsByLawyerId,\r\n getTitlesByLawyerId\r\n} from 'services/readCheckedDataService';\r\nimport { spinnerChangedAction } from \"../actions/spinnerActions\";\r\nimport { logAndRedirectToErrorPage } from \"../../components/ErrorComponent\";\r\nimport { history } from \"../../routerHistory\";\r\nimport { AuthenticationError } from \"../../common/AuthenticationError\";\r\n\r\nfunction* getReadCheckedCompanyResult(action) {\r\n try {\r\n const companyResult = yield call(getCompanyData, action.payload);\r\n yield put(readcheckedCompanyDataLoaded(companyResult));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getReadCheckedLawyerResult(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const readCheckedResult = yield call(postLawyerData, action.payload);\r\n yield put(readcheckedLawyerDataLoaded(readCheckedResult.lawyers));\r\n yield put(readcheckedCompanyDataLoaded(readCheckedResult.companies));\r\n let lawyerIds = [];\r\n readCheckedResult.lawyers.map(x => {\r\n lawyerIds.push(x.lId)\r\n });\r\n yield put(lawyersCollegeDataRequested(lawyerIds.join(',')));\r\n yield put(lawyersPADataRequested(lawyerIds.join(',')));\r\n yield put(lawyersTitlesDataRequested(lawyerIds.join(',')));\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* watchReadCheckedGetCompanyResult() {\r\n yield takeLatest(READCHECKED_COMPANY_DATA_REQUESTED, getReadCheckedCompanyResult);\r\n}\r\n\r\nfunction* watchReadCheckedGetLawyerResult() {\r\n yield takeLatest(READCHECKED_LAWYER_DATA_REQUESTED, getReadCheckedLawyerResult);\r\n}\r\n\r\nfunction* getLawyersCollegeResult(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const readLawyersCollegeResult = yield call(getCollegesByLawyerId, action.payload);\r\n yield put(lawyersCollegeDataLoaded(readLawyersCollegeResult));\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getLawyersPAResult(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const readLawyersPAResult = yield call(getPAsByLawyerId, action.payload);\r\n yield put(lawyersPADataLoaded(readLawyersPAResult));\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* getLawyersTitlesResult(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const readLawyersTitlesResult = yield call(getTitlesByLawyerId, action.payload);\r\n yield put(lawyersTitlesDataLoaded(readLawyersTitlesResult));\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* watchGetLawyersCollegeResult() {\r\n yield takeLatest(LAWYERS_COLLEGE_DATA_REQUESTED, getLawyersCollegeResult);\r\n}\r\n\r\nfunction* watchGetLawyersPAResult() {\r\n yield takeLatest(LAWYERS_PA_DATA_REQUESTED, getLawyersPAResult);\r\n}\r\n\r\nfunction* watchGetLawyersTitlesResult() {\r\n yield takeLatest(LAWYERS_TITLES_DATA_REQUESTED, getLawyersTitlesResult);\r\n}\r\n\r\nexport default [\r\n fork(watchReadCheckedGetCompanyResult),\r\n fork(watchReadCheckedGetLawyerResult),\r\n fork(watchGetLawyersCollegeResult),\r\n fork(watchGetLawyersPAResult),\r\n fork(watchGetLawyersTitlesResult),\r\n];","import { get } from \"./ApiService\";\r\n\r\nexport const getTopCities = async states => {\r\n let url = `/api/Statistics/GetTopCities?top=5&states=${states}`;\r\n return await get(url);\r\n}\r\nexport const getTopColleges = async states => {\r\n let url = `/api/statistics/colleges?top=5&states=${states}`;\r\n return await get(url);\r\n};\r\nexport const getCounselCountByState = async states => {\r\n let url = `/api/Statistics/GetStatesCount?top=5&stateCodes=${states}`;\r\n return await get(url);\r\n};\r\nexport const getTopPracticeAreas = async states => {\r\n let url = `/api/statistics/practiceareas?top=5&states=${states}`;\r\n return await get(url);\r\n};\r\nexport const getTopYearAdmittedToBars = async states => {\r\n let url = `/api/statistics/yearAdmittedtobar?top=5&states=${states}`;\r\n return await get(url);\r\n};\r\nexport const getFormCompanyStates = async () => {\r\n let url = `/api/SearchForm/searchCompanyStates/`;\r\n return await get(url);\r\n};\r\nexport const getFormPracticeAreas = async () => {\r\n let url = `/api/SearchForm/SearchPracticeAreas/`;\r\n return await get(url);\r\n};\r\nexport const getFormUsStateBars = async () => {\r\n let url = `/api/SearchForm/SearchUSStateBar/`;\r\n return await get(url);\r\n};\r\nexport const getFormNonUsStateBars = async () => {\r\n let url = `/api/SearchForm/SearchNonUSStateBar/`;\r\n return await get(url);\r\n};\r\nexport const getTotalCounselCount = async selectedStates => {\r\n const states = selectedStates.length > 0 ? selectedStates : 'US';\r\n let url = `/api/Statistics/GetTotalCount?stateCodes=${states}`;\r\n return await get(url);\r\n};\r\nexport const getTotalCounselEmailCount = async selectedStates => {\r\n const states = selectedStates.length > 0 ? selectedStates : 'US';\r\n let url = `/api/Statistics/GetTotalCountWithEmail?stateCodes=${states}`;\r\n return await get(url);\r\n};\r\nexport const getUserInfo = async () => {\r\n let url = `/account/userinfo`;\r\n return await get(url);\r\n};\r\nexport const getRssFeed = async () => {\r\n let url = `api/rss/rssfeed`;\r\n return await get(url);\r\n};\r\nexport const getProducts = async () => {\r\n let url = `/account/userproducts`;\r\n return await get(url);\r\n};","import { call, put, fork, takeLatest, all } from \"redux-saga/effects\";\r\nimport {\r\n LOAD_HOME_DATA,\r\n LOAD_HOME_DATA_BY_STATES,\r\n counselCountByStateLoaded,\r\n topCollegesDataLoadedAction,\r\n topPracticeAreasDataLoaded,\r\n topYearAdmittedToBarLoaded,\r\n totalCounselCountLoaded,\r\n totalCounselEmailCountLoaded,\r\n userInfoLoaded,\r\n rssFeedLoaded,\r\n USER_INFO_REQUESTED,\r\n RSS_FEED_REQUESTED,\r\n PRODUCTS_REQUESTED,\r\n productsLoaded,\r\n HOME_DATA_TOP_CITIES_REQUEST,\r\n HOME_DATA_TOP_COLLEGES_REQUEST,\r\n HOME_DATA_COUNSEL_COUNT_REQUEST,\r\n HOME_DATA_TOP_PRACTICEAREAS_REQUEST,\r\n HOME_DATA_TOP_YEARADMITTEDTOBAR_REQUEST\r\n} from \"../actions/homeActions\";\r\nimport {\r\n getCounselCountByState,\r\n getProducts,\r\n getRssFeed,\r\n getTopCities,\r\n getTopColleges,\r\n getTopPracticeAreas,\r\n getTopYearAdmittedToBars, getTotalCounselCount, getTotalCounselEmailCount, getUserInfo\r\n} from \"services/HomeDataService\";\r\nimport { topCitiesDataLoadedAction } from \"../actions/homeActions\";\r\nimport { spinnerChangedAction } from \"../actions/spinnerActions\";\r\nimport { logAndRedirectToErrorPage } from \"components/ErrorComponent\";\r\nimport { history } from \"routerHistory\";\r\nimport { AuthenticationError } from \"../../common/AuthenticationError\";\r\n\r\nfunction* loadHomeDataTask(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const [\r\n topCitiesResponse,\r\n topCollegesResponse,\r\n counselByStateCountResponse,\r\n practiceAreasResponse,\r\n yearAdmittedToBarResponse,\r\n totalCounselCountResponse,\r\n totalCounselEmailCountResponse,\r\n ] = yield all([\r\n call(getTopCities, action.states),\r\n call(getTopColleges, action.states),\r\n call(getCounselCountByState, action.states),\r\n call(getTopPracticeAreas, action.states),\r\n call(getTopYearAdmittedToBars, action.states),\r\n call(getTotalCounselCount, action.states),\r\n call(getTotalCounselEmailCount, action.states),\r\n ]);\r\n yield put(topCitiesDataLoadedAction(topCitiesResponse.results));\r\n yield put(topCollegesDataLoadedAction(topCollegesResponse.results));\r\n yield put(counselCountByStateLoaded(counselByStateCountResponse.results));\r\n yield put(topPracticeAreasDataLoaded(practiceAreasResponse.results));\r\n yield put(topYearAdmittedToBarLoaded(yearAdmittedToBarResponse.results));\r\n yield put(totalCounselCountLoaded(totalCounselCountResponse[0].count));\r\n yield put(totalCounselEmailCountLoaded(totalCounselEmailCountResponse[0].count));\r\n yield put(spinnerChangedAction(false));\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* loadHomeDataMandatoryComponentsTask(action) {\r\n try {\r\n yield put(spinnerChangedAction(true));\r\n const [ \r\n totalCounselCountResponse,\r\n totalCounselEmailCountResponse,\r\n ] = yield all([ \r\n call(getTotalCounselCount, action.states),\r\n call(getTotalCounselEmailCount, action.states)\r\n ]); \r\n yield all([\r\n put(totalCounselCountLoaded(totalCounselCountResponse[0].count)),\r\n put(totalCounselEmailCountLoaded(totalCounselEmailCountResponse[0].count)),\r\n put(spinnerChangedAction(false))\r\n ]);\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* loadHomeDataByStateTask(action) {\r\n try {\r\n if (action.states) {\r\n yield put(spinnerChangedAction(true));\r\n const [\r\n topCitiesResponse,\r\n topCollegesResponse,\r\n counselByStateCountResponse,\r\n practiceAreasResponse,\r\n yearAdmittedToBarResponse,\r\n totalCounselCountResponse,\r\n totalCounselEmailCountResponse\r\n ] = yield all([call(getTopCities, action.states),\r\n call(getTopColleges, action.states),\r\n call(getCounselCountByState, action.states),\r\n call(getTopPracticeAreas, action.states),\r\n call(getTopYearAdmittedToBars, action.states),\r\n call(getTotalCounselCount, action.states),\r\n call(getTotalCounselEmailCount, action.states)\r\n ]);\r\n yield put(topCitiesDataLoadedAction(topCitiesResponse.results));\r\n yield put(topCollegesDataLoadedAction(topCollegesResponse.results));\r\n yield put(counselCountByStateLoaded(counselByStateCountResponse.results));\r\n yield put(topPracticeAreasDataLoaded(practiceAreasResponse.results));\r\n yield put(topYearAdmittedToBarLoaded(yearAdmittedToBarResponse.results));\r\n yield put(totalCounselCountLoaded(totalCounselCountResponse[0].count));\r\n yield put(totalCounselEmailCountLoaded(totalCounselEmailCountResponse[0].count));\r\n yield put(spinnerChangedAction(false));\r\n }\r\n } catch (e) {\r\n yield put(spinnerChangedAction(false));\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* userInfoTask(){\r\n try {\r\n const response = yield call(getUserInfo);\r\n yield put(userInfoLoaded(response));\r\n } catch (e) {\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* rssFeedTask(){\r\n try {\r\n const response = yield call(getRssFeed);\r\n yield put(rssFeedLoaded(response));\r\n } catch (e) {\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* productsTask() {\r\n try {\r\n const response = yield call(getProducts);\r\n yield put(productsLoaded(response));\r\n } catch (e) {\r\n if(e instanceof AuthenticationError){\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* loadTopCities(action) {\r\n try { \r\n const topCitiesResponse = yield call(getTopCities, action.states);\r\n yield put(topCitiesDataLoadedAction(topCitiesResponse.results));\r\n } catch (e) {\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* loadTopColleges(action) {\r\n try {\r\n const topCollegesResponse = yield call(getTopColleges, action.states);\r\n yield put(topCollegesDataLoadedAction(topCollegesResponse.results));\r\n } catch (e) {\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* loadCounselCountByState(action) {\r\n try {\r\n const counselByStateCountResponse = yield call(getCounselCountByState, action.states);\r\n yield put(counselCountByStateLoaded(counselByStateCountResponse.results));\r\n } catch (e) {\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* loadTopPracticeAreas(action) {\r\n try {\r\n const practiceAreasResponse = yield call(getTopPracticeAreas, action.states);\r\n yield put(topPracticeAreasDataLoaded(practiceAreasResponse.results));\r\n } catch (e) {\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\nfunction* loadTopYearAdmittedToBars(action) {\r\n try {\r\n const yearAdmittedToBarResponse = yield call(getTopYearAdmittedToBars, action.states);\r\n yield put(topYearAdmittedToBarLoaded(yearAdmittedToBarResponse.results));\r\n } catch (e) {\r\n if (e instanceof AuthenticationError) {\r\n return;\r\n }\r\n logAndRedirectToErrorPage(e, history);\r\n }\r\n}\r\n\r\nfunction* watchLoadTopCities() {\r\n yield takeLatest(HOME_DATA_TOP_CITIES_REQUEST, loadTopCities);\r\n}\r\n\r\nfunction* watchLoadTopColleges() {\r\n yield takeLatest(HOME_DATA_TOP_COLLEGES_REQUEST, loadTopColleges);\r\n}\r\n\r\nfunction* watchLoadCounselCountByState() {\r\n yield takeLatest(HOME_DATA_COUNSEL_COUNT_REQUEST, loadCounselCountByState);\r\n}\r\n\r\nfunction* watchLoadTopPracticeAreas() {\r\n yield takeLatest(HOME_DATA_TOP_PRACTICEAREAS_REQUEST, loadTopPracticeAreas);\r\n}\r\n\r\nfunction* watchLoadTopYearAdmittedToBars() {\r\n yield takeLatest(HOME_DATA_TOP_YEARADMITTEDTOBAR_REQUEST, loadTopYearAdmittedToBars);\r\n}\r\n\r\nfunction* watchLoadHomeData() {\r\n yield takeLatest(LOAD_HOME_DATA, loadHomeDataMandatoryComponentsTask);\r\n}\r\n\r\nfunction* watchLoadHomeDataByStates() {\r\n yield takeLatest(LOAD_HOME_DATA_BY_STATES, loadHomeDataByStateTask);\r\n}\r\nfunction* watchUserInfo(){\r\n yield takeLatest(USER_INFO_REQUESTED, userInfoTask)\r\n}\r\nfunction* watchRssFeed(){\r\n yield takeLatest(RSS_FEED_REQUESTED, rssFeedTask)\r\n}\r\nfunction* watchProducts(){\r\n yield takeLatest(PRODUCTS_REQUESTED, productsTask)\r\n}\r\nexport default [\r\n fork(watchLoadHomeData),\r\n fork(watchLoadHomeDataByStates),\r\n fork(watchRssFeed),\r\n fork(watchUserInfo),\r\n fork(watchProducts),\r\n fork(watchLoadTopCities),\r\n fork(watchLoadTopColleges),\r\n fork(watchLoadCounselCountByState),\r\n fork(watchLoadTopPracticeAreas),\r\n fork(watchLoadTopYearAdmittedToBars)\r\n];","import { all } from \"redux-saga/effects\";\r\nimport searchSaga from './searchSaga';\r\nimport readSaga from './readSaga';\r\nimport readCheckedSaga from './readCheckedSaga';\r\nimport homeSaga from \"./homeSaga\";\r\nexport default function* rootSaga() {\r\n yield all([\r\n ...homeSaga,\r\n ...searchSaga,\r\n ...readSaga,\r\n ...readCheckedSaga\r\n ]);\r\n}\r\n","import { createStore, applyMiddleware, compose } from \"redux\";\r\nimport createSagaMiddleware from \"redux-saga\";\r\nimport { composeWithDevTools } from \"redux-devtools-extension\";\r\nimport rootReducer from \"../reducers\";\r\nimport root from \"../sagas\";\r\n\r\nconst sagaMiddleware = createSagaMiddleware();\r\nconst composeEnhancers =\r\n process.env.NODE_ENV === \"production\"\r\n ? compose()\r\n : composeWithDevTools({ trace: true, traceLimit: 25 });\r\n\r\nconst store = createStore(rootReducer, composeEnhancers(applyMiddleware(sagaMiddleware)));\r\n\r\n// Initialization of session\r\nsagaMiddleware.run(root);\r\n\r\nexport default store;","import React from 'react';\r\nimport clsx from 'clsx';\r\nimport {connect} from \"react-redux\";\r\n\r\nconst Spinner = ({isLoading}) => {\r\n // const { isLoading } = useSelector(state=>state.spinner.isLoading);\r\n // console.log(isLoading);\r\n return (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n\r\n};\r\nconst mapStateToProps = state => ({\r\n isLoading: state.spinner.isLoading\r\n})\r\nexport default connect(mapStateToProps,null)(Spinner);","import 'bootstrap/dist/css/bootstrap.css';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { Router } from 'react-router-dom';\r\nimport { Provider } from \"react-redux\"\r\nimport App from './App';\r\nimport * as serviceWorker from './registerServiceWorker';\r\nimport store from \"./state/store\";\r\nimport Spinner from \"./components/Spinner\";\r\nimport { history } from \"./routerHistory\";\r\n\r\nconst baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\r\nconst rootElement = document.getElementById('root');\r\nconst getCookie = (name) => {\r\n let v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');\r\n return v ? v[2] : null;\r\n};\r\nlet cookie = getCookie(\".CCP.Security.Cookie\");\r\nif (!cookie) {\r\n window.location.href = window.location.origin + \"/Account/Login?returnUrl=\" + encodeURIComponent(window.location.pathname + window.location.search);\r\n} else {\r\n ReactDOM.render(\r\n \r\n \r\n \r\n \r\n \r\n ,\r\n rootElement);\r\n}\r\n\r\nserviceWorker.unregister();\r\n\r\n","function webpackEmptyContext(req) {\n\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\te.code = 'MODULE_NOT_FOUND';\n\tthrow e;\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nmodule.exports = webpackEmptyContext;\nwebpackEmptyContext.id = 69;"],"sourceRoot":""}