{"version":3,"sources":["lib/models/index.ts","lib/config/index.ts","lib/config/get-env-config.ts","lib/models/account-models.ts","lib/models/activity-models.ts","lib/models/ai-conversation-models.ts","lib/models/amplify-models.ts","lib/models/bundle-models.ts","lib/models/cookie-models.ts","lib/models/deliverable-models.ts","lib/models/document-models.ts","lib/models/event-models.ts","lib/models/inquiry-models.ts","lib/models/presigned-upload-models.ts","lib/models/search-result-models.ts","lib/models/topic-models.ts","contexts/account-context.tsx","contexts/alert-context.tsx","contexts/analytics-context.tsx","contexts/navigation-config-context.tsx","jss/colors.ts","jss/fonts.ts","jss/media-queries.ts","jss/mixins.ts","contexts/theme-context.tsx","lib/utils/clipboard-utils.ts","lib/utils/download-utils.ts","lib/utils/error-utils.ts","lib/utils/filter-utils.ts","lib/utils/location-utils.ts","lib/utils/url-utils.ts","lib/http-client/errors.ts","assets/icons/icon-file-word.svg","lib/http-client/http-client.ts","lib/http-client/index.ts","lib/services/account-service.ts","lib/services/activity-service.ts","lib/services/advisor-service.ts","lib/services/ai-conversation-service.ts","lib/services/best-practice-service.ts","lib/services/bundle-service.ts","lib/services/performance-metric-service.ts","lib/services/deliverables-service.ts","lib/services/document-service.ts","lib/services/document-upload-service.ts","lib/services/events-service.ts","lib/services/inquiry-service.ts","lib/services/inquiry-settings-service.ts","lib/services/jasper-report-service.ts","lib/services/left-navigation-service.ts","lib/services/navigation-service.ts","lib/services/program-settings-service.ts","lib/services/public-service.ts","lib/services/recommendations-service.ts","lib/services/sales-lead-service.ts","lib/services/search-service.ts","lib/services/use-case-service.ts","components/advisor.tsx","hooks/use-account.ts","hooks/use-alert.ts","hooks/use-analytics.tsx","hooks/use-copy-text-to-clipboard.tsx","hooks/use-debounced-state.tsx","assets/icons/icon-file-pdf.svg","assets/icons/icon-file-powerpoint.svg","assets/icons/icon-file-text.svg","assets/icons/icon-file-video.svg","assets/icons/icon-file-excel.svg","assets/icons/icon-file-zip.svg","hooks/use-handle-error.tsx","hooks/use-navigation-config.tsx","hooks/use-query.ts","hooks/use-script.ts","hooks/use-scroll-direction.tsx","hooks/use-sign-out.ts","hooks/use-theme.ts","components/ai-answer-references.tsx","assets/icons/icon-face-satisfied-line.svg","components/ai-answer-sources.tsx","assets/icons/icon-face-satisfied-fill.svg","assets/icons/icon-face-neutral-line.svg","assets/icons/icon-face-neutral-fill.svg","assets/icons/icon-face-dissatisfied-line.svg","assets/icons/icon-face-dissatisfied-fill.svg","components/async-page.tsx","components/ai-rate-modal.tsx","components/alert.tsx","components/aspect-ratio-locked-image.tsx","assets/icons/icon-link.svg","assets/icons/icon-chevron-left.svg","components/attachment-dropdown.tsx","components/avatar.tsx","assets/icons/icon-chevron-right.svg","components/carousel-single.tsx","assets/icons/icon-carousel-arrow-left.svg","assets/icons/icon-carousel-arrow-right.svg","components/carousel.tsx","assets/icons/icon-paperclip.svg","components/color-block-container.tsx","components/comment-post.tsx","components/comment.tsx","components/contact-request.tsx","components/dashboard-recently-viewed.tsx","assets/icons/icon-clock.svg","assets/icons/icon-star.svg","assets/icons/icon-calendar-v2.svg","components/dashboard-recommendation.tsx","lib/__mocks__/assessments.mock.ts","components/date-input.tsx","components/deliverable-list-item.tsx","lib/__mocks__/best-practices.mock.ts","lib/__mocks__/contacts.mock.ts","lib/__mocks__/engagement-plan.mock.ts","lib/__mocks__/performance-metrics.mock.ts","lib/__mocks__/playbooks.mock.ts","lib/__mocks__/process-flows.mock.ts","lib/__mocks__/use-cases.mock.ts","components/table/table-body.tsx","components/table/table-cell.tsx","components/table/table-column-modal.tsx","components/table/table-head.tsx","components/table/assets/sort-ascend.svg","components/table/assets/sort-descend.svg","components/table/assets/sort-none.svg","components/table/table-header.tsx","assets/icons/icon-gear.svg","components/table/table-pagination.tsx","components/table/table.tsx","assets/icons/icon-download.svg","components/table/table-renderer.tsx","components/table/table-row.tsx","assets/icons/icon-trash.svg","components/table/table-filter.tsx","webpack:///./src/assets/icons/icon-chevron-down.svg?331f","components/deliverables-contacts-modal.tsx","components/deliverables-document-list-item.tsx","hooks/use-get-icon-for-file-type.tsx","components/deliverables-document-modal.tsx","components/deliverables-entry-list-item.tsx","components/deliverables-entry-modal.tsx","components/deliverables-existing-modal.tsx","components/dropdown-menu.tsx","assets/icons/file.svg","components/dropdown-toggle.tsx","components/dropdown.tsx","components/engagement-masonry.tsx","components/error-display.tsx","assets/icons/download.svg","assets/icons/copy.svg","components/event-document-list-item.tsx","components/expanding-textarea.tsx","components/fade-transition.tsx","assets/icons/icon-file.svg","assets/icons/icon-calendar.svg","components/feature-card-secondary.tsx","components/feature-card.tsx","components/feature-hero.tsx","assets/logos/logo-hackett-white.svg","components/featured-content-tile.tsx","components/file-dropzone.tsx","components/file-input.tsx","components/filter-tabs.tsx","assets/icons/icon-question.svg","components/footer.tsx","components/freshdesk-link.tsx","assets/logos/logo-hackett-connect.svg","components/get-help.tsx","assets/icons/avatar.svg","assets/icons/icon-x.svg","components/header-desktop.tsx","components/header-menu-accordion.tsx","components/header-menu-button.tsx","assets/logos/logo-hackett-r.svg","components/header-menu.tsx","components/header-mobile.tsx","assets/icons/icon-magnifying-glass.svg","components/header-no-auth.tsx","components/header.tsx","components/search-input.tsx","components/header-search.tsx","assets/icons/icon-plus.svg","assets/icons/icon-checkmark-circle.svg","components/inquiry-form.tsx","components/link-box.tsx","components/introduction-item.tsx","components/list-result.tsx","components/loader.tsx","components/loading-button.tsx","components/navigation-research-dropdown-menu.tsx","components/meter.tsx","components/multi-select.tsx","components/navigation-link.tsx","components/navigation-main.tsx","assets/icons/bookmark.svg","components/navigation-sub.tsx","components/private-route.tsx","components/notification-item.tsx","components/program-toggle-item.tsx","components/recently-viewed.tsx","components/report-input-controls-modal.tsx","components/report-options.tsx","components/report-pagination.tsx","components/render-json.tsx","assets/icons/bookmark-filled.svg","assets/icons/icon-tags.svg","components/research-list-item.tsx","components/sales-lead-cta.tsx","assets/icons/icon-a.svg","components/search-list-item.tsx","components/select.tsx","components/tag-list.tsx","components/selected-interests.tsx","components/typewriter.tsx","components/welcome-banner.tsx","components/upcoming-event-link.tsx","components/webcast-card.tsx","components/wysiwyg.tsx","jss/hooks/use-themed-bootstrap-styles.ts","jss/bootstrap/_prefixes.ts","jss/bootstrap/badge.ts","jss/bootstrap/button.ts","jss/bootstrap/card.ts","assets/icons/icon-checkmark-checkbox.svg","assets/icons/icon-chevron-down.svg","jss/bootstrap/form.ts","jss/bootstrap/modal.ts","jss/hooks/use-global-styles.ts","assets/icons/icon-chat.svg","pages/account/profile.tsx","hooks/use-can-manage-bookings-url.tsx","pages/account/programs.tsx","pages/account/inquiries.tsx","pages/engagement/engagement-dashboard.tsx","pages/engagement/engagement-plan.tsx","pages/events/browse-events.tsx","pages/events/performance-studies.tsx","assets/logos/logo-cpe.gif","pages/events/event-detail.tsx","pages/advisor-inquiries-dashboard.tsx","assets/icons/robot.svg","assets/icons/icon-comment.svg","pages/ask-hackett-ai.tsx","assets/illustrations/inquiries-graphic.svg","pages/complete-profile.tsx","assets/icons/hackett-dwc-matrix-icon.svg","assets/images/ai-bg.png","assets/images/ai-xplr.png","pages/dashboard-v2.tsx","pages/deliverables-create.tsx","pages/dashboard.tsx","pages/inquiry-detail-read-only.tsx","assets/icons/hackett-research-reports-icon.svg","assets/icons/hackett-custom-content-icon.svg","assets/logos/logo-hackett.svg","assets/icons/icon-arrows.svg","pages/market-intelligence.tsx","pages/no-match.tsx","assets/icons/icon-barchart-up.svg","assets/icons/icon-rocket.svg","assets/icons/icon-shield.svg","assets/icons/icon-signpost.svg","assets/icons/icon-star-large.svg","pages/program-bundle.tsx","pages/reports.tsx","pages/search.tsx","assets/icons/hackett-consultations-icon.svg","pages/vendor-enablement.tsx","routes.tsx","pages/sign-in.tsx","pages/research.tsx","pages/research-detail.tsx","pages/best-practices.tsx","pages/best-practice-detail.tsx","pages/performance-metrics.tsx","pages/performance-metrics-detail.tsx","pages/engagement/engagement.tsx","pages/events/events.tsx","pages/advisor-inquiries.tsx","pages/advisor-inquiries-detail-edit.tsx","pages/deliverables.tsx","pages/report-detail.tsx","pages/client-inquiries.tsx","pages/inquiry-marketing.tsx","pages/contact.tsx","pages/create-inquiry.tsx","pages/advisory-team.tsx","pages/account/account.tsx","pages/bookmarks.tsx","pages/use-cases.tsx","pages/use-case-detail.tsx","pages/version.tsx","pages/maintenance.tsx","app.tsx","index.tsx"],"names":["getEnvConfig","HACKETT_ADVISORY_BASE_URL","env","process","REACT_APP_HACKETT_ADVISORY_BASE_URL","HACKETT_ADVISORY_SHOW_DEBUG","REACT_APP_HACKETT_ADVISORY_SHOW_DEBUG","HACKETT_ADVISORY_USE_REAL_AUTH","REACT_APP_HACKETT_ADVISORY_USE_REAL_AUTH","HACKETT_ADVISORY_AUTH_UI_URL","REACT_APP_HACKETT_ADVISORY_AUTH_UI_URL","HACKETT_ADVISORY_AUTH_API_URL","REACT_APP_HACKETT_ADVISORY_AUTH_API_URL","HACKETT_ADVISORY_COOKIE_DOMAIN","REACT_APP_HACKETT_ADVISORY_COOKIE_DOMAIN","HACKETT_ADVISORY_GOOGLE_ANALYTICS_ID","REACT_APP_HACKETT_ADVISORY_GOOGLE_ANALYTICS_ID","SENTRY_DSN","REACT_APP_SENTRY_DSN","HACKETT_ADVISORY_PACKAGE_VERSION","ROLE_IDS","ACTIVITY_TYPE_ID","FEEDBACK_RATING_ID","CHALLENGE_NAMES","MFA_TYPES","PREFERRED_MFA_TYPES","SMS_MFA","SOFTWARE_TOKEN_MFA","NEW_PASSWORD_REQUIRED","MFA_SETUP","PROGRAM_ACCESS","COOKIES","accessTokenCookieAttributes","sameSite","domain","config","deliverableUploadedAttachment","validExtensions","maxFileSize_bytes","accept","DOCUMENT_FILE_TYPES","PERFORMANCE_STUDY_STATUS_ID","EVENT_TYPE_ID","INQUIRY_STATUS_ID","INQUIRY_TYPE_ID","inquiryAttachment","DOCUMENT_UPLOAD_STATUS_ID","SEARCH_SORT","searchSortOptions","searchSort","RELEVANCE","title","NAME_ASC","NAME_DESC","DATE_DESC","DATE_ASC","TOPIC_FILTERS","STRATEGY_AND_ORGANIZATION","topicFilterId","topicFilterTitle","TALENT","AGILITY","SOURCING_AND_SUPPLY_BASE_STRATEGY","SUPPLY_CHAIN","PURCHASING_OPTIONS","TECHNOLOGY","DIGITAL_TRANSFORMATION","PERFORMANCE_AND_VALUE_MANAGEMENT","AccountContext","createContext","AccountProvider","children","useState","undefined","value","account","setAccount","Provider","AlertContext","AlertProvider","hideTimeoutRef","useRef","alertChildren","setAlertChildren","alertVariant","setAlertVariant","alertDuration","setAlertDuration","alertIsShowing","setAlertIsShowing","hideAlert","useCallback","current","clearTimeout","showAlert","alertConfig","variant","duration","setTimeout","AnalyticsContext","AnalyticsProvider","analyticsAllowed","setAnalyticsAllowed","useEffect","ReactGA","initialize","testMode","__DEV__","gaOptions","analytics","set","userId","accountId","Cookies","get","handleCookieYesConsentUpdate","detail","accepted","includes","document","addEventListener","removeEventListener","handleAnalyticOutbound","link","a","createElement","href","target","rel","body","appendChild","click","remove","handleClickEvent","url","gtag","event_category","link_url","transport_type","outbound","NavigationConfigContext","NavigationConfigProvider","navigationConfig","setNavigationConfig","colors","white","gray100","gray200","gray300","gray400","gray500","gray600","gray700","gray800","gray900","black","primary","secondary","tertiary","success","warning","danger","info","dark","openSans","fontFamily","weights","regular","semiBold","bold","fonts","xxl","fontSize","lineHeight","xl","l","m","s","xs","xxs","openSansRegular","fontWeight","openSansSemiBold","openSansBold","screenWidths","mediaQueries","sm","md","lg","nav","boxShadow","focus","color","outline","Color","alpha","rgb","ThemeContext","ThemeProvider","props","theme","setInternalTheme","setColors","newColors","setFonts","newFonts","values","Consumer","copyTextToClipboard","text","successCallback","errorCallback","navigator","clipboard","writeText","then","tempInput","select","execCommand","error","removeChild","fallbackCopyTextToClipboard","htmlText","domParser","DOMParser","htmlDocument","parseFromString","plainText","textContent","ClipboardItem","html","Blob","type","data","write","cb","e","clipboardData","setData","preventDefault","downloadFileAtUrl","callback","anchor","download","isErrorConfig","code","message","formOptionToMultiSelectOption","formOptions","map","fo","id","display","filterItems","options","mutateGooglePlaceResultToBpicLocationFormat","googlePlaceResult","place_id","address_components","formatted_address","splitFormattedAddress","split","location","city","state","country","countryCode","find","ac","types","short_name","placeId","JSON","stringify","mutateBpicLocationFormatToInputFormat","locationString","parsedLocation","parse","locationInputValue","length","constructUrl","pathname","queryParameters","search","searchParams","URLSearchParams","Object","entries","forEach","key","delete","Array","isArray","append","join","from","toString","getParsedQuery","query","arrayFormat","parsedQuery","keyValuePair","filter","push","previousValue","getValidPaginatorSize","size","ERROR_CODES","_path","errors","GENERIC","status","response","axiosError","SERVICE_UNAVAILABLE","REQUEST_ABORTED","HttpClient","httpConfig","_baseUrl","_headers","_requests","_axiosInstance","this","baseUrl","defaultHeaders","axios","create","interceptors","request","use","tokenHeaderKey","getToken","token","headers","tokenHeaderType","console","requestId","abort","maintenanceTargetUrl","MAINTENANCE_TARGET_URL","Sentry","isCancel","getSystemStatus","systemStatus","window","_getFormattedError","formattedError","fetch","errorFromApi","apiError","requestConfig","orchestratedRequest","uuid","requestComplete","source","CancelToken","baseURL","cancelToken","_fetch","cancel","httpSingleton","ACCESS_TOKEN","authHttpSingleton","accountService","getCurrentAccount","orchestrateRequest","method","updateCurrentAccount","getAccountOptions","option","getPrograms","getAccountFilters","getFreshdeskSupportUrl","getFreshdeskTicketsUrl","getBannerMessages","markBannerMessageRead","bannerMessageId","signOut","trackSignIn","activityService","advisorService","aiConversationService","converstaionId","conversationQueryId","bestPracticeService","bestPracticeId","bundleService","bundleId","performanceMetricService","performanceMetricId","deliverablesService","file","FormData","name","deliverableId","documentService","documentId","documentUploader","blob","presignedUploadGetter","onPresignedUploadObtainedCallback","onProgressCallback","onCompleteCallback","onErrorCallback","documentUpload","onBeforeUpload","URL","createObjectURL","onPresignedUploadObtained","onProgress","onComplete","onError","start","upload","Promise","resolve","reject","xhr","XMLHttpRequest","httpHeaderName","event","lengthComputable","percentCompleted","Math","round","loaded","total","open","httpMethod","httpHeaders","setRequestHeader","send","presignedUpload","catch","eventsService","eventId","isPast","inquiryService","inquiryId","inquirySettingService","getPreferences","setPreferences","jasperServices","reportId","leftNavigationService","navigationService","getNavigationItems","programSettingService","publicService","authenticate","createInvite","getInvite","inviteId","accountInvite","getError","getDecryptedToken","recommendationsService","salesLeadService","searchService","useCaseService","useCaseId","Advisor","avatarUrl","jobTitle","specialties","bio","bookingsUrl","className","Button","useAccount","useContext","useAlert","useAnalytics","analyticsContext","Error","useCopyTextToClipboard","successMessage","errorMessage","cttc","copyHtmlToClipboard","chttc","useDebouncedState","delay","debouncedValue","setDebouncedValue","handler","_extends","assign","i","arguments","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","SvgIconFileWord","_ref","svgRef","titleId","xmlns","width","height","fill","viewBox","ref","d","ForwardRef","SvgIconFilePdf","SvgIconFilePowerpoint","SvgIconFileText","SvgIconFileVideo","SvgIconFileExcel","SvgIconFileZip","useHandleError","history","useHistory","useSignOut","signOutNoServiceCall","handleError","log","replace","displayMessage","style","whiteSpace","json","useNavigationConfig","useQuery","useLocation","useMemo","SCROLL_DIRECTION","useScrollDirection","UP","scrollDir","setScrollDir","previousScrollYPosition","scrollY","updateScrollDirection","currentScrollYPosition","abs","scrolledMoreThanThreshold","newScrollDirection","isScrollingUp","DOWN","onScroll","requestAnimationFrame","isSigningOut","setIsSigningOut","getSignOutDestination","redirectUrl","encodeURIComponent","platform","TARGET_URL","createUseThemedStyles","styles","createUseStyles","useStyles","chatAnswerReferences","padding","borderRadius","backgroundColor","AiAnswerReferences","references","classes","isShowingMore","setIsShowingMore","classNames","slice","reference","referenceIndex","dangerouslySetInnerHTML","__html","onClick","chatAnswerSources","AiAnswerSources","sources","sourceIndex","documentUrl","documentTitle","SvgIconFaceSatisfiedLine","SvgIconFaceSatisfiedFill","fillRule","clipRule","SvgIconFaceNeutralLine","SvgIconFaceNeutralFill","SvgIconFaceDissatisfiedLine","_path2","_path3","_path4","SvgIconFaceDissatisfiedFill","DISPLAY_STATES","dialog","maxWidth","margin","maxHeight","overflowY","radioButtonLabel","satisfactionOptions","POSITIVE","checkedIcon","uncheckedIcon","NEUTRAL","NEGATIVE","AiRateModal","onSave","satisfaction","reason","formValues","setFormValues","isSaving","setIsSaving","handleFormSubmit","feedbackRatingId","Modal","dialogClassName","centered","onEntering","Header","closeButton","Title","Form","onSubmit","disabled","Body","Group","Check","Input","checked","onChange","currentTarget","Label","in","Control","placeholder","required","Footer","onHide","isLoading","useAlertStyles","alertOuter","top","left","zIndex","position","transition","alert","alignItems","hideAlertButton","right","border","appearance","transform","content","opacity","Alert","CSSTransition","timeout","mountOnEnter","unmountOnExit","imageOuter","backgroundSize","backgroundPosition","backgroundRepeat","paddingBottom","AspectRatioLockedImage","src","placeHolder","backgroundImage","AsyncPage","fetchData","abortFetch","errorDisplayClassName","fetchPageDataError","setFetchPageDataError","LOADING","displayState","setDisplayState","fetchPageData","SUCCESS","ERROR","Loader","showBackButton","showRetryButton","onRetryButtonClick","getDisplayState","SvgIconLink","_polygon","attachmentDropdownToggle","showBorder","textAlign","justifyContent","index","AttachmentDropdown","downloadUrl","viewUrl","showRemoveOption","onRemove","align","Item","avatar","flexShrink","Avatar","SvgIconChevronLeft","points","SvgIconChevronRight","animationDurationInMs","carousel","flexDirection","informationOuter","overflow","borderLeft","borderRight","borderBottom","borderTop","informationSlide","informationSlideLink","minHeight","marginBottom","textDecoration","carouselControls","bottom","listStyle","marginLeft","marginRight","arrowButton","imageSlide","ResponsiveEllipsis","responsiveHOC","HTMLEllipsis","CarouselSingle","slides","currentSlideRef","controlsRef","currentSlideIndex","setCurrentSlideIndex","animationClassNames","setAnimationClassNames","carouselHeight","setCarouselHeight","currentSlide","measureAndSetCarouselHeight","currentSlideHeight","getBoundingClientRect","controlsHeight","handlePreviousButtonClick","handleNextButtonClick","handlePageButtonClick","previousIndex","handleDescriptionReflow","TransitionGroup","childFactory","child","React","cloneElement","imageUrl","to","unsafeHTML","maxLine","component","onReflow","description","_slide","slideIndex","active","carouselButton","buttonColor","string","background","carouselButtonPrevious","borderTopRightRadius","borderBottomRightRadius","carouselButtonNext","borderTopLeftRadius","borderBottomLeftRadius","containerClass","sliderClass","itemClass","gutterSize","colorBlockContainer","angle","lighten","hex","desaturate","SvgIconPaperclip","commentPost","textareaOuter","flex","CommentPost","commentValue","setCommentValue","as","commentOuter","comment","Comment","attachments","attachment","contactRequest","requestInformation","LinesEllipsis","ContactRequest","namePrefix","nameSupplement","time","lastMessage","recentlyViewed","numberOuter","infoOuter","chevronIcon","marginTop","SvgIconStar","SvgIconCalendarV2","ASSESSMENTS_TABLE_COLUMN_IDS","dateInput","minWidth","textIndent","paddingRight","borderWidth","borderColor","calendarIcon","pointerEvents","DateInput","maxDate","finalProps","peekNextMonth","showMonthDropdown","showYearDropdown","dropdownMode","DeliverableListItem","programs","date","BEST_PRACTICE_TABLE_COLUMN_IDS","ASSESSMENTS","columnId","columnTitle","isHidable","isShownByDefault","isShowing","DESCRIPTION","LAST_TAKEN","ACTIONS","tableHeaderId","isSortable","CONTACTS_TABLE_COLUMN_IDS","bestPracticeTableColumns","BEST_PRACTICES","BUSINESS_PROCESS","SERVICE_DELIVERY_COMPONENT","CERTIFICATION_STATUS","THEMES","LEVEL_OF_EFFORT","TIME_FRAME","CODE","bestPracticeTableHeaders","ENGAGEMENT_PLAN_TABLE_COLUMN_IDS","contactsTableColumns","COMPANY","NAME","TITLE","EMAIL","PHONE","DELIVERED","contactsTableHeaders","PERFORMANCE_METRICS_TABLE_COLUMN_IDS","engagementPlanTableColumns","ACTION_ITEM","ADVISOR","STATUS","MILESTONE_DATE","engagementPlanTableHeaders","engagementPlanTableRows","rowId","expanded","columnData","attachementCount","commentCount","advisor","statusId","milestoneDate","PLAYBOOKS_TABLE_COLUMN_IDS","performanceMetricsTableColumns","PERFORMANCE_METRICS","PEER_GROUP","TOP_PERFORMER","DIGITAL_WORLD_CLASS","INDUSTRY_PEER","FIRST_QUARTILE","DRIVER","CATEGORY","SOURCE","performanceMetricsTableHeaders","PROCESS_FLOWS_TABLE_COLUMN_IDS","MODULES","PRIORITY","FUNCTIONS","CONFIGURATION_CONSIDERATIONS","LESSONS_LEARNED","PROCESS_FLOW_STEPS_INFLUENCED","CURRENT_ASSEESSMENT","BUSINESS_VALUE","USE_CASES_TABLE_COLUMN_IDS","PROCESS_FLOWS","LEVEL","useCasesTableColumns","USE_CASES","NUMBER","FUNCTION","AI_TECHNOLOGY","VALUE_RATING","useCasesTableHeaders","useTableBodyStyles","tableBody","TableBody","useTableCellStyles","tableCell","fixedOffset","tableCellContent","TableCell","fixed","classNameOuter","colSpan","Collapse","TableColumnModal","tableColumnData","tableColumns","setTableColumns","show","tableColumn","label","tableColumnsClone","cloneDeep","reduce","previous","columnConfig","useTableHeadStyles","tableHead","TableHead","SvgSortAscend","SvgSortDescend","SvgSortNone","SORT_DIRECTION","useTableHeaderStyles","tableHeader","tableHeaderContent","sortable","cursor","sortableIconOuter","sortableIcon","TableHeader","colspan","onSort","sortKey","sortDirection","ASC","DESC","tabIndex","paginationButton","paginationButtonActive","pageSizeOptions","TablePagination","pageSize","pageIndex","showPageSize","totalPages","ceil","lastPage","getPageButtonConfig","String","isActive","pageButtons","range","currentBlock","blockSize","parseInt","pageSizeOption","pageButton","tableOuter","overflowX","table","Table","SvgIconGear","SvgIconDownload","selectAllAlertOuter","selectAllAlert","loader","TableRenderer","onTableColumnDataChange","tableRowData","onTableRowDataChange","tableSelectAll","onTableSelectAllChange","downloadData","setUncheckedRowsIds","uncheckedRowsIds","setCheckedRowsIds","checkedRowsIds","tableHeaderRowRenderer","tableBodyRowRenderer","tableRowDataTotal","onPaginationChange","hidePagination","hideColumnControls","tableId","showTableColumnModal","setShowTableColumnModal","selectAll","setSelectAll","downloadLength","setDownloadLength","pageChanges","setPageChanges","clearSelections","tableRowsDataClone","row","selectAllOnChange","selectAllCurrentPage","rowSelectOnChange","element","allAreChecked","every","selectAllCheckboxProps","stopPropagation","tableRowCheckboxProps","hideableColumnLength","updatedTableColumnData","action","readOnly","formTarget","trd","tableRow","canClick","TableRow","role","TableFilterDropdown","filterLabel","filterKey","tableFilters","selectedFilters","updateFilterSelection","allowAny","SvgIconTrash","DeliverablesContactsModal","fileName","unmatchedContacts","matchedContacts","tableIsLoading","tablePageSize","tablePageIndex","tableColumnsData","setTableColumnsData","tableHeadersData","unmatchedContactsRowData","setUnmatchedContactsRowData","matchedContactsRowData","setMatchedContactsRowData","formattedUnmatchedContacts","uc","ucIndex","formattedMatchedContacts","mc","tableHeaderProps","company","userName","email","phone","rowData","confirm","unmatchedContactsRowDataClone","indexToRemove","findIndex","rd","splice","handleUnmatchedContactDeleteButtonClick","clientName","emailAddress","mobileNumber","matchedContactsRowDataClone","handleMatchedContactDeleteButtonClick","deliverablesDocumentListItem","documentInformation","fileIcon","DeliverablesDocumentListItem","showCheck","checkboxProps","submissionDate","fileType","showRemove","getIconForFileType","DOCX","PDF","PPTX","TXT","VIDEO_LINK","XLSX","ZIP","useGetIconForFileType","initialFilterValues","fromDate","toDate","documentType","DeliverablesDocumentModal","searchValue","setSearchValue","debouncedSearchValue","sortOptions","setSortOptions","documentTypes","setDocumentTypes","filterValues","setFilterValues","appliedFilters","setAppliedFilters","page","sortField","setSortField","documents","setDocuments","totalDocuments","setTotalDocuments","selectedDocuments","setSelectedDocuments","setIsLoading","fetchDocumentTypes","filtersResponse","sortFields","contentTypes","fetchDocuments","searchQuery","format","totalCount","handleEnter","handleDocumentListItemChange","selectedDocumentsClone","documentToAdd","Row","Col","SearchInput","o","publicationDateDescription","some","Card","v","isClearable","selected","minDate","dt","deliverablesEntryListItem","DeliverablesEntryListItem","topic","DeliverablesEntryModal","setEntries","totalEntries","setTotalEntries","selectedEntries","setSelectedEntries","fetchSortOptions","fetchEntries","end","events","selectedEntriesClone","onEnter","entry","listDescription","durationDescription","eventTypeDesc","DeliverablesExistingModal","createClientUrl","setTableIsLoading","setTableSelectAll","tableSortKey","setTableSortKey","tableSortDirection","setTableSortDirection","tableState","setTableState","contacts","setContacts","totalContacts","setTotalContacts","previouslySelectedContacts","setPreviouslySelectedContacts","newelySelectedContacts","setNewelySelectedContacts","fetchContacts","sortBy","accountsToIgnore","formattedContacts","accounts","handleTableSort","handleTableRowCheckboxChange","newelySelectedContactsClone","c","contactToAdd","concat","dropdownMenu","letterSpacing","textTransform","DropdownMenu","Menu","SvgIconChevronDown","dropdownToggle","childrenOuter","downChevron","hideCaret","DropdownToggle","chevronClassName","Toggle","dropdown","visibility","Dropdown","engagementGrid","paddingLeft","backgroundClip","engagementCard","count","EngagementGrid","breakPointCols","default","breakpointCols","columnClassName","EngagementCard","achievements","achievement","isLast","ErrorDisplay","Container","goBack","SvgFile","SvgDownload","SvgCopy","EventDocumentListItem","handleDownloadClick","allowDownloads","origin","ExpandingTextarea","textareaRef","scrollHeight","fadeTransitionOuter","animationDuration","opacityHeightTransition","FadeTransition","outerRef","innerRef","targetHeight","onEntered","removeProperty","onExit","onExiting","onExited","featureCardSecondary","icon","callToActionOuter","callToActionIcon","cardOuter","card","smaller","featureHero","saturate","darken","featureInformation","_path5","_path6","_path7","_path8","_path9","_path10","_path11","_path12","_path13","_path14","_path15","_path16","_path17","_path18","_path19","_path20","_path21","_path22","_path23","featuredContentTile","FeaturedContentTile","contentType","bottomText","Badge","bg","fileDropzone","FileDropzone","maxSize","useDropzone","onDrop","getRootProps","getInputProps","isDragActive","fileInputButton","fileInput","FileInputButton","inputRef","files","filterTabs","tab","activeTab","FilterTabs","tabs","aside","SvgLogoHackettWhite","_circle","footer","footerRef","year","Date","getFullYear","handleWindowResize","setBodyPadding","footerHeight","clientHeight","FreshDeskLink","forTickets","handleButtonClick","serviceAction","freshdeskSupportUrl","SvgIconQuestion","cx","cy","r","stroke","clipPath","supportOuter","GetHelp","SvgLogoHackettConnect","SvgAvatar","desktopHeader","advisorsIconButton","headerSearch","HeaderDesktop","menuOpen","onMenuButtonClick","navigationLinks","scrollDirection","headerRef","isMinified","setIsMinified","utilityNavRef","searchBarRef","minifyHeader","classList","add","utilityWidth","clientWidth","setSearchBarWidth","expandHeader","popperConfig","strategy","renderOnMount","ACCOUNT","linkIndex","external","Link","HeaderSearch","navigationList","navigationCollapseList","chevron","flip","HeaderMenuAccordion","links","setShow","mobileTitle","menuButton","HeaderMenuButton","SvgIconX","header","mobileSearchBar","navigationButtons","HeaderMenu","Offcanvas","placement","section","Fragment","mobileHeader","mobileNavigation","HeaderMobile","mobileNavRef","setMobileNavTop","headerBottom","SvgLogoHackettR","headerNoAuth","brandLink","brand","vr","HeaderNoAuth","SvgIconMagnifyingGlass","NAVIGATION_SECTION","searchInputOuter","searchInput","hideIcon","forwardRef","globalSearchOuter","searchButton","inputValue","setInputValue","handleSearchSubmit","onKeyDown","headerDesktop","headerMobile","setMenuOpen","MAIN","inquiriesDisabled","allowClientManagement","allowAccessToInquiries","allowResearch","allowPerformanceMetrics","allowBestPractices","allowPerformanceStudies","allowBrowseEvents","allowUseCases","CLIENT_MANAGEMENT","allowDeliverables","allowReports","allowHackettAi","allowAdminAccess","adminUrl","bannerMessages","setBannerMessages","bannerMessagesFetched","fetchBannerMessages","all","bannerMessagesResponse","headerHeight","paddingTop","onBannerMessageRead","SvgIconPlus","InquiryForm","memo","formOptionsLoading","setFormOptionsLoading","clientOptions","setClientOptions","requesterOptions","setRequesterOptions","programOptions","setProgramOptions","typeOptions","setTypeOptions","topicsOptions","setTopicsOptions","accountUrl","setAccountUrl","shouldShowNotes","setShouldShowNotes","reachedInquiryLimit","setReachedInquiryLimit","showLimitInquiryModal","setShowLimitInquiryModal","showMarketIntelligenceLimitModal","setShowMarketIntelligenceLimitModal","clientValue","setClientValue","requesterValue","setRequesterValue","programValue","setProgramValue","typeValue","setTypeValue","topicsValue","setTopicsValue","titleValue","setTitleValue","inquiryText","setInquiryText","notes","setNotes","inquiryDocuments","setInquiryDocuments","isUploading","setIsUpoading","uploadProgress","setUploadProgress","isSubmitting","setIsSubmitting","fetchInquiryFormOptions","clientId","programId","inquiryTypeId","clients","inquiryType","topics","createAccountUrl","handleAttachButtonChange","fileExtension","exec","pop","fileId","handleDocumentRemove","createInquiryFetch","confirmMarketIntelInquiryLimitExceeded","requestingAccountId","topicIds","inquiryTitle","inquiry","handleContactSubmitRequest","presignedUploadPromises","newDocumentName","nameWithoutComma","percentage","documentUploadStatusId","COMPLETE","inquiryDocumentId","presignedUploadResponse","uploadedDocumentIds","u","topicsList","t","inquiryAccountIds","filename","resetForm","programOption","typeOption","labelKey","multiple","max","pill","showBackground","introductionItem","iconOuter","linkBox","sectionsOuter","arrowIcon","callToAction","LinkBox","sections","sectionIndex","isLastSection","isLastLink","category","showIcon","SvgIconCheckmarkCircle","listResult","checkmarkIcon","starIcon","ListResult","isRegistered","hasAttended","isBookmarked","tags","imageSrc","descriptionParsedString","innerHTML","useLoaderStyles","borderTopColor","animation","displayName","EVENT_KEYS","LoadingButton","meter","Meter","useMultiSelectStyles","selectedLength","MultiSelect","flattendOptions","setFlattenedOptions","flattenedOps","flatten","array","parentId","flatMap","rest","childIds","flattenedOptionsAsObject","getAllDescendantValues","cid","getAllAncestorValues","handleOnChange","selectionsClone","currentOption","childValues","valuesToUpdate","currentParent","useMultiSelectItemStyles","collapseButtonOuter","hasOptions","collapseButton","isOpen","collapseInner","MultiSelectItem","setIsOpen","getTopLevelParentAndChildrenIds","selectedIds","optionsClone","selectedIdsClone","selectedParents","bpf","selectedParentIds","sp","childrenIdsToExclude","pid","targetIndex","parentIds","remainingChildrenIds","flattenParentAndChildIdsForSelection","parentIdsClone","idsForSelection","targetOption","useNavigationLinkStyles","navigationLink","NavigationLink","match","useRouteMatch","navOuter","dropdownMenuOuter","dropdownTabs","contactCallout","dropdownContent","filterLink","NavigationMain","showDropdown","setShowDropdown","onToggle","onCloseDropdown","NavigationResearchDropdownMenu","TOPICS","tabKey","setTabKey","closeDropdown","Tab","activeKey","onSelect","eventKey","ALL_RESEARCH","Nav","BUSNIESS_PROCESSES","CONTENT_TYPES","Content","Pane","navigationHeader","parentTopics","navigationItemId","navigationItems","item","itemIndex","taxonomy","parentBusinessProcesses","businessProcesses","parentContentTypes","useNavigationSubStyles","navigationSubBar","navigationSub","verticalRule","subNavItem","NavigationSub","hasValidChildren","validChildren","Children","toArray","isValidElement","fluid","navigationItem","PrivateView","notificationItem","isNew","messageOuter","dismissButtonOuter","alignSelf","xIcon","routeIsInitialized","PrivateRoute","routeProps","render","ProgramToggleItem","isChecked","switchId","Switch","RecentlyViewed","setRecentlyViewed","recentActivities","ipTypeDescription","activityTypeId","BP","ipId","ipTitle","ReportInputControlsModal","inputControls","reportResources","setInputControls","onApply","multiSelectInputs","setMultiselectInputs","SELECT_ALL_VALUE","inputTypes","checkbox","singleText","dateText","singleSelect","multiSelect","inputControlsCopy","setInputControlsCopy","selectedItem","getInputControlStructure","inputControl","inputIndex","currentInputTarget","visible","inline","bsPrefix","mandatory","inputControlList","formType","dateFormat","formattedDate","previousSelectedValueIndex","selectedValueIndex","optionItem","inputProps","paginate","currentSelection","prevState","renderMenu","results","newSelectionPrefix","paginationText","renderMenuItemChildren","menuProps","result","inputControlValues","inputItem","inputItemCopy","selectedValue","multiSelectInputValues","input","chartParams","ReportOptions","downloadOptions","isDownloadInProgress","currentReportOutput","handleDownloadReport","defaultValue","extension","btnBookmarkActive","btnBookmark","ReportPagination","bookmarks","currentBookmark","currentPage","handleBookmarkChange","handlePageChange","bookmark","renderJson","RenderJson","syntaxHighlightedJson","test","SvgBookmark","SvgBookmarkFilled","ResearchListItem","canDownload","isPodcast","isBookmarking","setIsBookmarking","handleSaveBookmarkButtonClick","handleRemoveBookmarkButtonClick","handleViewClick","tag","isLastTag","SalesLeadCta","reverse","imageOverlayContent","span","offset","SvgIconTags","SearchListItem","detailsUrl","useSelectStyles","fontStyle","Select","TagList","selectedInterestsContainer","selectedInterestRow","typewriter","counterReset","listStyleType","counterIncrement","Typewriter","htmlString","delayBetweenCharacters","onAnimationComplete","containerRef","characterTimeouts","animationCompleteTimeout","animationComplete","setAnimationComplete","convertChildNodesToData","elements","childStructures","childNodes","nodeType","Node","TEXT_NODE","flattenHtmlStructures","htmlStructure","parentUuid","hs","convertFlattenedHtmlStructureToSpans","htmlStructures","accumulator","currentValue","character","spanElement","clearCharacterTimeouts","clearAnimationCompleteTimeout","appendHtmlStructureToDom","elementClone","cloneNode","setAttribute","parentElement","querySelectorAll","htmlStructuresFlat","htmlStructuresFlatWithSpans","characterTimeout","upcomingEventLink","webcastCard","videoThumbnail","welcomeBanner","messages","WelcomeBanner","handleDismissButtonClick","bannerMessage","linkUrl","linkDescription","SvgIconA","modules","toolbar","formats","icons","QuillClass","import","ReactDOMServer","renderToString","wysiwyg","Wysiwyg","prefixes","badge","btn","solidButton","textColor","disabledTextColor","disabledBackgroundColor","outlineButton","activeColor","disabledColor","button","form","userSelect","resize","maskPosition","maskRepeat","maskImage","downChevronIcon","modal","useGlobalStyles","hr","ml","mr","mt","mb","mx","my","p","pl","pr","pt","pb","px","py","useThemedBootstrapStyles","flexWrap","formRow","formCol","firstFormCol","Profile","canManageBookingsUrl","canManageRoles","ACCOUNT_MANAGER","roles","useCanManageBookingsUrl","accountLevelOptions","setAccountLevelOptions","accountFunctionSelectedOptions","setAccountFunctionSelectedOptions","accountFunctionOptions","setAccountFunctionOptions","profileFormEnabled","setProfileFormEnabled","userLevelTagId","userFunctionTagIds","profileForm","setProfileForm","locationInputRef","autoCompleteRef","isLocationValid","setIsLocationValid","levelOptionsResponse","functionOptionsResponse","accountResponse","reformattedOptionArray","obj","tagId","google","maps","places","Autocomplete","addListener","getPlace","Helmet","functionSelectedOptionFilter","userLevelDescription","userFunctionDescription","Programs","setPrograms","suppressProgramEmail","setSuppressProgramEmail","handleChange","programIndex","preferenceKey","programsClone","accountCommPreferences","allowUserPreferences","allowEmails","allowEmail","allowAdvisoryDisplay","navigationResponse","Inquiries","inquiryNotificationPreferences","setInquiryNotificationPreferences","preferenceIndex","preferencesClone","pref","settingType","shouldNotify","EngagementDashboard","SvgIconChat","VIEW_BY","VIEW","EngagementPlan","OBJECTIVE","viewByValue","setViewByValue","setTableRowData","DATES","BrowseEvents","path","hasQuery","paramsToIgnore","view","UPCOMING","pageRef","setEvents","eventsTotal","setEventsTotal","showCpeDetailsModal","setShowCpeDetailsModal","fetchPrograms","PAST","getUpcomingEventsPromise","getUpcomingEvents","getPastEventsPromise","getPastEvents","po","alt","EventDetail","useParams","setEvent","presenterName","eventTypeId","DEFAULT","pastEvent","registrationUrl","webexRecordingUrl","PERFORMANCE_STUDY","recommendedCpeCredit","registrationRequirements","courseLevel","programPrerequisites","refundPolicy","complaintResolutionPolicy","advancePreparation","INQUIRY_TABLE_COLUMN_IDS","ADVISOR_TYPE","PerformanceStudies","ACTIVE","performanceStudies","setPerformanceStudies","performanceStudiesTotal","setPerformanceStudiesTotal","getUpcomingPerformanceStudiesPromise","getUpcomingPerformanceStudies","getPastPerformanceStudiesPromise","getPastPerformanceStudies","performanceStudyStatusId","CLOSED","OPEN","inquiryTableColumns","INQUIRY_RECEIVED","INQUIRY_CONFIRMED","IN_PROGRESS","QC_REVIEW","TOTAL","inquiryTableHeaders","SvgRobot","SvgIconComment","CHAT_CONTENT_TYPE_ID","chatOuter","chatList","chatListNewButtonOuter","chatListScroller","chatListButtonOuter","chatListButton","chatListDeleteButton","chat","chatScroller","chatScrollerInner","isContained","chatInputOuter","sendButtonOuter","chatContent","chatQuestion","aiIconOuter","aiIcon","typewriterOuter","thinking","_style","_rect","SvgInquiriesGraphic","xmlnsXlink","x","y","enableBackground","xmlSpace","_g2","programSectionsCol","eventsColumn","supportColumn","DeliverablesCreate","createDocumentUrl","setCreateDocumentUrl","setCreateClientUrl","deliverableTypeOptions","setDeliverableTypeOptions","topicOptions","setTopicOptions","hours","deliveryDate","documentsUploaded","deliverableForm","setDeliverableForm","isDeleting","setIsDeleting","documentUploaded","setDocumentUploaded","deliverablesEntryModalIsOpen","setDeliverablesEntryModalIsOpen","deliverablesDocumentModalIsOpen","setDeliverablesDocumentModalIsOpen","deliverablesExistingModalIsOpen","setDeliverablesExistingModalIsOpen","deliverablesContactsModalIsOpen","setDeliverablesContactsModalIsOpen","contactsFileName","setContactsFileName","setUnmatchedContacts","setMatchedContacts","contactsRowData","setContactsRowData","handleFileDropzoneChange","fileRejections","fileRejection","rejectionError","ErrorCode","FileInvalidType","FileTooLarge","deliverableResponse","deliverableTypeId","topicId","programIds","program","contact","deliveredDate","File","deliverableDocumentUploadedId","documentDownloadUrl","documentViewUrl","deliverableType","handleContactsFileChange","matchedAccounts","handleDocumentUploadedRemove","handleDeliverableDeleteButtonClick","requestBody","contactId","documentIds","deliverableDocumentUploadedIds","eventIds","deliverableIdResponse","selectedContacts","formatedSelectedContacts","cont","self","step","min","converted","parseFloat","decimal","entryId","deliverableFormClone","handleEntryRemove","popperProps","indexToUpdate","handleContactDateChange","handleContactDeleteButtonClick","InquiryDetailReadOnly","setInquiry","handleResendEmailButtonClick","handleReopenInquiryButtonClick","inquiryAccounts","inquiryStatus","handleDeleteButtonClick","handlePostComment","requesterNotes","inquiryDescription","inquiryStatusDescription","client","createdDescription","recipient","advisorAccount","responseSubmittedDescription","responseText","advisorBookingsUrl","requestingAccount","deleted","accountManagerAccount","SvgHackettDwcMatrixIcon","x1","y1","x2","y2","SvgHackettResearchReportsIcon","_rect2","_rect3","_rect4","_rect5","_rect6","_rect7","_rect8","_rect9","_rect10","_rect11","SvgHackettCustomContentIcon","SvgLogoHackett","NoMatch","SvgIconArrows","SvgIconBarchartUp","SvgIconRocket","SvgIconShield","SvgIconSignpost","oneProgramColumn","columnGap","columnCount","twoProgramColumn","reasonRow","reasonColumn","reasonIconOuter","reasonIcon","ProgramColumn","iconUrl","hasAccess","processIndex","Search","loadMoreRef","resultsLengthRef","filterQuery","sortingOptions","setSortingOptions","isLoadingFilters","setIsLoadingFilters","searchResults","setSearchResults","setTotalCount","hasNext","setHasNext","contentTypeFilters","setContentTypeFilters","loadingSearchResults","setLoadingSearchResults","fetchResults","newValue","checkSortOption","fetchContentTypes","searchFilters","handleListItemChange","searchResultsClone","bookmarkFlag","bookmarkedFlag","searchItem","topicTags","podcastUrl","typeFilter","SvgIconStarLarge","SvgHackettConsultationsIcon","routes","exact","private","main","emaillAddressInputValue","setEmaillAddressInputValue","targetUrl","levelOptions","setLevelOptions","suppressProgramEmails","setSuppressProgramEmails","level","function","officePhoneNumber","hasAdvisoryProfile","levelsResponse","functionsResponse","programResponse","node","handleEmailCommunicationPreferenceSwitchChange","updateAccountResponse","leftNaviationItems","setLeftNavigationItems","trendingContent","setTrendingContent","recommendations","setRecommendations","upcomingEvents","setUpcomingEvents","performanceStudy","setPerformanceStudy","featuredPodcasts","setFeaturedPodcasts","advisors","setAdvisors","showInquiriesModal","setShowInquiriesModal","showAiXplrModal","setShowAiXplrModal","leftNavigationResponse","recommendationsResponse","advisoryTeamResponse","recommendedContent","documentResponse","handleInquiriesConfirm","handleAiXplrConfirm","navigationItemIndex","bundles","bundle","comingSoonFlag","staticUrlName","newFlag","recommendation","recommendationIndex","contentTypeDescription","aiBg","aiXplrPng","podcast","advisorIndex","isFirst","advisorId","showLearnMoreModal","setShowLearnMoreModal","Ratio","aspectRatio","autoPlay","controls","marketIntelligenceLearnMoreVideoUrl","setBundle","showFullAccessModal","setShowFullAccessModal","showUpgradeModal","setShowUpgradeModal","fiveReasons","bgClassName","Icon","SignpostIcon","BarchartIcon","RocketIcon","ShieldIcon","ArrowsIcon","handleUpdateConfirm","programAccess","NONE","programDeliverables","PARTIAL","reasonIndex","topicsQuery","parentBusinessProcessesQuery","businessProcessesQuery","contentTypesQuery","topicFilters","setTopicFilters","businessProcessFilters","setBusinessProcessFilters","loadingDocuments","setLoadingDocuments","fetchFilters","parentBusinessProcessIds","businessProcessIds","allBpSelections","handleBusinessProcessesChange","selectedBpIds","handleResearchListItemChange","documentsClone","documentTypeName","selectedTopicIds","selectedContentTypeIds","setDocument","scrolling","serviceDeliveryComponentIds","themeIds","clearSelectionsRef","filtersAreLoading","setFiltersAreLoading","totalCountDescription","setTotalCountDescription","setTableFilters","setDownloadData","fetchTableFilters","serviceDeliveryComponents","themes","formattedBestPractices","bestPractices","bp","filterValue","selectedBusinessProcessIds","handlePaginationChange","checkedRowIds","uncheckedRowIds","selectedColumns","checkboxId","businessProcess","serviceDeliveryComponent","certificationStatus","levelOfEffort","timeFrame","bestPractice","setBestPractice","setLevelOfEffort","technicalComplexity","setTechnicalComplexity","organizationalComplexity","setOrganizationalComplexity","technicalSkills","setTechnicalSkills","businessSkills","setBusinessSkills","bestPracticeMetrics","setBestPracticeMetrics","fetchBestPractice","setImplementationConsiderations","technicalSkillsRequired","businessSkillsRequired","fetchMetrics","metrics","implementationValue","setFn","handleProgramSelectChange","getMeterColor","bar","barColor","serviceDeliveries","additionalInformation","decisionCriteria","prerequisitesAndEnablers","Tabs","defaultActiveKey","benefitsAndRisks","enablers","timeframeToImplement","approach","otherImplementationIssues","metric","metricIndex","metricBars","barItem","barIndex","barPercent","driver","driverComponentIds","sourceComponentIds","firstLoadComplete","initialTableFilters","d2","s2","formattedPerformanceMetrics","performanceMetrics","pm","selectedProgramId","performanceMetricTypes","tableColumnsDataClone","column","peerGroup","worldClass","topPerformer","industryPeer","firstQuartile","performanceMetric","setPerformanceMetric","metricsToShow","setMetricsToShow","maxValue","setMaxValue","largestValue","peerGroupValue","worldClassValue","industryPeerValue","firstQuartileValue","topPerformerValue","selectedOption","showDigitalWorldClass","showIndustryPeer","showFirstQuartile","showTopPerformer","route","advisorType","myStats","setMyStats","flagShowMyStats","setFlagShowMyStats","filterOptions","setFilterOptions","advisorTypes","teamStats","teamStat","INQUIRY_ADVISOR","grcAdvisorId","ADVISOR_INQUIRY_ADVISOR","isOrConditionAdvisor","inquiryStatuses","stat","statusDescription","is","accountManagerId","requestNumber","inquiries","setInquiries","totalInquiryCount","setTotalInquiryCount","statusOptions","advisorOptions","grcAdvisorOptions","accountManagerOptions","isOrConditionOptions","setOptions","statusValue","advisorValue","grcAdvisor","accountManager","isOrCondition","fetchIquiries","fetchFilterOptions","grcAdvisors","accountManagers","topicIdsFromQuery","selectedTopics","tid","getActiveFilterLength","filterLengthAccumulator","arrayListTarget","plainFilterValues","referenceOption","listInquiryText","inquiryListDescription","grcAdvisorAccount","formOption","selectedValues","recipientOptions","setRecipientOptions","advisorAccountManagerCcOptions","setAdvisorAccountManagerCcOptions","managerOptions","setManagerOptions","setAdvisorOptions","setGrcAdvisorOptions","setStatusOptions","textValue","notesValue","recipientsValue","ccValue","answerValue","isShowAdvisorEmail","isShowAdvisorBookingsUrl","inquiryFormValues","setInquiryFormValues","accountManagerValue","grcAdvisorValue","inquiryDetailsValues","setInquiryDetailsValues","setIsUploading","uploadProgressPercentages","setUploadProgressPercentages","isRecipientNotificationRequired","setIsRecipientNotificationRequired","inquiryResponse","optionsResponse","recipientResponse","inquiryCcAccounts","showAdvisorEmail","showAdvisorBookingsUrl","handleCopyLinkButtonClick","inquiryCcIds","documentIndexToRemove","accountManagerAccountId","advisorAccountId","grcAdvisorAccountId","handleIncludeAdvisorEmail","handleIncludeAdvisorBookingsUrl","filterBy","toLowerCase","showSaveAndNotifyButton","contactLastName","companyOptions","setCompanyOptions","contactEmail","deliverables","setDeliverables","totalDeliverables","setTotalDeliverables","fetchDeliverables","deliverable","deliverableTypeDescription","programsDescription","deliverableDateDescription","reportList","setReportList","reportItems","reports","report","isReportInProgress","setReportInProgress","inputControlsAreLoading","setInputControlsAreLoading","isFirstRender","setIsFirstRender","setBookmarks","setCurrentBookmark","setTotalPages","setCurrentPage","setReport","reportTitle","setReportTitle","downloadReportExtensions","setDownloadReportExtensions","setCurrentReportOutput","setIsDownloadInProgress","reportHeight","setReportHeight","authConfig","setAuthConfig","reportTimeoutRef","reportTimeoutDuration","filtersModalIsShowing","setFiltersModalIsShowing","resourceType","master_client_id","setReportResources","drillDowns","setDrilldowns","reportDetailResponse","authTokenResponse","reportDownloadExtensions","reportUrl","masterClientId","authToken","jasperToken","connecting","isAuth","jasperTokenUrl","globalThis","visualize","scripts","auth","preAuth","tokenName","done","resource","params","rawInputControls","inputControlItem","opt","fail","_error","clearReportTimeout","startReportTimeout","extra","reportResourcesStringified","container","scale","autoresize","loadingOverlay","runImmediately","reportPartsReady","changeTotalPages","pages","reportCompleted","getElementsByClassName","linkOptions","_event","targetParametersReport","run","handleReportDetailsLoading","parameters","output","innerReport","_report","export","outputFormat","ignorePagination","_link","linkParameterItem","flattenDeep","targetPage","loading","reportExportLink","innerText","downloadingWrapper","downloadingIcon","downloadingAnimation","spinAnimation","createTextNode","getElementById","updatedReportResources","downloadParams","reportFile","err","_resourceLookups","newDrillDownList","nextReportReference","targetBookmarkPage","showChatConfigModal","setShowChatConfigModal","shouldAnimate","showFollowUpQuestions","chatConfig","setChatConfig","chatScrollerOuterRef","chatScrollerInnerRef","chatResizeObserverRef","conversationsLoading","setConversationsLoading","conversationSections","setConversationSections","conversation","setConversation","questionInputValue","setQuestionInputValue","suggestionSubmission","setSuggestionSubmission","setChatContent","answerIsLoading","setAnswerIsLoading","isDisabled","setIsDisabled","showRateModel","setShowRateModal","queryIdToRate","setQueryIdToRate","thinkingMessage","setThinkingMessage","thinkingTimerRef","stopThinkingTimer","startThinkingTimer","fetchPastConversations","aiConversations","handleNewConversationButtonClick","destroyResizeObserver","handlePastConversationButtonClick","conversationQueries","parsedAiResponse","queryResponse","chatContentId","chatContentTypeId","QUESTION","followUpQuestions","rated","showMore","PAST_ANSWER","answer","citations","followUpQuestionsSuggestions","hasRating","handlePastConversationDeleteButtonClick","conversationToDelete","aiConversationId","snapToBottomOfChat","scrollToBottomOfChat","scrollTo","behavior","disconnect","createNewResizeObserver","ResizeObserver","observe","sendQuery","aiConversation","ANSWER","shouldShowSuggestions","suggestionId","suggestionRound","handleFollowUpQuestionClick","followUpQuestionSuggestion","suggestion","handleTextareaKeypress","shiftKey","handleTypewriterAnimationComplete","handleCopyButtonClick","handleRateButtonClick","handleShowMoreClick","context","chatContentComponent","q","onInput","yourTeam","setYourTeam","oldFilterValues","setOldFilterValues","originalFilter","setOriginalFilter","getStatusToSubmit","fetchInquiryData","statusToSubmit","handleTabChange","fetchYourTeam","firstThree","handleFilterFormSubmit","handleClearFiltersButtonClick","fv","showFilterChangedMessage","maxLength","activeOnly","sizeRef","bookmarked","industryIds","aiToolIds","valueRatingIds","businessProcessOptions","setBusinessProcessOptions","industryOptions","setIndustryOptions","aiToolOptions","setAiToolOptions","valueRatingOptions","setValueRatingOptions","industries","aiTools","valueRatings","formattedUseCases","useCases","handleFilterChange","_checkboxProps","useCaseSequence","functionDescription","businessProcessesDescription","aiToolsDescription","valueRating","setAiTools","useCase","setUseCase","fetchUseCase","categoryObserved","useCaseClient","permissionToViewClientName","aiTool","isIncluded","it","aiToolId","situation","solution","benefitsAndResults","useCaseBusinessTaxonomies","pair","parent","businessTaxonomyId","industryId","setDate","setStatus","version","setVersion","parseISO","__DATE_TIME__","__VERSION__","RoutedApp","isSignInRoute","appIsInitialized","accessTokenFromQuery","decryptedToken","accessTokenFromCookie","Route","ThemedApp","dsn","release","integrations","routingInstrumentation","createBrowserHistory","tracesSampleRate","replaysSessionSampleRate","replaysOnErrorSampleRate","App","ReactDOM"],"mappings":"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","file":"static/js/main.9779b030.chunk.js","sourcesContent":["export * from './account-invite-models';\nexport * from './account-models';\nexport * from './activity-models';\nexport * from './advisor-models';\nexport * from './ai-conversation-models';\nexport * from './amplify-models';\nexport * from './best-practice-models';\nexport * from './bundle-models';\nexport * from './performance-metric-models';\nexport * from './cookie-models';\nexport * from './cookieyes-event-data-models';\nexport * from './deliverable-models';\nexport * from './document-models';\nexport * from './event-models';\nexport * from './form-option-models';\nexport * from './inquiry-models';\nexport * from './jasper-report-models';\nexport * from './left-navigation-models';\nexport * from './navigation-models';\nexport * from './pagination-models';\nexport * from './presigned-upload-models';\nexport * from './program-models';\nexport * from './recommendation-models';\nexport * from './search-result-models';\nexport * from './time-zone-models';\nexport * from './topic-models';\nexport * from './use-case-models';\n","import { getEnvConfig } from './get-env-config';\n\nexport default getEnvConfig();\n","import { ENV_VARS } from './constants';\n\nexport type Environment = {\n\t[varName in ENV_VARS]: string;\n};\n\nfunction processEnvToConfig(env: NodeJS.ProcessEnv): Readonly {\n\treturn {\n\t\tHACKETT_ADVISORY_BASE_URL: env.REACT_APP_HACKETT_ADVISORY_BASE_URL || '',\n\t\tHACKETT_ADVISORY_SHOW_DEBUG: env.REACT_APP_HACKETT_ADVISORY_SHOW_DEBUG || '',\n\t\tHACKETT_ADVISORY_USE_REAL_AUTH: env.REACT_APP_HACKETT_ADVISORY_USE_REAL_AUTH || '',\n\t\tHACKETT_ADVISORY_AUTH_UI_URL: env.REACT_APP_HACKETT_ADVISORY_AUTH_UI_URL || '',\n\t\tHACKETT_ADVISORY_AUTH_API_URL: env.REACT_APP_HACKETT_ADVISORY_AUTH_API_URL || '',\n\t\tHACKETT_ADVISORY_COOKIE_DOMAIN: env.REACT_APP_HACKETT_ADVISORY_COOKIE_DOMAIN || 'localhost',\n\t\tHACKETT_ADVISORY_GOOGLE_ANALYTICS_ID: env.REACT_APP_HACKETT_ADVISORY_GOOGLE_ANALYTICS_ID || '',\n\t\tSENTRY_DSN: env.REACT_APP_SENTRY_DSN || '',\n\t\tHACKETT_ADVISORY_PACKAGE_VERSION: env.HACKETT_ADVISORY_PACKAGE_VERSION || ''\n\t};\n}\n\nexport function getEnvConfig(): Readonly {\n\treturn processEnvToConfig(process.env);\n}\n","import { TimeZoneModel } from '@/lib/models';\n\nexport enum ROLE_IDS {\n\tADVISOR = 'ADVISOR',\n\tSUPER_ADMIN = 'SUPER_ADMIN',\n\tUSER = 'USER',\n\tACCOUNT_MANAGER = 'ACCOUNT_MANAGER',\n\tGRC_ADVISOR = 'GRC_ADVISOR',\n}\n\nexport interface AccountModel {\n\taccountId: string;\n\tanalytics: object;\n\tclientName: string;\n\tdeliveryDate?: string;\n\tdeliveryDateDescription?: string;\n\temailAddress: string;\n\thasAdvisoryProfile: boolean;\n\tlocation?: string;\n\tmobileNumber?: string;\n\tname: string;\n\troles: ROLE_IDS[];\n\ttimeZone: TimeZoneModel;\n\ttitle: string;\n\tuserFunctionDescription?: string;\n\tuserFunctionTagIds?: string[];\n\tuserLevelDescription?: string;\n\tuserLevelTagId?: string;\n\tbookingsUrl?: string;\n\tdeleted: boolean;\n}\n\nexport interface UnmatchedAccountModel {\n\tcompany: string;\n\temail: string;\n\tphone: string;\n\ttitle: string;\n\tuserName: string;\n}\n\nexport interface AccountOptionModel {\n\ttagId: string;\n\tname: string;\n}\n\nexport interface BannerMessage {\n\tbannerMessageId: string;\n\ttitle: string;\n\tlinkDescription: string;\n\tlinkUrl: string;\n}\n","export enum ACTIVITY_TYPE_ID {\n\tBP = 'BP',\n\tACC = 'ACC',\n\tINQ = 'INQ',\n\tPM = 'PM',\n\tPF = 'PF',\n\tACCOUNT = 'ACCOUNT',\n\tPROGRAM = 'PROGRAM',\n\tDOCUMENT = 'DOCUMENT',\n}\n\nexport interface RecentActivityModel {\n\taccountId: string;\n\tactivityActionId: string; // todo\n\tactivityDate: string;\n\tactivityKey: string;\n\tactivityTypeId: ACTIVITY_TYPE_ID;\n\tipId?: string;\n\tipTitle?: string;\n\tipType?: string;\n\tipTypeDescription?: string;\n\trecentActivityId: string;\n\tsecondaryActivityKey: string;\n}\n","export interface AiConversation {\n\taiConversationId: string;\n\ttitle: string;\n\tconversationQueries: ConversationQuery[];\n}\n\nexport interface AiConversationSections {\n\t[x: string]: AiConversation[];\n}\n\nexport interface ConversationQuery {\n\tconversationQueryId: string;\n\taiConversationId: string;\n\tquery: string;\n\tqueryResponse: string;\n\tdisplayOrder: number;\n\thasRating: boolean;\n}\n\nexport interface TempResponse {\n\tanswer: string;\n\treferences?: string[];\n\tcitations: TempCitation[];\n\tfollowUpQuestionsSuggestions?: FollowUpQuestionSuggestion[];\n\tshowMore?: boolean;\n}\n\nexport interface FollowUpQuestionSuggestion {\n\tsuggestion: string;\n\tsuggestionId: string;\n\tsuggestionRound: number;\n}\n\nexport interface TempCitation {\n\tdocumentTitle: string;\n\tdocumentUrl: string;\n}\n\nexport enum FEEDBACK_RATING_ID {\n\tNEGATIVE = 'NEGATIVE',\n\tNEUTRAL = 'NEUTRAL',\n\tPOSITIVE = 'POSITIVE',\n}\n","export enum CHALLENGE_NAMES {\n\tSMS_MFA = 'SMS_MFA',\n\tSOFTWARE_TOKEN_MFA = 'SOFTWARE_TOKEN_MFA',\n\tNEW_PASSWORD_REQUIRED = 'NEW_PASSWORD_REQUIRED',\n\tMFA_SETUP = 'MFA_SETUP',\n}\n\nexport const challengeNameDescriptions = {\n\t[CHALLENGE_NAMES.SMS_MFA]: 'SMS MFA',\n\t[CHALLENGE_NAMES.SOFTWARE_TOKEN_MFA]: 'Software Token MFA',\n\t[CHALLENGE_NAMES.NEW_PASSWORD_REQUIRED]: 'New Password Required',\n\t[CHALLENGE_NAMES.MFA_SETUP]: 'MFA Setup',\n};\n\nexport enum MFA_TYPES {\n\tTOTP = 'TOTP',\n\tSMS = 'SMS',\n\tNOMFA = 'NOMFA',\n}\n\nexport enum PREFERRED_MFA_TYPES {\n\tSOFTWARE_TOKEN_MFA = 'SOFTWARE_TOKEN_MFA',\n\tSMS_MFA = 'SMS_MFA',\n\tNOMFA = 'NOMFA',\n}\n","export enum PROGRAM_ACCESS {\n\tFULL = 'FULL',\n\tPARTIAL = 'PARTIAL',\n\tNONE = 'NONE',\n}\n\nexport interface BundleModel {\n\tdescription: string;\n\tfiveReasons: boolean;\n\tname: string;\n\tprograms: BundleProgramModel[];\n\tprogramAccess: PROGRAM_ACCESS;\n\tprogramDeliverables?: string;\n}\n\nexport interface BundleProgramModel {\n\tbusinessProcesses: string[];\n\tname: string;\n\ticonUrl: string;\n\thasAccess: boolean;\n}\n","import config from '@/lib/config';\n\nexport enum COOKIES {\n\tACCESS_TOKEN = 'X-Hackett-Access-Token',\n\tTARGET_URL = 'TARGET_URL',\n\tMAINTENANCE_TARGET_URL = 'MAINTENANCE_TARGET_URL',\n}\n\nexport const accessTokenCookieAttributes = {\n\tsameSite: 'lax' as 'lax',\n\tdomain: config.HACKETT_ADVISORY_COOKIE_DOMAIN,\n};\n","import { AccountModel, DocumentModel, EventModel } from '@/lib/models';\n\nexport interface DeliverableModel {\n\tcontacts: AccountModel[];\n\tdeliverableId: string;\n\tdeliverableTypeDescription: string;\n\tdeliverableTypeId: string;\n\thours: number;\n\tdeliveryDate: string;\n\tdeliverableDateDescription: string;\n\tdescription: string;\n\tdocuments: DocumentModel[];\n\tdocumentsUploaded: DeliverableDocumentUploaded[];\n\tevents: EventModel[];\n\tprogramsDescription?: string;\n\tprogramIds: string[];\n\ttitle: string;\n\ttopicId: string;\n}\n\nexport interface DeliverableDocumentUploaded {\n\tdeliverableDocumentUploadedId: string;\n\tdocumentViewUrl: string;\n\tdocumentDownloadUrl: string;\n\ttitle: string;\n\tdeliverableId: string;\n}\n\nexport const deliverableUploadedAttachment = {\n\tvalidExtensions: ['.pdf', '.zip', '.doc', '.docx', '.xls', '.xlsx', '.ppt', '.pptx'],\n\tmaxFileSize_bytes: 104857600, // 100MB\n\taccept: {\n\t\t'application/pdf': ['.pdf'],\n\t\t'application/zip': ['.zip'],\n\t\t'application/msword': ['.doc'],\n\t\t'application/vnd.openxmlformats-officedocument.wordprocessingml.document': ['.docx'],\n\t\t'application/vnd.ms-excel': ['.xls'],\n\t\t'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': ['.xlsx'],\n\t\t'application/vnd.ms-powerpoint': ['.ppt'],\n\t\t'application/vnd.openxmlformats-officedocument.presentationml.presentation': ['.pptx'],\n\t},\n};\n","export enum DOCUMENT_FILE_TYPES {\n\tVIDEO_LINK = 'VIDEO_LINK',\n\tXLSX = 'XLSX',\n\tZIP = 'ZIP',\n\tDOCX = 'DOCX',\n\tTXT = 'TXT',\n\tPPTX = 'PPTX',\n\tPDF = 'PDF',\n}\n\nexport interface ContentType {\n\tcontentTypeId: string;\n\tcount: number;\n\tdescription: string;\n\tname: string;\n}\n\nexport interface DocumentModel {\n\tbookmarkedFlag: boolean;\n\tdescription: string;\n\tdocumentId: string;\n\tdocumentTypeName: string;\n\tfileName?: string;\n\tfileType?: DOCUMENT_FILE_TYPES;\n\thasImage: boolean;\n\timageType?: string;\n\timageUrl?: string;\n\tlistDescription: string;\n\tname: string;\n\tpublicationDate: string;\n\tpublicationDateDescription: string;\n\ttopicTags: TopicTagModel[];\n\tvideoLink?: string;\n\tviewUrl: string;\n\tdownloadUrl: string;\n\tpodcastUrl?: string;\n\tcanDownload: boolean;\n}\n\nexport interface TopicTagModel {\n\ttagId: string;\n\tname: string;\n\ttagTypeId: string;\n\tcreated: string;\n\tlastUpdated: string;\n}\n","import { DocumentModel, PaginatedResponseModel } from '@/lib/models';\n\nexport enum PERFORMANCE_STUDY_STATUS_ID {\n\tOPEN = 'OPEN',\n\tUPCOMING = 'UPCOMING',\n\tCLOSED = 'CLOSED',\n}\n\nexport enum EVENT_TYPE_ID {\n\tDEFAULT = 'DEFAULT',\n\tPERFORMANCE_STUDY = 'PERFORMANCE_STUDY',\n}\n\nexport interface EventModel {\n\tadvancePreparation?: string;\n\tcomplaintResolutionPolicy?: string;\n\tcourseLevel?: string;\n\tdescription: string;\n\tdocuments: PaginatedResponseModel & { documents: DocumentModel[] };\n\tdurationDescription: string;\n\teventId: string;\n\teventImage?: string;\n\teventTypeId: EVENT_TYPE_ID;\n\teventTypeDesc: string;\t\n\timageType?: string;\n\tlistDescription: string;\n\tname: string;\n\tpastEvent: boolean;\n\tperformanceStudyStatusId?: PERFORMANCE_STUDY_STATUS_ID;\n\tpresenterName: string;\n\tprogramPrerequisites?: string;\n\trecommendedCpeCredit?: string;\n\trefundPolicy?: string;\n\tregistrationRequirements?: string;\n\tregistrationUrl?: string;\n\twebexRecordingUrl?: string;\n\timageUrl?: string;\n}\n","import { AccountModel, FormOption, ProgramModel } from '@/lib/models';\n\nexport const inquiryAttachment = {\n\tvalidExtensions: ['.pdf', '.zip', '.doc', '.docx', '.xls', '.xlsx', '.ppt', '.pptx'],\n\tmaxFileSize_bytes: 104857600, // 100MB\n\taccept: {\n\t\t'application/pdf': ['.pdf'],\n\t\t'application/zip': ['.zip'],\n\t\t'application/msword': ['.doc'],\n\t\t'application/vnd.openxmlformats-officedocument.wordprocessingml.document': ['.docx'],\n\t\t'application/vnd.ms-excel': ['.xls'],\n\t\t'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': ['.xlsx'],\n\t\t'application/vnd.ms-powerpoint': ['.ppt'],\n\t\t'application/vnd.openxmlformats-officedocument.presentationml.presentation': ['.pptx'],\n\t},\n};\n\nexport enum INQUIRY_STATUS_ID {\n\tOPEN = 'OPEN',\n\tINQUIRY_RECEIVED = 'INQUIRY_RECEIVED',\n\tINQUIRY_CONFIRMED = 'INQUIRY_CONFIRMED',\n\tIN_PROGRESS = 'IN_PROGRESS',\n\tQC_REVIEW = 'QC_REVIEW',\n\tCLOSED = 'CLOSED',\n\tTOTAL = 'TOTAL',\n}\n\nexport enum INQUIRY_TYPE_ID {\n\tPERFORMANCE_METRICS = 'PERFORMANCE_METRICS',\n\tPEER_TO_PEER = 'PEER_TO_PEER',\n\tCUSTOM_RESPONSE = 'CUSTOM_RESPONSE',\n\tRESEARCH = 'RESEARCH',\n}\n\nexport interface InquiryModel {\n\taccountManagerAccount: AccountModel;\n\tadvisorAccount: AccountModel;\n\tclient: { clientId: string; name: string };\n\tcreatedDescription: string;\n\tdocuments: InquiryDocument[];\n\tgrcAdvisorAccount: AccountModel;\n\tinquiryAccounts: AccountModel[];\n\tinquiryCcAccounts?: AccountModel[];\n\tinquiryDescription: string;\n\tinquiryListDescription: string;\n\tinquiryId: string;\n\tinquiryStatus: INQUIRY_STATUS_ID;\n\tinquiryStatusDescription: string;\n\tinquiryText: string;\n\tlistInquiryText: string;\n\tinquiryTitle: string;\n\tnotes?: string;\n\tshouldShowNotes: boolean;\n\tinquiryType: INQUIRY_TYPE_ID;\n\tinquiryTypeDescription: string;\n\tprogram: ProgramModel;\n\trequestingAccount: AccountModel;\n\trequiresImmediateResponse: boolean;\n\tresponseSubmittedDescription: string;\n\tresponseText: string;\n\ttopics: string;\n\ttopicsList: FormOption[];\n\tisRecipientNotificationRequired?: boolean;\n\trequesterNotes?: string;\n\tshowAdvisorEmail: boolean;\n\tshowAdvisorBookingsUrl: boolean;\n\tadvisorBookingsUrl: string;\n}\n\nexport interface InquiryDocument {\n\tdocumentId: string;\n\tdownloadUrl: string;\n\tviewUrl: string;\n\tname: string;\n}\n\nexport interface InquiryStat {\n\taccountId: string;\n\tinquiryStatuses: InquiryStatStatus[];\n\tname: string;\n}\n\nexport interface InquiryStatStatus {\n\tstatusId: INQUIRY_STATUS_ID;\n\tstatusDescription: string;\n\tcount: string;\n}\n\nexport interface InquiryNotificationPreference {\n\tinquiryStatusId: INQUIRY_STATUS_ID;\n\tdescription: string;\n\tshouldNotify: boolean;\n\ttype: string;\n}\n","export enum DOCUMENT_UPLOAD_STATUS_ID {\n\tCREATED = 'CREATED',\n\tIN_PROGRESS = 'IN_PROGRESS',\n\tCOMPLETE = 'COMPLETE',\n}\n\nexport interface PresignedUploadModel {\n\taccessUrl: string;\n\tcontentType: string;\n\tdocumentId: string;\n\texpirationTimestamp: string;\n\texpirationTimestampDescription: string;\n\thttpHeaders: Record;\n\thttpMethod: string;\n\turl: string;\n}\n","export interface ResultItemModel {\n\tdata: {\n\t\tcategory: string;\n\t\tid: string;\n\t};\n\tvalue: string;\n}\n\nexport interface SearchResultDocumentModel {\n\tid: string;\n\ttitle: string;\n\tdescription: string;\n\tdownloadUrl?: string;\n\tviewUrl?: string;\n\tpodcastUrl?: string;\n\tcanDownload?: boolean;\n\tfileType: string;\n\tfileName?: string;\n\tdetailsUrl: string;\n\tbookmarkFlag?: boolean;\n\ttype: string;\n\ttypeDescription: string;\n\tcontentTypes: string;\n\ttopicTags: string;\n}\n\nexport interface SearchResultModel {\n\tcount: number;\n\tdocuments: SearchResultDocumentModel[];\n\thasNext: boolean;\n\tlastSortValue: string;\n}\n\nexport enum SEARCH_SORT {\n\tRELEVANCE = 'RELEVANCE',\n\tNAME_ASC = 'NAME_ASC',\n\tNAME_DESC = 'NAME_DESC',\n\tDATE_ASC = 'DATE_ASC',\n\tDATE_DESC = 'DATE_DESC',\n}\n\nexport const searchSortOptions = [\n\t{\n\t\tsearchSort: SEARCH_SORT.RELEVANCE,\n\t\ttitle: 'Relevance',\n\t},\n\t{\n\t\tsearchSort: SEARCH_SORT.NAME_ASC,\n\t\ttitle: 'Name (A-Z)',\n\t},\n\t{\n\t\tsearchSort: SEARCH_SORT.NAME_DESC,\n\t\ttitle: 'Name (Z-A)',\n\t},\n\t{\n\t\tsearchSort: SEARCH_SORT.DATE_DESC,\n\t\ttitle: 'Most Recent',\n\t},\n\t{\n\t\tsearchSort: SEARCH_SORT.DATE_ASC,\n\t\ttitle: 'Least Recent',\n\t},\n];\n","export enum TOPIC_FILTERS {\n\tSTRATEGY_AND_ORGANIZATION = 'STRATEGY_AND_ORGANIZATION',\n\tTALENT = 'TALENT',\n\tAGILITY = 'AGILITY',\n\tSOURCING_AND_SUPPLY_BASE_STRATEGY = 'SOURCING_AND_SUPPLY_BASE_STRATEGY',\n\tSUPPLY_CHAIN = 'SUPPLY_CHAIN',\n\tPURCHASING_OPTIONS = 'PURCHASING_OPTIONS',\n\tTECHNOLOGY = 'TECHNOLOGY',\n\tDIGITAL_TRANSFORMATION = 'DIGITAL_TRANSFORMATION',\n\tPERFORMANCE_AND_VALUE_MANAGEMENT = 'PERFORMANCE_AND_VALUE_MANAGEMENT',\n}\n\nexport const topicFilters = {\n\t[TOPIC_FILTERS.STRATEGY_AND_ORGANIZATION]: {\n\t\ttopicFilterId: TOPIC_FILTERS.STRATEGY_AND_ORGANIZATION,\n\t\ttopicFilterTitle: 'Strategy and Organization',\n\t},\n\t[TOPIC_FILTERS.TALENT]: {\n\t\ttopicFilterId: TOPIC_FILTERS.TALENT,\n\t\ttopicFilterTitle: 'Talent',\n\t},\n\t[TOPIC_FILTERS.AGILITY]: {\n\t\ttopicFilterId: TOPIC_FILTERS.AGILITY,\n\t\ttopicFilterTitle: 'Agility',\n\t},\n\t[TOPIC_FILTERS.SOURCING_AND_SUPPLY_BASE_STRATEGY]: {\n\t\ttopicFilterId: TOPIC_FILTERS.SOURCING_AND_SUPPLY_BASE_STRATEGY,\n\t\ttopicFilterTitle: 'Sourcing and Supply Base Strategy',\n\t},\n\t[TOPIC_FILTERS.SUPPLY_CHAIN]: {\n\t\ttopicFilterId: TOPIC_FILTERS.SUPPLY_CHAIN,\n\t\ttopicFilterTitle: 'Supply Chain',\n\t},\n\t[TOPIC_FILTERS.PURCHASING_OPTIONS]: {\n\t\ttopicFilterId: TOPIC_FILTERS.PURCHASING_OPTIONS,\n\t\ttopicFilterTitle: 'Purchasing Options',\n\t},\n\t[TOPIC_FILTERS.TECHNOLOGY]: {\n\t\ttopicFilterId: TOPIC_FILTERS.TECHNOLOGY,\n\t\ttopicFilterTitle: 'Technology',\n\t},\n\t[TOPIC_FILTERS.DIGITAL_TRANSFORMATION]: {\n\t\ttopicFilterId: TOPIC_FILTERS.DIGITAL_TRANSFORMATION,\n\t\ttopicFilterTitle: 'Digital Transformation',\n\t},\n\t[TOPIC_FILTERS.PERFORMANCE_AND_VALUE_MANAGEMENT]: {\n\t\ttopicFilterId: TOPIC_FILTERS.PERFORMANCE_AND_VALUE_MANAGEMENT,\n\t\ttopicFilterTitle: 'Performance and Value Management',\n\t},\n};\n","import React, { FC, createContext, useState } from 'react';\n\nimport { AccountModel } from '@/lib/models';\n\ninterface AccountContextConfig {\n\taccount: AccountModel | undefined;\n\tsetAccount: React.Dispatch>;\n}\n\nexport const AccountContext = createContext({} as AccountContextConfig);\n\nexport const AccountProvider: FC = ({ children }) => {\n\tconst [account, setAccount] = useState(undefined);\n\n\tconst value = {\n\t\taccount,\n\t\tsetAccount,\n\t};\n\n\treturn {children};\n};\n","import React, { FC, createContext, useState, useRef, useCallback } from 'react';\n\nexport type AlertVariant = '' | 'success' | 'warning' | 'danger';\n\ninterface AlertConfig {\n\tchildren: JSX.Element | (() => JSX.Element) | null;\n\tvariant: AlertVariant;\n\tduration?: number;\n}\n\ninterface AlertContextConfig {\n\talertChildren: JSX.Element | (() => JSX.Element) | null;\n\talertVariant: AlertVariant;\n\talertDuration: number;\n\talertIsShowing: boolean;\n\tshowAlert(alertConfig: AlertConfig): void;\n\thideAlert(): void;\n}\n\nexport const AlertContext = createContext({} as AlertContextConfig);\n\nconst defaultAlertDuration = 6000;\n\nexport const AlertProvider: FC = ({ children }) => {\n\tconst hideTimeoutRef = useRef(undefined);\n\n\tconst [alertChildren, setAlertChildren] = useState JSX.Element) | null>(null);\n\tconst [alertVariant, setAlertVariant] = useState('');\n\tconst [alertDuration, setAlertDuration] = useState(defaultAlertDuration);\n\tconst [alertIsShowing, setAlertIsShowing] = useState(false);\n\n\tconst hideAlert = useCallback(() => {\n\t\tif (hideTimeoutRef.current) {\n\t\t\tclearTimeout(hideTimeoutRef.current);\n\t\t}\n\n\t\tsetAlertIsShowing(false);\n\t}, []);\n\n\tconst showAlert = useCallback(\n\t\t(alertConfig: AlertConfig) => {\n\t\t\tsetAlertChildren(alertConfig.children);\n\t\t\tsetAlertVariant(alertConfig.variant);\n\t\t\tsetAlertDuration(alertConfig.duration ? alertConfig.duration : defaultAlertDuration);\n\t\t\tsetAlertIsShowing(true);\n\n\t\t\tif (hideTimeoutRef.current) {\n\t\t\t\tclearTimeout(hideTimeoutRef.current);\n\t\t\t}\n\n\t\t\thideTimeoutRef.current = setTimeout(() => {\n\t\t\t\thideAlert();\n\t\t\t}, alertDuration);\n\t\t},\n\t\t[alertDuration, hideAlert]\n\t);\n\n\tconst value = {\n\t\talertChildren,\n\t\talertVariant,\n\t\talertDuration,\n\t\talertIsShowing,\n\t\tshowAlert,\n\t\thideAlert,\n\t};\n\n\treturn {children};\n};\n","import React, { FC, createContext, useCallback, useEffect, useState } from 'react';\nimport ReactGA from 'react-ga4';\nimport config from '@/lib/config';\nimport { AccountModel, CookieyesEventModel } from '@/lib/models';\nimport Cookies from 'js-cookie';\n\ninterface AnalyticsContextConfig {\n\thandleAnalyticOutbound(link: string): void;\n\thandleClickEvent(url: string): void;\n}\n\nexport const AnalyticsContext = createContext(undefined);\n\ninterface AnalyticsProviderProps {\n\taccount?: AccountModel;\n}\n\nexport const AnalyticsProvider: FC = ({ account, children }) => {\n\tconst [analyticsAllowed, setAnalyticsAllowed] = useState(false);\n\n\tuseEffect(() => {\n\t\tif (!analyticsAllowed) {\n\t\t\t// Potential [TODO] if ReactGA can add a disable feature:\n\t\t\t// If user had previously consented to analytics, but revokes mid-session,\n\t\t\t// manually disabled ReactGA and delete all GA cookies here and then return;\n\t\t\t// https://github.com/react-ga/react-ga/issues/381\n\t\t\treturn;\n\t\t}\n\n\t\tReactGA.initialize(config.HACKETT_ADVISORY_GOOGLE_ANALYTICS_ID, {\n\t\t\ttestMode: __DEV__,\n\t\t\t...(account && {\n\t\t\t\tgaOptions: account.analytics,\n\t\t\t}),\n\t\t});\n\n\t\tif (account) {\n\t\t\tReactGA.set({\n\t\t\t\tuserId: account.accountId,\n\t\t\t});\n\t\t}\n\t}, [account, analyticsAllowed]);\n\n\tuseEffect(() => {\n\t\tsetAnalyticsAllowed(Cookies.get('cookieyes-analytics') === 'yes');\n\t}, []);\n\n\tconst handleCookieYesConsentUpdate = useCallback(({ detail }: CookieyesEventModel) => {\n\t\tsetAnalyticsAllowed(!!detail?.accepted.includes('analytics'));\n\t}, []);\n\n\tuseEffect(() => {\n\t\t// CookieYes documentation on banner interaction events\n\t\t// https://www.cookieyes.com/documentation/events-on-cookie-banner-interactions/\n\t\tdocument.addEventListener('cookieyes_consent_update', handleCookieYesConsentUpdate);\n\n\t\treturn () => {\n\t\t\tdocument.removeEventListener('cookieyes_consent_update', handleCookieYesConsentUpdate);\n\t\t};\n\t}, [handleCookieYesConsentUpdate]);\n\n\tconst handleAnalyticOutbound = (link: string) => {\n\t\tconst a = document.createElement('a');\n\t\ta.href = link;\n\t\ta.target = '_blank';\n\t\ta.rel = 'noopener';\n\t\tdocument.body.appendChild(a);\n\t\ta.click();\n\t\ta.remove();\n\t};\n\n\tconst handleClickEvent = (url: string) => {\n\t\tReactGA.gtag('event', 'click', {\n\t\t\tevent_category: 'outbound',\n\t\t\tlink_url: url,\n\t\t\ttransport_type: 'beacon',\n\t\t\toutbound: 'true',\n\t\t});\n\t};\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n","import React, { FC, createContext, useState } from 'react';\nimport { GetNavigationResponseModel } from '@/lib/models';\n\ninterface NavigationConfigContextConfig {\n\tnavigationConfig?: GetNavigationResponseModel;\n\tsetNavigationConfig: React.Dispatch>;\n}\n\nexport const NavigationConfigContext = createContext({} as NavigationConfigContextConfig);\n\nexport const NavigationConfigProvider: FC = ({ children }) => {\n\tconst [navigationConfig, setNavigationConfig] = useState();\n\n\tconst value = {\n\t\tnavigationConfig,\n\t\tsetNavigationConfig,\n\t};\n\n\treturn {children};\n};\n","export const colors = {\n\twhite: '#FFFFFF',\n\tgray100: '#F8F9FA',\n\tgray200: '#E9ECEF',\n\tgray300: '#DEE2E6',\n\tgray400: '#CED4DA',\n\tgray500: '#ADB5BD',\n\tgray600: '#6D757D',\n\tgray700: '#495057',\n\tgray800: '#343A40',\n\tgray900: '#212529',\n\tblack: '#000000',\n\n\tprimary: '#006FBA',\n\tsecondary: '#F47920',\n\ttertiary: '#454595',\n\tsuccess: '#7FAA3A',\n\twarning: '#F8AF0A',\n\tdanger: '#CC3333',\n\tinfo: '#00A1DE',\n\tdark: '#002F5F',\n};\n","const openSans = {\n\tfontFamily: '\"Open Sans\", sans-serif',\n\tweights: {\n\t\tregular: 400,\n\t\tsemiBold: 600,\n\t\tbold: 700,\n\t},\n};\n\nexport const fonts = {\n\t...openSans,\n\txxl: {\n\t\tfontSize: '5.0rem',\n\t\tlineHeight: 1.2,\n\t},\n\txl: {\n\t\tfontSize: '3.6rem',\n\t\tlineHeight: 1.2,\n\t},\n\tl: {\n\t\tfontSize: '2.8rem',\n\t\tlineHeight: 1.2,\n\t},\n\tm: {\n\t\tfontSize: '2.2rem',\n\t\tlineHeight: 1.2,\n\t},\n\ts: {\n\t\tfontSize: '1.6rem',\n\t\tlineHeight: 1.5,\n\t},\n\txs: {\n\t\tfontSize: '1.4rem',\n\t\tlineHeight: 1.5,\n\t},\n\txxs: {\n\t\tfontSize: '1.2rem',\n\t\tlineHeight: 1.5,\n\t},\n\topenSansRegular: {\n\t\tfontFamily: openSans.fontFamily,\n\t\tfontWeight: openSans.weights.regular,\n\t},\n\topenSansSemiBold: {\n\t\tfontFamily: openSans.fontFamily,\n\t\tfontWeight: openSans.weights.semiBold,\n\t},\n\topenSansBold: {\n\t\tfontFamily: openSans.fontFamily,\n\t\tfontWeight: openSans.weights.bold,\n\t},\n};\n","// Media queries as defined by react-bootstrap 1.0.0-beta.17\n// https://react-bootstrap.github.io/layout/grid/\n\nexport const screenWidths = {\n\txs: 575,\n\tsm: 576,\n\tmd: 768,\n\tlg: 992,\n\txl: 1200,\n\tnav: 1160,\n};\n\nexport const mediaQueries = {\n\txs: `@media(max-width: ${screenWidths.xs}px)`,\n\tsm: `@media(min-width: ${screenWidths.sm}px)`,\n\tmd: `@media(min-width: ${screenWidths.md}px)`,\n\tlg: `@media(min-width: ${screenWidths.lg}px)`,\n\txl: `@media(min-width: ${screenWidths.xl}px)`,\n\tnav: `@media(min-width: ${screenWidths.nav}px)`,\n};\n\nexport default mediaQueries;\n","import Color from 'color';\n\nexport const boxShadow = {\n\tboxShadow: '0 1px 2px 0 rgba(91,103,112,0.1), 0 2px 5px 0 rgba(91,103,112,0.1)',\n};\n\nexport const focus = (color: string) => {\n\treturn {\n\t\toutline: 'none',\n\t\tboxShadow: `0 0 0 0.2rem ${Color(color)\n\t\t\t.alpha(0.32)\n\t\t\t.rgb()}`,\n\t};\n};\n","import React, { FC, createContext, useState, useCallback } from 'react';\nimport { ThemeProvider as JssProvider } from 'react-jss';\n\nimport { colors, fonts } from '@/jss';\n\ntype TypeOfColors = typeof colors;\ntype TypeOfFonts = typeof fonts;\n\nexport interface ThemeConfig {\n\tcolors: TypeOfColors;\n\tfonts: TypeOfFonts;\n}\n\ninterface ThemeContextConfig {\n\ttheme: ThemeConfig;\n\tsetColors(values: Partial): void;\n\tsetFonts(values: Partial): void;\n}\n\nexport const ThemeContext = createContext({} as ThemeContextConfig);\n\nexport const ThemeProvider: FC = (props) => {\n\tconst [theme, setInternalTheme] = useState({\n\t\tcolors,\n\t\tfonts,\n\t});\n\n\tconst setColors = useCallback(\n\t\t(newColors: Partial) => {\n\t\t\tsetInternalTheme({\n\t\t\t\t...theme,\n\t\t\t\tcolors: {\n\t\t\t\t\t...colors,\n\t\t\t\t\t...newColors,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t\t[theme]\n\t);\n\n\tconst setFonts = useCallback(\n\t\t(newFonts: Partial) => {\n\t\t\tsetInternalTheme({\n\t\t\t\t...theme,\n\t\t\t\tfonts: {\n\t\t\t\t\t...fonts,\n\t\t\t\t\t...newFonts,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t\t[theme]\n\t);\n\n\tconst values = {\n\t\ttheme,\n\t\tsetColors,\n\t\tsetFonts,\n\t};\n\n\treturn (\n\t\t\n\t\t\t{props.children}\n\t\t\n\t);\n};\n\nexport const ThemeConsumer = ThemeContext.Consumer;\n","function fallbackCopyTextToClipboard(text: string, successCallback?: () => void, errorCallback?: (error: any) => void) {\n\tconst tempInput = document.createElement('input');\n\n\ttempInput.value = text;\n\n\tdocument.body.appendChild(tempInput);\n\ttempInput.select();\n\n\ttry {\n\t\t// document.execCommand is depricated,\n\t\t// but not all browsers support navigator.clipboard,\n\t\t// so we need this fallback\n\t\tdocument.execCommand('copy');\n\n\t\tif (successCallback) {\n\t\t\tsuccessCallback();\n\t\t}\n\t} catch (error) {\n\t\tif (errorCallback) {\n\t\t\terrorCallback(error);\n\t\t}\n\t}\n\n\tdocument.body.removeChild(tempInput);\n}\n\nexport function copyTextToClipboard(text: string, successCallback?: () => void, errorCallback?: (error: any) => void) {\n\tif (!navigator.clipboard) {\n\t\tfallbackCopyTextToClipboard(text, successCallback, errorCallback);\n\t\treturn;\n\t}\n\n\tnavigator.clipboard.writeText(text).then(successCallback, errorCallback);\n}\n\nexport async function copyHtmlTextToClipboard(\n\thtmlText: string,\n\tsuccessCallback?: () => void,\n\terrorCallback?: (error: any) => void\n) {\n\tconst domParser = new DOMParser();\n\tconst htmlDocument = domParser.parseFromString(htmlText, 'text/html');\n\tconst plainText = htmlDocument.body.textContent ?? '';\n\n\tif (typeof ClipboardItem !== 'undefined') {\n\t\ttry {\n\t\t\tconst html = new Blob([htmlText], { type: 'text/html' });\n\t\t\tconst text = new Blob([plainText], { type: 'text/plain' });\n\t\t\tconst data = new ClipboardItem({ 'text/html': html, 'text/plain': text });\n\n\t\t\tawait navigator.clipboard.write([data]);\n\t\t\tsuccessCallback?.();\n\t\t} catch (error) {\n\t\t\terrorCallback?.(error);\n\t\t}\n\t} else {\n\t\ttry {\n\t\t\tconst cb = (e: ClipboardEvent) => {\n\t\t\t\te.clipboardData?.setData('text/html', htmlText);\n\t\t\t\te.clipboardData?.setData('text/plain', plainText);\n\t\t\t\te.preventDefault();\n\t\t\t};\n\n\t\t\tdocument.addEventListener('copy', cb);\n\t\t\tdocument.execCommand('copy');\n\t\t\tdocument.removeEventListener('copy', cb);\n\n\t\t\tsuccessCallback?.();\n\t\t} catch (error) {\n\t\t\terrorCallback?.(error);\n\t\t}\n\t}\n}\n","export const downloadFileAtUrl = async (url: string, title: string, callback?: () => void) => {\n\ttry {\n\t\tconst anchor = document.createElement('a');\n\t\tanchor.href = url;\n\t\tanchor.download = title;\n\n\t\tdocument.body.appendChild(anchor);\n\t\tanchor.click();\n\t\tdocument.body.removeChild(anchor);\n\n\t\tif (callback) {\n\t\t\tcallback();\n\t\t}\n\t} catch (error) {\n\t\tthrow error;\n\t}\n};\n","import { ErrorConfig } from '@/lib/http-client';\n\nexport function isErrorConfig(error: ErrorConfig | unknown): error is ErrorConfig {\n\treturn (error as ErrorConfig).code !== undefined && (error as ErrorConfig).message !== undefined;\n}\n","import { MultiSelectOption } from '@/components';\nimport { FormOption } from '@/lib/models';\n\nexport const formOptionToMultiSelectOption = (formOptions: FormOption[]): MultiSelectOption[] => {\n\treturn formOptions.map((fo) => ({\n\t\tid: fo.id,\n\t\ttitle: fo.display,\n\t\tvalue: fo.id,\n\t\t...(fo.filterItems && { options: formOptionToMultiSelectOption(fo.filterItems) }),\n\t}));\n};\n","interface BpicLocation {\n\tcity: string;\n\tstate: string;\n\tcountry: string;\n\tcountryCode: string;\n\tplaceId: string;\n}\n\nexport const mutateGooglePlaceResultToBpicLocationFormat = (\n\tgooglePlaceResult: google.maps.places.PlaceResult\n): string => {\n\tconst { place_id, address_components, formatted_address } = googlePlaceResult;\n\tconst splitFormattedAddress = formatted_address ? formatted_address.split(', ') : [];\n\n\tconst location: BpicLocation = {\n\t\tcity: splitFormattedAddress[0] ?? '',\n\t\tstate: '',\n\t\tcountry: '',\n\t\tcountryCode: address_components?.find((ac) => ac.types.includes('country'))?.short_name ?? '',\n\t\tplaceId: place_id ?? '',\n\t};\n\n\tif (typeof splitFormattedAddress[2] === 'undefined') {\n\t\tlocation.country = splitFormattedAddress[1];\n\t} else {\n\t\tlocation.state = splitFormattedAddress[1];\n\t\tlocation.country = splitFormattedAddress[2];\n\t}\n\n\treturn JSON.stringify(location);\n};\n\nexport const mutateBpicLocationFormatToInputFormat = (locationString: string): string => {\n\ttry {\n\t\tconst parsedLocation: BpicLocation = JSON.parse(locationString);\n\t\tlet locationInputValue = parsedLocation.city + ', ';\n\n\t\tif (parsedLocation.state.length) {\n\t\t\tlocationInputValue += parsedLocation.state + ', ';\n\t\t}\n\n\t\tlocationInputValue += parsedLocation.country;\n\n\t\treturn locationInputValue;\n\t} catch (error) {\n\t\treturn '';\n\t}\n};\n","export function constructUrl(pathname: string, queryParameters?: Record, search?: string): string {\n\tconst searchParams = search ? new URLSearchParams(search) : new URLSearchParams();\n\n\tif (queryParameters) {\n\t\tObject.entries(queryParameters).forEach(([key, value]) => {\n\t\t\tsearchParams.delete(key);\n\n\t\t\tif (Array.isArray(value)) {\n\t\t\t\tsearchParams.append(key, value.join('|'));\n\t\t\t} else {\n\t\t\t\tsearchParams.append(key, value);\n\t\t\t}\n\t\t});\n\t}\n\n\tconst searchParamsLength = Array.from(searchParams).length;\n\n\tif (searchParamsLength > 0) {\n\t\treturn `${pathname}?${searchParams.toString()}`;\n\t}\n\n\treturn pathname;\n}\n\nexport function getParsedQuery(query: URLSearchParams, arrayFormat: string = ',') {\n\tconst parsedQuery: Record = {};\n\n\tfor (const keyValuePair of query.entries()) {\n\t\tconst key = keyValuePair[0];\n\t\tconst value = keyValuePair[1].includes(arrayFormat)\n\t\t\t? keyValuePair[1].split(arrayFormat).filter((s) => s)\n\t\t\t: keyValuePair[1];\n\n\t\tif (parsedQuery[key]) {\n\t\t\tif (Array.isArray(parsedQuery[key])) {\n\t\t\t\tparsedQuery[key].push(value);\n\t\t\t} else {\n\t\t\t\tconst previousValue = parsedQuery[key];\n\t\t\t\tparsedQuery[key] = [previousValue, value];\n\t\t\t}\n\t\t} else {\n\t\t\tparsedQuery[key] = value;\n\t\t}\n\t}\n\n\treturn parsedQuery;\n}\n\nexport function getValidPaginatorSize(query: URLSearchParams) {\n\tlet size = query\n\t\t.get('size')\n\t\t?.split('|')\n\t\t.filter((s) => s)[0];\n\tconst validPaginatorSizes = ['10', '20', '50'];\n\tif (!size || !validPaginatorSizes.includes(size)) {\n\t\tsize = '10';\n\t}\n\n\treturn size;\n}\n","import { AxiosError } from 'axios';\n\nexport enum ERROR_CODES {\n\tGENERIC = 'GENERIC',\n\tSERVICE_UNAVAILABLE = 'SERVICE_UNAVAILABLE',\n\tREQUEST_ABORTED = 'REQUEST_ABORTED',\n}\n\nexport type ErrorConfig = {\n\tcode: ERROR_CODES | string;\n\tstatus?: number;\n\tmessage: string;\n\tapiError?: ApiError;\n\taxiosError: AxiosError;\n};\n\nexport type ApiError = {\n\tcode: string;\n\tstackTrace: string;\n\tmessage: string;\n\tglobalErrors?: string;\n\tfieldErrors?: FieldError[];\n\tmetaData?: Record;\n};\n\ntype FieldError = {\n\tfield: string;\n\terror: string;\n};\n\nexport type ErrorGeneratorFuction = (error: AxiosError) => ErrorConfig;\nexport type ErrorsConfig = Record;\n\nexport const errors: ErrorsConfig = {\n\t[ERROR_CODES.GENERIC]: (error) => {\n\t\tconst status = error.response?.status;\n\n\t\treturn {\n\t\t\tcode: ERROR_CODES.GENERIC,\n\t\t\t...(status && { status }),\n\t\t\tmessage: 'Sorry, an error occurred.',\n\t\t\taxiosError: error,\n\t\t};\n\t},\n\t[ERROR_CODES.SERVICE_UNAVAILABLE]: (error) => {\n\t\treturn {\n\t\t\tcode: ERROR_CODES.SERVICE_UNAVAILABLE,\n\t\t\tstatus: 503,\n\t\t\tmessage: 'Service is currently unavailable',\n\t\t\taxiosError: error,\n\t\t};\n\t},\n\t[ERROR_CODES.REQUEST_ABORTED]: (error) => {\n\t\tconst status = error.response?.status;\n\n\t\treturn {\n\t\t\tcode: ERROR_CODES.REQUEST_ABORTED,\n\t\t\t...(status && { status }),\n\t\t\tmessage: 'Sorry, the request was cancelled.',\n\t\t\taxiosError: error,\n\t\t};\n\t},\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFileWord(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 23,\n fill: \"currentColor\",\n viewBox: \"0 0 384 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M224 128L224 0H48C21.49 0 0 21.49 0 48v416C0 490.5 21.49 512 48 512h288c26.51 0 48-21.49 48-48V160h-127.1C238.3 160 224 145.7 224 128zM281.5 240h23.37c7.717 0 13.43 7.18 11.69 14.7l-42.46 184C272.9 444.1 268 448 262.5 448h-29.26c-5.426 0-10.18-3.641-11.59-8.883L192 329.1l-29.61 109.1C160.1 444.4 156.2 448 150.8 448H121.5c-5.588 0-10.44-3.859-11.69-9.305l-42.46-184C65.66 247.2 71.37 240 79.08 240h23.37c5.588 0 10.44 3.859 11.69 9.301L137.8 352L165.6 248.9C167 243.6 171.8 240 177.2 240h29.61c5.426 0 10.18 3.641 11.59 8.883L246.2 352l23.7-102.7C271.1 243.9 275.1 240 281.5 240zM256 0v128h128L256 0z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFileWord);\nexport default __webpack_public_path__ + \"static/media/icon-file-word.ec16e6b5.svg\";\nexport { ForwardRef as ReactComponent };","import { v4 as uuid } from 'uuid';\nimport Cookies from 'js-cookie';\nimport axios, { AxiosInstance, AxiosRequestConfig, AxiosError, AxiosResponse, CancelTokenSource } from 'axios';\nimport * as Sentry from '@sentry/react';\n\nimport { COOKIES } from '@/lib/models';\nimport { ERROR_CODES, errors, ErrorConfig, ApiError } from '@/lib/http-client/errors';\n\nexport type HttpConfig = {\n\tbaseUrl?: string;\n\tdefaultHeaders?: Record;\n\ttokenHeaderKey?: string;\n\ttokenHeaderType?: string;\n\tgetToken?(): Promise;\n};\n\nexport type OrchestratedRequest = {\n\trequestId: string;\n\trequestComplete: boolean;\n\tsource: CancelTokenSource;\n\tconfig: AxiosRequestConfig;\n\tfetch(): Promise;\n\tabort(): void;\n};\n\nexport class HttpClient {\n\t_baseUrl: string;\n\t_headers: any;\n\t_requests: Record>;\n\t_axiosInstance: AxiosInstance;\n\n\tconstructor(httpConfig: HttpConfig) {\n\t\tthis._baseUrl = httpConfig.baseUrl || '';\n\t\tthis._headers = httpConfig.defaultHeaders || {};\n\t\tthis._requests = {};\n\n\t\tthis._axiosInstance = axios.create();\n\t\tthis._axiosInstance.interceptors.request.use(\n\t\t\tasync (options) => {\n\t\t\t\tif (httpConfig.tokenHeaderKey && httpConfig.getToken) {\n\t\t\t\t\tconst token = await httpConfig.getToken();\n\n\t\t\t\t\tif (token) {\n\t\t\t\t\t\toptions.headers[httpConfig.tokenHeaderKey] = `${\n\t\t\t\t\t\t\thttpConfig.tokenHeaderType ? `${httpConfig.tokenHeaderType} ` : ''\n\t\t\t\t\t\t}${token}`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn options;\n\t\t\t},\n\t\t\t(error) => {\n\t\t\t\tconsole.error('Error obtaining accessToken:', error);\n\t\t\t}\n\t\t);\n\t}\n\n\tabortRequest(requestId: string) {\n\t\tconst request = this._requests[requestId];\n\n\t\tif (request) {\n\t\t\trequest.abort();\n\t\t}\n\t}\n\n\tasync _fetch(config: AxiosRequestConfig) {\n\t\ttry {\n\t\t\tconst response: AxiosResponse = await this._axiosInstance(config);\n\t\t\treturn response;\n\t\t} catch (error) {\n\t\t\tconst maintenanceTargetUrl = Cookies.get(COOKIES.MAINTENANCE_TARGET_URL);\n\n\t\t\tSentry.addBreadcrumb({ message: (error as AxiosError).message });\n\t\t\tSentry.addBreadcrumb({ message: 'maintenanceTargetUrl set to ' + maintenanceTargetUrl });\n\n\t\t\tif (axios.isCancel(error)) {\n\t\t\t\tthrow errors[ERROR_CODES.REQUEST_ABORTED](error as AxiosError);\n\t\t\t} else if ((error as AxiosError).response === undefined) {\n\t\t\t\tconst systemStatus = await this.getSystemStatus();\n\n\t\t\t\tif (systemStatus === 503) {\n\t\t\t\t\tObject.values(this._requests).forEach((request) => {\n\t\t\t\t\t\trequest.abort();\n\t\t\t\t\t});\n\n\t\t\t\t\tif (!maintenanceTargetUrl && window.location.pathname !== '/maintenance') {\n\t\t\t\t\t\tCookies.set(COOKIES.MAINTENANCE_TARGET_URL, window.location.pathname);\n\t\t\t\t\t}\n\n\t\t\t\t\tSentry.addBreadcrumb({ message: 'System status was ' + systemStatus });\n\t\t\t\t\tSentry.captureMessage('Maintenance page redirect');\n\n\t\t\t\t\tthrow errors[ERROR_CODES.SERVICE_UNAVAILABLE](error as AxiosError);\n\t\t\t\t} else {\n\t\t\t\t\tthrow this._getFormattedError(error as AxiosError);\n\t\t\t\t}\n\t\t\t} else if ((error as AxiosError).response?.status === 503) {\n\t\t\t\tObject.values(this._requests).forEach((request) => {\n\t\t\t\t\trequest.abort();\n\t\t\t\t});\n\n\t\t\t\tif (!maintenanceTargetUrl && window.location.pathname !== '/maintenance') {\n\t\t\t\t\tCookies.set(COOKIES.MAINTENANCE_TARGET_URL, window.location.pathname);\n\t\t\t\t}\n\n\t\t\t\tSentry.addBreadcrumb({ message: 'System status not checked' });\n\t\t\t\tSentry.captureMessage('Maintenance page redirect');\n\n\t\t\t\tthrow errors[ERROR_CODES.SERVICE_UNAVAILABLE](error as AxiosError);\n\t\t\t} else {\n\t\t\t\tconst formattedError = this._getFormattedError(error as AxiosError);\n\n\t\t\t\tif (\n\t\t\t\t\tformattedError.code === 'AUTHENTICATION_REQUIRED' ||\n\t\t\t\t\tformattedError.code === 'NotAuthorizedException' ||\n\t\t\t\t\tformattedError.status === 401 ||\n\t\t\t\t\tformattedError.status === 403\n\t\t\t\t) {\n\t\t\t\t\tObject.values(this._requests).forEach((request) => {\n\t\t\t\t\t\trequest.abort();\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tthrow formattedError;\n\t\t\t}\n\t\t}\n\t}\n\n\tasync getSystemStatus() {\n\t\ttry {\n\t\t\tconst response = await fetch(`${this._baseUrl}advisory-service/api/v1/public/system/status`);\n\n\t\t\tif (!response || !response.status || response.status === 503 || response.status === 0) {\n\t\t\t\tif (!response) {\n\t\t\t\t\tSentry.addBreadcrumb({ message: 'Responwse was empty', type: 'getSystemStatus' });\n\t\t\t\t\treturn 400;\n\t\t\t\t} else if (!response.status) {\n\t\t\t\t\tSentry.addBreadcrumb({ message: 'Response status was empty', type: 'getSystemStatus' });\n\t\t\t\t\treturn 400;\n\t\t\t\t} else if (response.status === 503) {\n\t\t\t\t\tSentry.addBreadcrumb({ message: 'Response was 503', type: 'getSystemStatus' });\n\t\t\t\t\treturn 503;\n\t\t\t\t} else if (response.status === 0) {\n\t\t\t\t\tSentry.addBreadcrumb({ message: 'Response was 0', type: 'getSystemStatus' });\n\t\t\t\t\treturn 400;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn response.status;\n\t\t} catch (error) {\n\t\t\tSentry.addBreadcrumb({ message: 'getSystemStatus fetch error caught', type: 'getSystemStatus' });\n\t\t\tSentry.addBreadcrumb({ message: JSON.stringify(error), type: 'getSystemStatus' });\n\t\t\treturn 400;\n\t\t}\n\t}\n\n\t_getFormattedError(error: AxiosError): ErrorConfig {\n\t\tconst errorFromApi: ApiError = error?.response?.data;\n\n\t\tif (errorFromApi) {\n\t\t\tconst formattedApiError: ErrorConfig = {\n\t\t\t\tcode: errorFromApi.code,\n\t\t\t\tstatus: error.response?.status,\n\t\t\t\tmessage: errorFromApi.message,\n\t\t\t\tapiError: errorFromApi,\n\t\t\t\taxiosError: error,\n\t\t\t};\n\n\t\t\treturn formattedApiError;\n\t\t}\n\n\t\treturn errors[ERROR_CODES.GENERIC](error);\n\t}\n\n\torchestrateRequest(requestConfig: AxiosRequestConfig) {\n\t\tconst orchestratedRequest: OrchestratedRequest = {\n\t\t\trequestId: uuid(),\n\t\t\trequestComplete: false,\n\t\t} as any;\n\n\t\torchestratedRequest.fetch = async () => {\n\t\t\tconst source = axios.CancelToken.source();\n\n\t\t\torchestratedRequest.requestComplete = false;\n\t\t\torchestratedRequest.source = source;\n\t\t\torchestratedRequest.config = {\n\t\t\t\t...requestConfig,\n\t\t\t\tbaseURL: this._baseUrl,\n\t\t\t\theaders: {\n\t\t\t\t\t...this._headers,\n\t\t\t\t\t...requestConfig.headers,\n\t\t\t\t},\n\t\t\t\tcancelToken: source.token,\n\t\t\t\tdata: requestConfig.data ?? {},\n\t\t\t};\n\n\t\t\tthis._requests[orchestratedRequest.requestId] = orchestratedRequest;\n\n\t\t\tconst { data } = await this._fetch(orchestratedRequest.config);\n\n\t\t\torchestratedRequest.requestComplete = true;\n\t\t\tdelete this._requests[orchestratedRequest.requestId];\n\n\t\t\treturn data as T;\n\t\t};\n\n\t\torchestratedRequest.abort = () => {\n\t\t\tif (orchestratedRequest.requestComplete) return;\n\t\t\tif (!orchestratedRequest.source) return;\n\n\t\t\torchestratedRequest.source.cancel();\n\n\t\t\torchestratedRequest.requestComplete = true;\n\t\t\tdelete this._requests[orchestratedRequest.requestId];\n\t\t};\n\n\t\treturn orchestratedRequest;\n\t}\n}\n","import Cookies from 'js-cookie';\nimport config from '@/lib/config';\nimport { HttpClient } from './http-client';\nimport { COOKIES } from '../models';\n\nexport * from './errors';\n\nexport const httpSingleton = new HttpClient({\n\tbaseUrl: config.HACKETT_ADVISORY_BASE_URL,\n\tdefaultHeaders: {\n\t\t'Content-Type': 'application/json',\n\t},\n\ttokenHeaderKey: 'Authorization',\n\ttokenHeaderType: 'Bearer',\n\tgetToken: async () => {\n\t\ttry {\n\t\t\treturn Cookies.get(COOKIES.ACCESS_TOKEN);\n\t\t} catch (error) {\n\t\t\treturn undefined;\n\t\t}\n\t},\n});\n\nexport const authHttpSingleton = new HttpClient({\n\tbaseUrl: config.HACKETT_ADVISORY_AUTH_API_URL,\n\tdefaultHeaders: {\n\t\t'Content-Type': 'application/json',\n\t},\n\ttokenHeaderKey: 'Authorization',\n\ttokenHeaderType: 'Bearer',\n\tgetToken: async () => {\n\t\ttry {\n\t\t\treturn Cookies.get(COOKIES.ACCESS_TOKEN);\n\t\t} catch (error) {\n\t\t\treturn undefined;\n\t\t}\n\t},\n});","import { AccountModel, AccountOptionModel, BannerMessage, FormOption, ProgramModel } from '@/lib/models';\nimport { authHttpSingleton, httpSingleton } from '@/lib/http-client';\nimport { constructUrl } from '@/lib/utils';\n\ninterface UpdateCurrentAccountRequestBody {\n\tname: string;\n\ttitle: string;\n\tuserLevelTagId: string;\n\tuserFunctionTagIds: string[];\n\temailAddress?: string;\n\tbookingsUrl?: string;\n\tmobileNumber?: string;\n\tlocation?: string;\n}\n\nexport const accountService = {\n\tgetCurrentAccount() {\n\t\treturn httpSingleton.orchestrateRequest<{ account: AccountModel }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/account`,\n\t\t});\n\t},\n\tupdateCurrentAccount(id: string, data: UpdateCurrentAccountRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest<{ account: AccountModel }>({\n\t\t\tmethod: 'PUT',\n\t\t\turl: `/advisory-service/api/v1/account/${id}`,\n\t\t\tdata,\n\t\t});\n\t},\n\tgetAccountOptions(option: 'USER_LEVEL' | 'USER_FUNCTION') {\n\t\treturn httpSingleton.orchestrateRequest<{ options: AccountOptionModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/account/options/${option}`,\n\t\t});\n\t},\n\tgetPrograms(accountId: string, queryParameters?: { activeOnly?: boolean }) {\n\t\treturn httpSingleton.orchestrateRequest<{ programs: ProgramModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl(`/advisory-service/api/v1/account/${accountId}/programs`, queryParameters),\n\t\t});\n\t},\n\tgetAccountFilters() {\n\t\treturn httpSingleton.orchestrateRequest<{ sortFields: FormOption[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/account-filter',\n\t\t});\n\t},\n\tgetFreshdeskSupportUrl() {\n\t\treturn httpSingleton.orchestrateRequest<{ freshdeskSupportUrl: string }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/account/freshdesk-support',\n\t\t});\n\t},\n\tgetFreshdeskTicketsUrl() {\n\t\treturn httpSingleton.orchestrateRequest<{ freshdeskSupportUrl: string }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/account/freshdesk-tickets',\n\t\t});\n\t},\n\tgetBannerMessages() {\n\t\treturn httpSingleton.orchestrateRequest<{ bannerMessages: BannerMessage[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/account/banner-messages',\n\t\t});\n\t},\n\tmarkBannerMessageRead(bannerMessageId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{ bannerMessages: BannerMessage[] }>({\n\t\t\tmethod: 'PUT',\n\t\t\turl: `/advisory-service/api/v1/account/banner-message/${bannerMessageId}`,\n\t\t});\n\t},\n\tsignOut() {\n\t\treturn authHttpSingleton.orchestrateRequest<{ bannerMessages: BannerMessage[] }>({\n\t\t\tmethod: 'POST',\n\t\t\turl: '/auth-service/api/v1/account/sign-out',\n\t\t});\n\t},\n\ttrackSignIn() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'PUT',\n\t\t\turl: '/advisory-service/api/v1/account/track-login',\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { RecentActivityModel } from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\nexport const activityService = {\n\tgetRecentlyViewed(queryParameters?: { limit?: number }) {\n\t\treturn httpSingleton.orchestrateRequest<{ recentActivities: RecentActivityModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/recent-activity/view', queryParameters),\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { constructUrl } from '@/lib/utils';\nimport { AdvisorModel } from '@/lib/models';\n\nexport const advisorService = {\n\tgetAdvisoryTeam(queryParameters?: { count?: number; programId?: string }) {\n\t\treturn httpSingleton.orchestrateRequest<{ advisors: AdvisorModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/advisory-team', queryParameters),\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { AiConversation, AiConversationSections, ConversationQuery, FEEDBACK_RATING_ID } from '@/lib/models';\n\nexport interface SendQueryRequestBody {\n\tquery: string;\n\taiConversationId?: string;\n\tsuggestionId?: string;\n\tsuggestionRound?: number;\n\tshouldShowSuggestions?: boolean;\n}\n\nexport const aiConversationService = {\n\tgetPastConversations() {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\taiConversations: AiConversationSections;\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/ai-conversations',\n\t\t});\n\t},\n\tsendQuery(data: SendQueryRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest<{ query: ConversationQuery }>({\n\t\t\tmethod: 'POST',\n\t\t\turl: '/advisory-service/api/v1/ai-conversation/query',\n\t\t\tdata,\n\t\t});\n\t},\n\tgetConversation(converstaionId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{ aiConversation: AiConversation }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/ai-conversation/${converstaionId}`,\n\t\t});\n\t},\n\trateConversationQuery(data: {\n\t\tconversationQueryId: string;\n\t\tfeedbackRatingId: FEEDBACK_RATING_ID;\n\t\treason?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: '/advisory-service/api/v1/ai-conversation/feedback',\n\t\t\tdata,\n\t\t});\n\t},\n\tdeleteConversation(converstaionId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'DELETE',\n\t\t\turl: `/advisory-service/api/v1/ai-conversation/${converstaionId}`,\n\t\t});\n\t},\n\tshowMore(conversationQueryId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{ query: ConversationQuery }>({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/ai-conversation/query/${conversationQueryId}/show-more`,\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport {\n\tBestPracticeItemDetailModel,\n\tBestPracticeModel,\n\tBestPracticeDownloadModel,\n\tPaginatedResponseModel,\n\tFormOption,\n\tProgramFormOption,\n} from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\nexport const bestPracticeService = {\n\tgetBestPractices(queryParameters?: {\n\t\tparentBusinessProcessIds?: string;\n\t\tbusinessProcessIds?: string;\n\t\tpage?: string;\n\t\tserviceDeliveryComponentIds?: string;\n\t\tsize?: string;\n\t\tsortDirection?: string;\n\t\tsortField?: string;\n\t\tthemeIds?: string;\n\t\tprogramId: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/best-practice', queryParameters),\n\t\t});\n\t},\n\tgetBestPractice(bestPracticeId: string, queryParameters?: { programId?: string }) {\n\t\treturn httpSingleton.orchestrateRequest<{ bestPractice: BestPracticeItemDetailModel }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl(`/advisory-service/api/v1/best-practice/${bestPracticeId}`, queryParameters),\n\t\t});\n\t},\n\tgetFilters(queryParameters?: { programId?: string }) {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\tbusinessProcesses: FormOption[];\n\t\t\tserviceDeliveryComponents: FormOption[];\n\t\t\tthemes: FormOption[];\n\t\t\ttopics: FormOption[];\n\t\t\tprograms: ProgramFormOption[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/best-practice/filters', queryParameters),\n\t\t});\n\t},\n\tgetBestPracticeDetailsFilters(bestPracticeId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\tprograms: ProgramFormOption[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/best-practice/${bestPracticeId}/filters`,\n\t\t});\n\t},\n\tdownloadFile(data: { bestPracticeIds: string[]; selectedColumns?: string[] }) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: '/advisory-service/api/v1/best-practice/download',\n\t\t\tdata,\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { BundleModel } from '@/lib/models';\n\nexport const bundleService = {\n\tgetBundleByBundleId(bundleId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/bundle/${bundleId}`,\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { PerformanceMetricModel, PaginatedResponseModel, FormOption, ProgramFormOption } from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\nexport const performanceMetricService = {\n\tgetPerformanceMetrics(queryParameters: {\n\t\tparentBusinessProcessIds?: string;\n\t\tbusinessProcessIds?: string;\n\t\tdriverComponentIds?: string;\n\t\tprogramId: string;\n\t\tpage?: string;\n\t\tsize?: string;\n\t\tsortDirection?: string;\n\t\tsortField?: string;\n\t\tsourceComponentIds?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest<\n\t\t\tPaginatedResponseModel & { performanceMetrics: PerformanceMetricModel[] }\n\t\t>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/performance-metric', queryParameters),\n\t\t});\n\t},\n\tgetFilters(queryParameters?: {\n\t\tprogramId?: string;\n\t\tparentBusinessProcessIds?: string;\n\t\tbusinessProcessIds?: string;\n\t\tdriverComponentIds?: string;\n\t\tsourceComponentIds?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\tbusinessProcess: FormOption[];\n\t\t\tdriver: FormOption[];\n\t\t\tsortFields: FormOption[];\n\t\t\tsource: FormOption[];\n\t\t\ttopics: FormOption[];\n\t\t\tprograms: ProgramFormOption[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/performance-metric/filters', queryParameters),\n\t\t});\n\t},\n\tgetPerformanceMetricDetailsFilters(performanceMetricId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\tprograms: ProgramFormOption[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/performance-metric/${performanceMetricId}/filters`,\n\t\t});\n\t},\n\tgetPerformanceMetricById(performanceMetricId: string, queryParameters: { programId: string }) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl(`/advisory-service/api/v1/performance-metric/${performanceMetricId}`, queryParameters),\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport {\n\tAccountModel,\n\tDeliverableModel,\n\tFormOption,\n\tPaginatedResponseModel,\n\tUnmatchedAccountModel,\n\tPresignedUploadModel,\n\tDOCUMENT_UPLOAD_STATUS_ID,\n} from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\ninterface GetDeliverableFiltersResponse {\n\tclients: FormOption[];\n\tdeliverableType: FormOption[];\n\tprograms: FormOption[];\n\tsortFields: FormOption[];\n}\n\ninterface GetDeliverablesFormResponse {\n\tcreateClientUrl: string;\n\tcreateDocumentUrl: string;\n\tdeliverableType: FormOption[];\n\tprograms: FormOption[];\n\ttopics: FormOption[];\n}\n\ninterface PostDeliverableRequest {\n\tcontacts: {\n\t\tcontactId: string;\n\t\tdeliveryDate: string;\n\t}[];\n\tdeliverableTypeId: string;\n\tdeliveryDate: string;\n\tdescription: string;\n\tdocumentIds: string[];\n\tdeliverableDocumentUploadedIds: string[];\n\teventIds: string[];\n\tprogramIds: string[];\n\ttitle: string;\n\ttopicId: string;\n}\n\ninterface ImportContactsFromFileResponse {\n\tmatchedAccounts: AccountModel[];\n\tunmatchedContacts: UnmatchedAccountModel[];\n}\n\ninterface GetPresignedUploadRequestBody {\n\tdeliverableId: string;\n\tcontentType: string;\n\ttitle: string;\n}\n\ninterface UpdateDeliverableDocumentStatusRequestBody {\n\tdocumentUploadStatusId: DOCUMENT_UPLOAD_STATUS_ID;\n\tdeliverableId: string;\n\tdeliverableDocumentUploadedId: string;\n}\n\nexport const deliverablesService = {\n\tgetDeliverables(queryParameters?: {\n\t\tclientId?: string;\n\t\tcontactLastName?: string;\n\t\tdeliverableTypeId?: string;\n\t\temailAddress?: string;\n\t\tfromDate?: string;\n\t\tpage?: string;\n\t\tprogramIds?: string;\n\t\tquery?: string;\n\t\tsize?: string;\n\t\tsortDirection?: string;\n\t\tsortField?: string;\n\t\ttoDate?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest<\n\t\t\tPaginatedResponseModel & {\n\t\t\t\tdeliverables: DeliverableModel[];\n\t\t\t}\n\t\t>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/deliverable', queryParameters),\n\t\t});\n\t},\n\tgetDeliverableFilters() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/deliverable-filter',\n\t\t});\n\t},\n\tgetDeliverablesForm(queryParameters?: {\n\t\tdeliverableId?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/deliverable-form', queryParameters)\n\t\t});\n\t},\n\timportContactsFromFile(file: File) {\n\t\tconst data = new FormData();\n\t\tdata.append('file', file, file.name);\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'multipart/form-data',\n\t\t\t},\n\t\t\turl: '/advisory-service/api/v1/deliverable/contacts',\n\t\t\tdata,\n\t\t});\n\t},\n\tgetAccounts(data: { query?: string; page?: string; size?: string; accountsToIgnore?: string[] }) {\n\t\treturn httpSingleton.orchestrateRequest<\n\t\t\tPaginatedResponseModel & {\n\t\t\t\taccounts: AccountModel[];\n\t\t\t}\n\t\t>({\n\t\t\tmethod: 'POST',\n\t\t\turl: '/advisory-service/api/v1/deliverable/accounts',\n\t\t\tdata\n\t\t});\n\t},\n\tpostDeliverable(data: PostDeliverableRequest) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: '/advisory-service/api/v1/deliverable',\n\t\t\tdata,\n\t\t});\n\t},\n\tgetDeliverableById(deliverableId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/deliverable/${deliverableId}`,\n\t\t});\n\t},\n\tupdateDeliverable(deliverableId: string, data: PostDeliverableRequest) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'PUT',\n\t\t\turl: `/advisory-service/api/v1/deliverable/${deliverableId}`,\n\t\t\tdata,\n\t\t});\n\t},\n\tdeleteDeliverable(deliverableId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'DELETE',\n\t\t\turl: `/advisory-service/api/v1/deliverable/${deliverableId}`,\n\t\t});\n\t},\n\tgetPresignedDocumentUpload(data: GetPresignedUploadRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest<{ upload: PresignedUploadModel }>({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/deliverable-document`,\n\t\t\tdata,\n\t\t});\n\t},\n\tupdateDeliverableDocumentUploadedStatus(data: UpdateDeliverableDocumentStatusRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'PUT',\n\t\t\turl: '/advisory-service/api/v1/deliverable-document/status',\n\t\t\tdata,\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { constructUrl } from '@/lib/utils';\nimport { DocumentModel, PaginatedResponseModel, FormOption } from '@/lib/models';\n\nexport const documentService = {\n\tgetDocuments(queryParameters?: {\n\t\tbookmarked?: boolean;\n\t\tparentBusinessProcessIds?: string[];\n\t\tbusinessProcessIds?: string[];\n\t\tbusinessTaxonomyId?: string;\n\t\tdocumentTypes?: string[];\n\t\tfromDate?: string;\n\t\tlink?: string;\n\t\tpage?: string;\n\t\tsize?: string;\n\t\tsortDirection?: string;\n\t\tsortField?: string;\n\t\ttoDate?: string;\n\t\ttopicIds?: string[];\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/documents', queryParameters),\n\t\t});\n\t},\n\tgetDocumentById(documentId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `advisory-service/api/v1/document/${documentId}`,\n\t\t});\n\t},\n\taddBookmark(documentId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/document/bookmark/${documentId}`,\n\t\t});\n\t},\n\tremoveBookmark(documentId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'DELETE',\n\t\t\turl: `/advisory-service/api/v1/document/bookmark/${documentId}`,\n\t\t});\n\t},\n\tgetDocumentFilters(queryParameters?: {\n\t\tparentBusinessProcessIds?: string[];\n\t\tbusinessProcessIds?: string[];\n\t\ttopicIds?: string[];\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\tbusinessProcesses: FormOption[];\n\t\t\tcontentTypes: FormOption[];\n\t\t\tsortFields: FormOption[];\n\t\t\ttopics: FormOption[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/document-filter', queryParameters),\n\t\t});\n\t},\n\ttrackDocumentDownload(documentId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/document/${documentId}/download/activity`,\n\t\t});\n\t},\n\ttrackDocumentView(documentId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/document/${documentId}/view/activity`,\n\t\t});\n\t},\n};\n","import { PresignedUploadModel } from '@/lib/models';\n\ninterface DocumentUploader {\n\tstart: () => this;\n\tonBeforeUpload: (callback: (previewUrl: string) => void) => this;\n\tonPresignedUploadObtained: (callback: (presignedUpload: PresignedUploadModel) => void) => this;\n\tonProgress: (callback: (percentage: number) => void) => this;\n\tonComplete: (callback: (presignedUpload: PresignedUploadModel) => void) => this;\n\tonError: (callback: (error: unknown) => void) => this;\n}\n\nexport const documentUploader = (\n\tblob: Blob,\n\tpresignedUploadGetter: () => Promise<{ upload: PresignedUploadModel }>\n) => {\n\tlet onPresignedUploadObtainedCallback: undefined | ((presignedUpload: PresignedUploadModel) => void) = undefined;\n\tlet onProgressCallback: undefined | ((percentage: number) => void) = undefined;\n\tlet onCompleteCallback: undefined | ((presignedUpload: PresignedUploadModel) => void) = undefined;\n\tlet onErrorCallback: undefined | ((error: unknown) => void) = undefined;\n\n\tconst documentUpload: DocumentUploader = {\n\t\tonBeforeUpload: (callback: (previewUrl: string) => void) => {\n\t\t\tcallback(URL.createObjectURL(blob));\n\t\t\treturn documentUpload;\n\t\t},\n\t\tonPresignedUploadObtained: (callback) => {\n\t\t\tonPresignedUploadObtainedCallback = callback;\n\t\t\treturn documentUpload;\n\t\t},\n\t\tonProgress: (callback) => {\n\t\t\tonProgressCallback = callback;\n\t\t\treturn documentUpload;\n\t\t},\n\t\tonComplete: (callback) => {\n\t\t\tonCompleteCallback = callback;\n\t\t\treturn documentUpload;\n\t\t},\n\t\tonError: (callback) => {\n\t\t\tonErrorCallback = callback;\n\t\t\treturn documentUpload;\n\t\t},\n\t\tstart: () => {\n\t\t\tpresignedUploadGetter()\n\t\t\t\t.then(({ upload }) => {\n\t\t\t\t\tonPresignedUploadObtainedCallback?.(upload);\n\n\t\t\t\t\treturn new Promise((resolve: (presignedUpload: PresignedUploadModel) => void, reject) => {\n\t\t\t\t\t\tconst xhr = new XMLHttpRequest();\n\n\t\t\t\t\t\txhr.upload.addEventListener('progress', (event) => {\n\t\t\t\t\t\t\tif (event.lengthComputable) {\n\t\t\t\t\t\t\t\tconst percentCompleted = Math.round((event.loaded * 100) / event.total);\n\t\t\t\t\t\t\t\tonProgressCallback?.(percentCompleted);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\txhr.addEventListener('load', () => {\n\t\t\t\t\t\t\tresolve(upload);\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\txhr.addEventListener('error', () => {\n\t\t\t\t\t\t\treject({\n\t\t\t\t\t\t\t\tcode: 'UPLOAD_ERROR',\n\t\t\t\t\t\t\t\tmessage: 'There was an error uploading your document.',\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\txhr.addEventListener('abort', () => {\n\t\t\t\t\t\t\treject({\n\t\t\t\t\t\t\t\tcode: 'UPLOAD_ABORTED',\n\t\t\t\t\t\t\t\tmessage: 'The document upload was aborted.',\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\txhr.open(upload.httpMethod, upload.url, true);\n\n\t\t\t\t\t\tfor (const httpHeaderName in upload.httpHeaders) {\n\t\t\t\t\t\t\txhr.setRequestHeader(httpHeaderName, upload.httpHeaders[httpHeaderName]);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\txhr.send(blob);\n\t\t\t\t\t});\n\t\t\t\t})\n\t\t\t\t.then((presignedUpload) => {\n\t\t\t\t\tonCompleteCallback?.(presignedUpload);\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tonErrorCallback?.(error);\n\t\t\t\t});\n\n\t\t\treturn documentUpload;\n\t\t},\n\t};\n\n\treturn documentUpload;\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { constructUrl } from '@/lib/utils';\nimport { EventModel, FormOption, PaginatedResponseModel, ProgramModel } from '@/lib/models';\n\ninterface GetEventsQueryParameters {\n\tpage?: string;\n\tsize?: number;\n\tprogramId?: string;\n}\n\ninterface GetAllEventsQueryParameters extends GetEventsQueryParameters {\n\tstart?: string;\n\tend?: string;\n\tsearchQuery?: string;\n\tsortField?: string;\n\tsortDirection?: string;\n}\nexport const eventsService = {\n\tgetAllEvents(queryParameters?: GetAllEventsQueryParameters) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/events', queryParameters),\n\t\t});\n\t},\n\tgetUpcomingEvents(queryParameters?: GetEventsQueryParameters) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/events/upcoming', queryParameters),\n\t\t});\n\t},\n\tgetPastEvents(queryParameters?: GetEventsQueryParameters) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/events/past', queryParameters),\n\t\t});\n\t},\n\tgetEventbyId(eventId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/event/${eventId}`,\n\t\t});\n\t},\n\tgetUpcomingPerformanceStudies(queryParameters?: GetEventsQueryParameters) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/events/performance-studies/upcoming', queryParameters),\n\t\t});\n\t},\n\tgetPastPerformanceStudies(queryParameters?: GetEventsQueryParameters) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/events/performance-studies/past', queryParameters),\n\t\t});\n\t},\n\tgetRelevantPerformanceStudyProgramOptions(isPast?: boolean) {\n\t\treturn httpSingleton.orchestrateRequest<{ programs: ProgramModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/event/performance-studies/programs', { isPast }),\n\t\t});\n\t},\n\tgetRelevantEventProgramOptions(isPast?: boolean) {\n\t\treturn httpSingleton.orchestrateRequest<{ programs: ProgramModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/event/programs', { isPast }),\n\t\t});\n\t},\n\tgetEventFilters() {\n\t\treturn httpSingleton.orchestrateRequest<{ sortFields: FormOption[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/event-filter',\n\t\t});\n\t},\n\tgetNearestPerformanceStudy() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/events/performance-studies/nearest',\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport {\n\tAccountModel,\n\tDOCUMENT_UPLOAD_STATUS_ID,\n\tFormOption,\n\tInquiryModel,\n\tInquiryStat,\n\tINQUIRY_STATUS_ID,\n\tPaginatedResponseModel,\n\tPresignedUploadModel,\n} from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\ninterface GetInquiryFormOptionsResponseBody {\n\taccountManagers: FormOption[];\n\taccounts: FormOption[];\n\tadvisors: FormOption[];\n\tclients: FormOption[];\n\tcreateAccountUrl: string;\n\tgrcAdvisors: FormOption[];\n\tinquiryStatus: FormOption[];\n\tinquiryType: FormOption[];\n\tprograms: FormOption[];\n\ttopics: FormOption[];\n\tshouldShowNotes: boolean;\n\treachedInquiryLimit: boolean;\n}\n\ninterface CreateInquiryRequestBody {\n\tclientId?: string;\n\trequestingAccountId?: string;\n\tprogramId: string;\n\tinquiryTypeId: string;\n\ttopicIds?: string[];\n\tinquiryTitle: string;\n\tinquiryText: string;\n\tnotes?: string;\n\trequiresImmediateResponse?: boolean;\n}\n\ninterface GetInquiriesQueryParameters {\n\tadvisorId?: string;\n\tclientId?: string;\n\tpage?: string;\n\tprogramId?: string;\n\tquery?: string;\n\tsize?: string;\n\tsortDirection?: string;\n\tsortField?: string;\n\tstatus?: INQUIRY_STATUS_ID[];\n\ttype?: string;\n\ttopicIds?: string[];\n\trequestNumber?: string;\n\tfromDate?: string;\n\ttoDate?: string;\n}\n\ninterface GetInquiryFiltersResponseBody {\n\taccountManagers: FormOption[];\n\tadvisors: FormOption[];\n\tclients: FormOption[];\n\tprograms: FormOption[];\n\tgrcAdvisors: FormOption[];\n\tstatus: FormOption[];\n\ttype: FormOption[];\n\ttopics: FormOption[];\n\tisOrCondition: FormOption[];\n}\n\ninterface UpdateInquiryRequestBody {\n\taccountManagerAccountId?: string;\n\tadvisorAccountId?: string;\n\tgrcAdvisorAccountId?: string;\n\tinquiryId: string;\n\tinquiryStatus?: string;\n\tinquiryTypeId?: string;\n\tprogramId?: string;\n\tgrcAdvisorAccount?: string;\n\tresponseText?: string;\n\tuploadedDocumentIds: string[];\n\ttopicIds?: string[];\n\tinquiryAccountIds?: string[];\n\tinquiryCcIds?: string[];\n\tinquiryTitle?: string;\n\tinquiryText?: string;\n\tnotes?: string;\n\tisRecipientNotificationRequired?: boolean;\n\trequesterNotes?: string;\n\tisShowAdvisorEmail?: boolean;\n\tisShowAdvisorBookingsUrl?: boolean;\n}\n\ninterface GetPresignedUploadRequestBody {\n\tinquiryId: string;\n\tcontentType: string;\n\ttitle: string;\n}\n\ninterface UpdateInquiryDocumentStatusRequestBody {\n\tdocumentUploadStatusId: DOCUMENT_UPLOAD_STATUS_ID;\n\tinquiryId: string;\n\tinquiryDocumentId: string;\n}\n\ninterface GetInquiryStatsResponseBody {\n\tmyStats: InquiryStat;\n\tteamStats: InquiryStat[];\n\tflagShowMyStats: boolean;\n}\n\nexport const inquiryService = {\n\tgetInquiryFormOptions(queryParameters?: {\n\t\taccountId?: string;\n\t\tclientId?: string;\n\t\tinquiryId?: string;\n\t\tprogramId?: string;\n\t\tinquiryTypeId?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/inquiry-form', queryParameters),\n\t\t});\n\t},\n\tcreateInquiry(data: CreateInquiryRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest<{ inquiry: InquiryModel }>({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/inquiry`,\n\t\t\tdata,\n\t\t});\n\t},\n\tgetInquiries(queryParameters?: GetInquiriesQueryParameters) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/inquiry', queryParameters),\n\t\t});\n\t},\n\tgetInquiryFilters() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/inquiry-filters',\n\t\t});\n\t},\n\tgetInquiryDetails(inquiryId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{ inquiry: InquiryModel }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/inquiry/${inquiryId}`,\n\t\t});\n\t},\n\tupdateInquiry(data: UpdateInquiryRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest<{ inquiry: InquiryModel }>({\n\t\t\tmethod: 'PUT',\n\t\t\turl: '/advisory-service/api/v1/inquiry',\n\t\t\tdata,\n\t\t});\n\t},\n\tpostNotesRequester(data: UpdateInquiryRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest<{ inquiry: InquiryModel }>({\n\t\t\tmethod: 'PUT',\n\t\t\turl: '/advisory-service/api/v1/inquiry-notes',\n\t\t\tdata,\n\t\t});\n\t},\n\tgetPresignedDocumentUpload(data: GetPresignedUploadRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest<{ upload: PresignedUploadModel }>({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/inquiry-document`,\n\t\t\tdata,\n\t\t});\n\t},\n\tupdateInquiryDocumentStatus(data: UpdateInquiryDocumentStatusRequestBody) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'PUT',\n\t\t\turl: '/advisory-service/api/v1/inquiry-document/status',\n\t\t\tdata,\n\t\t});\n\t},\n\tgetInquiryStatFilters() {\n\t\treturn httpSingleton.orchestrateRequest<{ advisorTypes: FormOption[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/inquiry-stat-filters`,\n\t\t});\n\t},\n\tgetInquiryStats(queryParameters?: { advisorType?: string }) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/inquiry-stats', queryParameters),\n\t\t});\n\t},\n\tgetAccounts(queryParameters?: { clientId?: string }) {\n\t\treturn httpSingleton.orchestrateRequest<{ accounts: AccountModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/inquiry/accounts', queryParameters),\n\t\t});\n\t},\n\tresendEmail(inquiryId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/inquiry/${inquiryId}/resend`,\n\t\t});\n\t},\n\tdeleteInquiry(inquiryId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'DELETE',\n\t\t\turl: `/advisory-service/api/v1/inquiry/${inquiryId}`,\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { InquiryNotificationPreference } from '../models';\n\nexport const inquirySettingService = {\n\tgetPreferences(accountId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{ inquiryNotificationPreferences: InquiryNotificationPreference[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/account/${accountId}/inquiry-notification-preferences`,\n\t\t});\n\t},\n\tsetPreferences(accountId: string, data: { inquiryNotificationPreferences: InquiryNotificationPreference[] }) {\n\t\treturn httpSingleton.orchestrateRequest<{ inquiryNotificationPreferences: InquiryNotificationPreference[] }>({\n\t\t\tmethod: 'PUT',\n\t\t\turl: `/advisory-service/api/v1/account/${accountId}/inquiry-notification-preferences`,\n\t\t\tdata: data,\n\t\t});\n\t}\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { ReportListItem } from '@/lib/models';\ninterface AuthTokenModel {\n\tjasperToken: string;\n}\n\ninterface ReportListModel {\n\treports: ReportListItem[];\n}\n\nexport const jasperServices = {\n\tgetReportList() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/reports',\n\t\t});\n\t},\n\tgetReportDetail(reportId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/report/${reportId}`,\n\t\t});\n\t},\n\tgetAuthToken() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/report/token',\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { LeftNavigationItem } from '@/lib/models';\n\nexport const leftNavigationService = {\n\tgetLeftNavigation() {\n\t\treturn httpSingleton.orchestrateRequest<{ navigationItems: LeftNavigationItem[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/left-navigation',\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { GetNavigationResponseModel } from '@/lib/models';\n\nexport const navigationService = {\n\tgetNavigationItems() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/navigation',\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { BasicProgramModel, ProgramModel } from '@/lib/models/program-models';\n\nexport const programSettingService = {\n\tgetPreferences(accountId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{ programs: ProgramModel[], suppressProgramEmail: boolean }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/account/${accountId}/programs`,\n\t\t});\n\t},\n\tsetPreferences(accountId: string, data: BasicProgramModel) {\n\t\treturn httpSingleton.orchestrateRequest<{ programs: ProgramModel[] }>({\n\t\t\tmethod: 'PUT',\n\t\t\turl: `/advisory-service/api/v1/account/${accountId}/communication-preferences`,\n\t\t\tdata: data,\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { AccountInviteModel } from '@/lib/models';\n\ninterface AuthenticateResponseBody {\n\ttoken: string;\n}\n\ninterface CreateInviteResponseBody {\n\tinviteToken: string;\n}\n\ninterface AccountInviteResponseBody {\n\taccountId: string;\n\taccountStatusId: string;\n\tclientId: string;\n\temailAddress: string;\n\tlocation: string | null;\n\tmobileNumber: string | null;\n\tname: string;\n\ttimeZone: string;\n\ttitle: string | null;\n}\n\ninterface GetInviteResponseBody extends AccountInviteModel {}\n\nexport const publicService = {\n\tauthenticate(data: { emailAddress: string }) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/public/authenticate`,\n\t\t\tdata,\n\t\t});\n\t},\n\tcreateInvite(data: { name: string; emailAddress: string }) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/public/create-invite`,\n\t\t\tdata,\n\t\t});\n\t},\n\tgetInvite(inviteId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/public/account-invite/${inviteId}`,\n\t\t});\n\t},\n\taccountInvite(inviteId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: `/advisory-service/api/v1/public/account-invite/${inviteId}`,\n\t\t});\n\t},\n\tgetSystemStatus() {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\tversion: string;\n\t\t\tstatus: string;\n\t\t\tdate: string;\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/public/system/status',\n\t\t});\n\t},\n\tgetError() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/public/system/error',\n\t\t});\n\t},\n\tgetDecryptedToken(data: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'POST',\n\t\t\turl: '/advisory-service/api/v1/public/decrypt',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'text/plain',\n\t\t\t},\n\t\t\tdata,\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { EventModel, Recommendation } from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\nexport const recommendationsService = {\n\tgetRecommendations() {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\trecommendedContent: Recommendation[];\n\t\t\ttrendingContent: Recommendation[];\n\t\t\tevents: EventModel[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/recommendations',\n\t\t});\n\t},\n\tgetRecommendedEvents(queryParameters?: { eventTypeId?: 'DEFAULT' | 'PERFORMANCE_STUDY' }) {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\trecommendedContent: Recommendation[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/recommendations/event', queryParameters),\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\n\nexport const salesLeadService = {\n\tsendProgramBundleEmail(bundleId: string) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/sales-lead/program-bundle/${bundleId}`,\n\t\t});\n\t},\n\tsendExpertIquiryEmail() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/sales-lead/expert-inquiry',\n\t\t});\n\t},\n\tsendHackettInstituteEmail() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/sales-lead/hackett-institute',\n\t\t});\n\t},\n\tsendQuantumLoopEmail() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/sales-lead/quantum-leap',\n\t\t});\n\t},\n\tsendAiXplrEmail() {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/sales-lead/ai-xplr',\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { constructUrl } from '@/lib/utils';\nimport { SearchResultModel, FormOption, ResultItemModel } from '@/lib/models';\n\nexport const searchService = {\n\tgetSearchSuggestions(queryParameters?: { query?: string }) {\n\t\treturn httpSingleton.orchestrateRequest<{ suggestions: ResultItemModel[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/search/autocomplete', queryParameters),\n\t\t});\n\t},\n\tgetSearchResults(queryParameters?: { filter?: string; from?: string; query?: string; searchSort?: string }) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/search', queryParameters),\n\t\t});\n\t},\n\tgetSearchFilters() {\n\t\treturn httpSingleton.orchestrateRequest<{ searchFilters: FormOption[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: '/advisory-service/api/v1/search/filters',\n\t\t});\n\t},\n};\n","import { httpSingleton } from '@/lib/http-client';\nimport { AiTool, FormOption, PaginatedResponseModel, UseCase } from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\nexport const useCaseService = {\n\tgetUseCaseFilters(queryParameters?: {\n\t\tprogramId?: string;\n\t\tparentBusinessProcessIds?: string;\n\t\tbusinessProcessIds?: string;\n\t\tindustryIds?: string;\n\t\taiToolIds?: string;\n\t\tvalueRatingIds?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest<{\n\t\t\tprograms: FormOption[];\n\t\t\tbusinessProcesses: FormOption[];\n\t\t\tindustries: FormOption[];\n\t\t\taiTools: FormOption[];\n\t\t\tvalueRatings: FormOption[];\n\t\t\tsortFields: FormOption[];\n\t\t}>({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/use-case/filters', queryParameters),\n\t\t});\n\t},\n\tgetUseCases(queryParameters?: {\n\t\tpage?: string;\n\t\tsize?: string;\n\t\tsortDirection?: string;\n\t\tsortField?: string;\n\t\tparentBusinessProcessIds?: string;\n\t\tbusinessProcessIds?: string;\n\t\tindustryIds?: string;\n\t\taiToolIds?: string;\n\t\tcategoryObservedIds?: string;\n\t\tvalueRatingIds?: string;\n\t}) {\n\t\treturn httpSingleton.orchestrateRequest({\n\t\t\tmethod: 'GET',\n\t\t\turl: constructUrl('/advisory-service/api/v1/use-case', queryParameters),\n\t\t});\n\t},\n\tgetAiTools() {\n\t\treturn httpSingleton.orchestrateRequest<{ aiTools: AiTool[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/use-case/ai-tools`,\n\t\t});\n\t},\n\tgetUseCase(useCaseId: string) {\n\t\treturn httpSingleton.orchestrateRequest<{ useCase: UseCase; aiTools: AiTool[] }>({\n\t\t\tmethod: 'GET',\n\t\t\turl: `/advisory-service/api/v1/use-case/${useCaseId}`,\n\t\t});\n\t},\n};\n","import React from 'react';\nimport { Button } from 'react-bootstrap';\n\nimport { Avatar } from '@/components';\n\ninterface AdvisorProps {\n\tavatarUrl: string;\n\tjobTitle?: string;\n\tname: string;\n\tspecialties: string;\n\tbio?: string;\n\tbookingsUrl?: string;\n\tclassName?: string;\n}\n\nexport const Advisor = ({ avatarUrl, jobTitle, name, specialties, bio, bookingsUrl, className }: AdvisorProps) => {\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t{jobTitle &&

{jobTitle}

}\n\t\t\t\t\t

{name}

\n\t\t\t\t\t

{specialties}

\n\t\t\t\t
\n\t\t\t
\n\t\t\t{bio &&

{bio}

}\n\t\t\t{bookingsUrl && (\n\t\t\t\t\n\t\t\t\t\tSchedule a Meeting\n\t\t\t\t\n\t\t\t)}\n\t\t
\n\t);\n};\n","import { useContext } from 'react';\n\nimport { AccountContext } from '@/contexts';\n\nexport const useAccount = () => {\n\tconst accountContext = useContext(AccountContext);\n\treturn accountContext;\n};\n","import { useContext } from 'react';\nimport { AlertContext } from '@/contexts';\n\nexport const useAlert = () => {\n\tconst alertContext = useContext(AlertContext);\n\treturn alertContext;\n};\n","import { useContext } from 'react';\nimport { AnalyticsContext } from '@/contexts';\n\nexport const useAnalytics = () => {\n\tconst analyticsContext = useContext(AnalyticsContext);\n\n\tif (!analyticsContext) {\n\t\tthrow new Error(`useAnalytics used outside its provider`);\n\t}\n\n\treturn analyticsContext;\n};\n","import React, { useCallback } from 'react';\nimport { copyTextToClipboard as cttc, copyHtmlTextToClipboard as chttc } from '@/lib/utils';\nimport { useAlert } from '@/hooks';\n\nexport function useCopyTextToClipboard() {\n\tconst { showAlert } = useAlert();\n\n\tconst copyTextToClipboard = useCallback(\n\t\t(\n\t\t\ttext: string,\n\t\t\tsuccessMessage: string = 'Text was copied to clipboard.',\n\t\t\terrorMessage: string = 'Text could not be copied to clipboard.'\n\t\t) => {\n\t\t\tcttc(\n\t\t\t\ttext,\n\t\t\t\t() => {\n\t\t\t\t\tshowAlert({\n\t\t\t\t\t\tvariant: 'success',\n\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tSuccess: {successMessage}\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tshowAlert({\n\t\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tError: {errorMessage}\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t\t[showAlert]\n\t);\n\n\tconst copyHtmlToClipboard = useCallback(\n\t\t(\n\t\t\thtml: string,\n\t\t\tsuccessMessage: string = 'Rich text was copied to clipboard.',\n\t\t\terrorMessage: string = 'Rich text could not be copied to clipboard.'\n\t\t) => {\n\t\t\tchttc(\n\t\t\t\thtml,\n\t\t\t\t() => {\n\t\t\t\t\tshowAlert({\n\t\t\t\t\t\tvariant: 'success',\n\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tSuccess: {successMessage}\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tshowAlert({\n\t\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tError: {errorMessage}\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t\t[showAlert]\n\t);\n\n\treturn { copyTextToClipboard, copyHtmlToClipboard };\n}\n","import { useEffect, useState } from 'react';\n\nexport function useDebouncedState(value: T, delay: number = 300): T {\n\tconst [debouncedValue, setDebouncedValue] = useState(value);\n\n\tuseEffect(() => {\n\t\tconst handler = setTimeout(() => {\n\t\t\tsetDebouncedValue(value);\n\t\t}, delay);\n\n\t\treturn () => {\n\t\t\tclearTimeout(handler);\n\t\t};\n\t}, [value, delay]);\n\n\treturn debouncedValue;\n}\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFilePdf(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 23,\n fill: \"currentColor\",\n viewBox: \"0 0 384 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M88 304H80V256H88C101.3 256 112 266.7 112 280C112 293.3 101.3 304 88 304zM192 256H200C208.8 256 216 263.2 216 272V336C216 344.8 208.8 352 200 352H192V256zM224 0V128C224 145.7 238.3 160 256 160H384V448C384 483.3 355.3 512 320 512H64C28.65 512 0 483.3 0 448V64C0 28.65 28.65 0 64 0H224zM64 224C55.16 224 48 231.2 48 240V368C48 376.8 55.16 384 64 384C72.84 384 80 376.8 80 368V336H88C118.9 336 144 310.9 144 280C144 249.1 118.9 224 88 224H64zM160 368C160 376.8 167.2 384 176 384H200C226.5 384 248 362.5 248 336V272C248 245.5 226.5 224 200 224H176C167.2 224 160 231.2 160 240V368zM288 224C279.2 224 272 231.2 272 240V368C272 376.8 279.2 384 288 384C296.8 384 304 376.8 304 368V320H336C344.8 320 352 312.8 352 304C352 295.2 344.8 288 336 288H304V256H336C344.8 256 352 248.8 352 240C352 231.2 344.8 224 336 224H288zM256 0L384 128H256V0z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFilePdf);\nexport default __webpack_public_path__ + \"static/media/icon-file-pdf.4238e7b2.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFilePowerpoint(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 23,\n fill: \"currentColor\",\n viewBox: \"0 0 384 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M256 0v128h128L256 0zM224 128L224 0H48C21.49 0 0 21.49 0 48v416C0 490.5 21.49 512 48 512h288c26.51 0 48-21.49 48-48V160h-127.1C238.3 160 224 145.7 224 128zM279.6 308.1C284.2 353.5 248.5 392 204 392H160v40C160 440.8 152.8 448 144 448H128c-8.836 0-16-7.164-16-16V256c0-8.836 7.164-16 16-16h71.51C239.3 240 275.6 268.5 279.6 308.1zM160 344h44c15.44 0 28-12.56 28-28S219.4 288 204 288H160V344z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFilePowerpoint);\nexport default __webpack_public_path__ + \"static/media/icon-file-powerpoint.433ebe8b.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFileText(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 23,\n fill: \"currentColor\",\n viewBox: \"0 0 384 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M256 0v128h128L256 0zM224 128L224 0H48C21.49 0 0 21.49 0 48v416C0 490.5 21.49 512 48 512h288c26.51 0 48-21.49 48-48V160h-127.1C238.3 160 224 145.7 224 128zM272 416h-160C103.2 416 96 408.8 96 400C96 391.2 103.2 384 112 384h160c8.836 0 16 7.162 16 16C288 408.8 280.8 416 272 416zM272 352h-160C103.2 352 96 344.8 96 336C96 327.2 103.2 320 112 320h160c8.836 0 16 7.162 16 16C288 344.8 280.8 352 272 352zM288 272C288 280.8 280.8 288 272 288h-160C103.2 288 96 280.8 96 272C96 263.2 103.2 256 112 256h160C280.8 256 288 263.2 288 272z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFileText);\nexport default __webpack_public_path__ + \"static/media/icon-file-text.6e1e46ab.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFileVideo(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 23,\n fill: \"currentColor\",\n viewBox: \"0 0 384 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M256 0v128h128L256 0zM224 128L224 0H48C21.49 0 0 21.49 0 48v416C0 490.5 21.49 512 48 512h288c26.51 0 48-21.49 48-48V160h-127.1C238.3 160 224 145.7 224 128zM224 384c0 17.67-14.33 32-32 32H96c-17.67 0-32-14.33-32-32V288c0-17.67 14.33-32 32-32h96c17.67 0 32 14.33 32 32V384zM320 284.9v102.3c0 12.57-13.82 20.23-24.48 13.57L256 376v-80l39.52-24.7C306.2 264.6 320 272.3 320 284.9z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFileVideo);\nexport default __webpack_public_path__ + \"static/media/icon-file-video.07039bc3.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFileExcel(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 23,\n fill: \"currentColor\",\n viewBox: \"0 0 384 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M224 128L224 0H48C21.49 0 0 21.49 0 48v416C0 490.5 21.49 512 48 512h288c26.51 0 48-21.49 48-48V160h-127.1C238.3 160 224 145.7 224 128zM272.1 264.4L224 344l48.99 79.61C279.6 434.3 271.9 448 259.4 448h-26.43c-5.557 0-10.71-2.883-13.63-7.617L192 396l-27.31 44.38C161.8 445.1 156.6 448 151.1 448H124.6c-12.52 0-20.19-13.73-13.63-24.39L160 344L111 264.4C104.4 253.7 112.1 240 124.6 240h26.43c5.557 0 10.71 2.883 13.63 7.613L192 292l27.31-44.39C222.2 242.9 227.4 240 232.9 240h26.43C271.9 240 279.6 253.7 272.1 264.4zM256 0v128h128L256 0z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFileExcel);\nexport default __webpack_public_path__ + \"static/media/icon-file-excel.c79edfd1.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFileZip(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 23,\n fill: \"currentColor\",\n viewBox: \"0 0 384 512\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M256 0v128h128L256 0zM224 128L224 0H48C21.49 0 0 21.49 0 48v416C0 490.5 21.49 512 48 512h288c26.51 0 48-21.49 48-48V160h-127.1C238.3 160 224 145.7 224 128zM96 32h64v32H96V32zM96 96h64v32H96V96zM96 160h64v32H96V160zM128.3 415.1c-40.56 0-70.76-36.45-62.83-75.45L96 224h64l30.94 116.9C198.7 379.7 168.5 415.1 128.3 415.1zM144 336h-32C103.2 336 96 343.2 96 352s7.164 16 16 16h32C152.8 368 160 360.8 160 352S152.8 336 144 336z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFileZip);\nexport default __webpack_public_path__ + \"static/media/icon-file-zip.bba9c93b.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useCallback } from 'react';\nimport { useHistory } from 'react-router-dom';\n\nimport { ErrorConfig, ERROR_CODES } from '@/lib/http-client';\nimport { useAlert, useSignOut } from '@/hooks';\nimport { isErrorConfig } from '@/lib/utils';\nimport { RenderJson } from '@/components';\n\nexport function useHandleError() {\n\tconst history = useHistory();\n\tconst { signOut, signOutNoServiceCall } = useSignOut();\n\tconst { showAlert } = useAlert();\n\n\tconst handleError = useCallback(\n\t\tasync (error: ErrorConfig | unknown) => {\n\t\t\tif (isErrorConfig(error)) {\n\t\t\t\tconsole.log('Caught formatted error:', error);\n\n\t\t\t\tif (error.code === ERROR_CODES.REQUEST_ABORTED) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.status === 503) {\n\t\t\t\t\thistory.replace('/maintenance');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.code === 'AUTHENTICATION_REQUIRED' || error.code === 'NotAuthorizedException') {\n\t\t\t\t\tsignOutNoServiceCall();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.status === 401) {\n\t\t\t\t\tsignOutNoServiceCall();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.status === 403) {\n\t\t\t\t\tsignOut();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet displayMessage = '';\n\t\t\t\tif (typeof error === 'string') {\n\t\t\t\t\tdisplayMessage = error;\n\t\t\t\t} else {\n\t\t\t\t\tdisplayMessage = error.message;\n\t\t\t\t}\n\n\t\t\t\tif (error.code === 'WARNING') {\n\t\t\t\t\tshowAlert({\n\t\t\t\t\t\tvariant: 'warning',\n\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\t{displayMessage}\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\tError: {displayMessage}\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconsole.log('Caught unformatted error:', error);\n\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn ;\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t[history, showAlert, signOut, signOutNoServiceCall]\n\t);\n\n\treturn handleError;\n}\n","import { useContext } from 'react';\nimport { NavigationConfigContext } from '@/contexts';\n\nexport const useNavigationConfig = () => {\n\tconst navigationConfigContext = useContext(NavigationConfigContext);\n\treturn navigationConfigContext;\n};\n","import { useMemo } from 'react';\nimport { useLocation } from 'react-router-dom';\n\nexport function useQuery() {\n\tconst { search } = useLocation();\n\treturn useMemo(() => new URLSearchParams(search), [search]);\n}\n","import { useState, useEffect } from 'react';\n\nconst cachedScripts: string[] = [];\n\nexport function useScript(scriptSource: string) {\n\tconst [loading, setLoading] = useState(true);\n\tconst [error, setError] = useState(false);\n\n\tuseEffect(() => {\n\t\tif (cachedScripts.includes(scriptSource)) {\n\t\t\tsetLoading(false);\n\t\t\tsetError(false);\n\t\t} else {\n\t\t\tcachedScripts.push(scriptSource);\n\n\t\t\tsetLoading(true);\n\t\t\tsetError(false);\n\n\t\t\tconst script = document.createElement('script');\n\t\t\tscript.src = scriptSource;\n\t\t\tscript.async = true;\n\n\t\t\tconst handleScriptLoad = () => {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetError(false);\n\t\t\t};\n\n\t\t\tconst handleScriptError = () => {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetError(true);\n\t\t\t};\n\n\t\t\tscript.addEventListener('load', handleScriptLoad);\n\t\t\tscript.addEventListener('error', handleScriptError);\n\n\t\t\tdocument.body.appendChild(script);\n\n\t\t\treturn () => {\n\t\t\t\tscript.removeEventListener('load', handleScriptLoad);\n\t\t\t\tscript.removeEventListener('error', handleScriptError);\n\t\t\t};\n\t\t}\n\t}, [scriptSource]);\n\n\treturn [loading, error];\n}\n","import { useEffect, useState } from 'react';\n\nexport enum SCROLL_DIRECTION {\n\tUP = 'UP',\n\tDOWN = 'DOWN',\n}\n\nexport const useScrollDirection = () => {\n\tconst threshold = 100;\n\tconst [scrollDir, setScrollDir] = useState(SCROLL_DIRECTION.UP);\n\n\tuseEffect(() => {\n\t\tlet previousScrollYPosition = window.scrollY;\n\n\t\tconst scrolledMoreThanThreshold = (currentScrollYPosition: number) =>\n\t\t\tMath.abs(currentScrollYPosition - previousScrollYPosition) > threshold;\n\n\t\tconst isScrollingUp = (currentScrollYPosition: number) =>\n\t\t\tcurrentScrollYPosition > previousScrollYPosition &&\n\t\t\t!(previousScrollYPosition > 0 && currentScrollYPosition === 0) &&\n\t\t\t!(currentScrollYPosition > 0 && previousScrollYPosition === 0);\n\n\t\tconst updateScrollDirection = () => {\n\t\t\tconst currentScrollYPosition = window.scrollY;\n\n\t\t\tif (scrolledMoreThanThreshold(currentScrollYPosition)) {\n\t\t\t\tconst newScrollDirection = isScrollingUp(currentScrollYPosition)\n\t\t\t\t\t? SCROLL_DIRECTION.DOWN\n\t\t\t\t\t: SCROLL_DIRECTION.UP;\n\t\t\t\tsetScrollDir(newScrollDirection);\n\t\t\t\tpreviousScrollYPosition = currentScrollYPosition > 0 ? currentScrollYPosition : 0;\n\t\t\t}\n\t\t};\n\n\t\tconst onScroll = () => window.requestAnimationFrame(updateScrollDirection);\n\n\t\twindow.addEventListener('scroll', onScroll);\n\n\t\treturn () => window.removeEventListener('scroll', onScroll);\n\t}, []);\n\n\treturn scrollDir;\n};\n","import Cookies from 'js-cookie';\nimport config from '@/lib/config';\nimport { accessTokenCookieAttributes, COOKIES } from '@/lib/models';\nimport { useCallback, useState } from 'react';\nimport { accountService } from '@/lib/services';\nimport { constructUrl } from '@/lib/utils';\n\nexport const useSignOut = () => {\n\tconst [isSigningOut, setIsSigningOut] = useState(false);\n\n\tconst getSignOutDestination = () => {\n\t\treturn config.HACKETT_ADVISORY_USE_REAL_AUTH === 'true'\n\t\t\t? constructUrl(config.HACKETT_ADVISORY_AUTH_UI_URL, {\n\t\t\t\t\tredirectUrl: encodeURIComponent(`${window.location.href}`),\n\t\t\t\t\tplatform: 'hackett-connect',\n\t\t\t })\n\t\t\t: '/sign-in';\n\t};\n\n\tconst signOut = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsSigningOut(true);\n\n\t\t\tif (config.HACKETT_ADVISORY_USE_REAL_AUTH === 'true') {\n\t\t\t\tawait accountService.signOut().fetch();\n\t\t\t}\n\t\t} catch (_error) {\n\t\t\t// Does not matter if signOut call fails.\n\t\t} finally {\n\t\t\tsetIsSigningOut(false);\n\n\t\t\tCookies.remove(COOKIES.ACCESS_TOKEN, accessTokenCookieAttributes);\n\t\t\tCookies.remove(COOKIES.TARGET_URL);\n\n\t\t\twindow.location.href = getSignOutDestination();\n\t\t}\n\t}, []);\n\n\tconst signOutNoServiceCall = useCallback(async () => {\n\t\tCookies.remove(COOKIES.ACCESS_TOKEN, accessTokenCookieAttributes);\n\t\tCookies.remove(COOKIES.TARGET_URL);\n\n\t\twindow.location.href = getSignOutDestination();\n\t}, []);\n\n\treturn {\n\t\tsignOut,\n\t\tsignOutNoServiceCall,\n\t\tisSigningOut,\n\t};\n};\n","import { useContext } from 'react';\nimport { createUseStyles, DefaultTheme, Theming } from 'react-jss';\nimport { Classes, StyleSheetFactoryOptions, Styles } from 'jss';\n\nimport { ThemeConfig, ThemeContext } from '@/contexts/theme-context';\n\nexport function useTheme() {\n\tconst themeContext = useContext(ThemeContext);\n\treturn themeContext;\n}\n\ninterface BaseOptions extends StyleSheetFactoryOptions {\n\tindex?: number;\n\ttheming?: Theming;\n}\n\ninterface CreateUseStylesOptions extends BaseOptions {\n\tname?: string;\n}\n\nexport function createUseThemedStyles(\n\tstyles: Styles | ((theme: Theme) => Styles),\n\toptions?: CreateUseStylesOptions\n): (data?: Props & { theme?: Theme }) => Classes {\n\treturn createUseStyles(styles, options);\n}\n","import React, { useState } from 'react';\nimport { Button } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tchatAnswerReferences: {\n\t\tpadding: 15,\n\t\tborderRadius: 5,\n\t\tbackgroundColor: theme.colors.gray100,\n\t},\n}));\n\ninterface AiAnswerSourcesProps {\n\tclassName?: string;\n\treferences: string[];\n}\n\nconst showLimit = 5;\n\nexport const AiAnswerReferences = ({ className, references }: AiAnswerSourcesProps) => {\n\tconst classes = useStyles();\n\tconst [isShowingMore, setIsShowingMore] = useState(false);\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\tReferences ({references.length})\n\t\t\t
\n\t\t\t showLimit,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t{references.slice(0, isShowingMore ? references.length : showLimit).map((reference, referenceIndex) => (\n\t\t\t\t\t
  • \n\t\t\t\t))}\n\t\t\t\n\t\t\t{references.length > showLimit && (\n\t\t\t\t {\n\t\t\t\t\t\tsetIsShowingMore(!isShowingMore);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{isShowingMore ? 'Show less' : 'Show more'}\n\t\t\t\t\n\t\t\t)}\n\t\t
  • \n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFaceSatisfiedLine(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 116,\n height: 118,\n viewBox: \"0 0 116 118\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M58 0.875C25.9597 0.875 0 26.8906 0 59C0 91.1094 25.9597 117.125 58 117.125C90.0403 117.125 116 91.1094 116 59C116 26.8906 90.0403 0.875 58 0.875ZM58 105.875C32.204 105.875 11.2258 84.8516 11.2258 59C11.2258 33.1484 32.204 12.125 58 12.125C83.796 12.125 104.774 33.1484 104.774 59C104.774 84.8516 83.796 105.875 58 105.875ZM39.2903 55.25C43.4298 55.25 46.7742 51.8984 46.7742 47.75C46.7742 43.6016 43.4298 40.25 39.2903 40.25C35.1508 40.25 31.8065 43.6016 31.8065 47.75C31.8065 51.8984 35.1508 55.25 39.2903 55.25ZM76.7097 55.25C80.8492 55.25 84.1936 51.8984 84.1936 47.75C84.1936 43.6016 80.8492 40.25 76.7097 40.25C72.5702 40.25 69.2258 43.6016 69.2258 47.75C69.2258 51.8984 72.5702 55.25 76.7097 55.25ZM77.6452 72.2656C72.7806 78.125 65.6008 81.5 58 81.5C50.3992 81.5 43.2194 78.1484 38.3548 72.2656C36.3669 69.875 32.8121 69.5703 30.45 71.5391C28.0645 73.5312 27.7605 77.0703 29.725 79.4609C36.7411 87.8984 47.0548 92.7266 58 92.7266C68.9452 92.7266 79.2589 87.8984 86.275 79.4609C88.2629 77.0703 87.9355 73.5312 85.55 71.5391C83.1879 69.5703 79.6331 69.875 77.6452 72.2656Z\",\n fill: \"#7FAA3A\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFaceSatisfiedLine);\nexport default __webpack_public_path__ + \"static/media/icon-face-satisfied-line.64779850.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useState } from 'react';\nimport { Button } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport { createUseThemedStyles } from '@/hooks';\nimport { TempCitation } from '@/lib/models';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tchatAnswerSources: {\n\t\tpadding: 15,\n\t\tborderRadius: 5,\n\t\tbackgroundColor: theme.colors.gray100,\n\t},\n}));\n\ninterface AiAnswerSourcesProps {\n\tclassName?: string;\n\tsources: TempCitation[];\n}\n\nexport const AiAnswerSources = ({ className, sources }: AiAnswerSourcesProps) => {\n\tconst classes = useStyles();\n\tconst [isShowingMore, setIsShowingMore] = useState(false);\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\tSources ({sources.length} referenced)\n\t\t\t
    \n\t\t\t 2,\n\t\t\t\t})}\n\t\t\t>\n\t\t\t\t{sources.slice(0, isShowingMore ? sources.length : 2).map((source, sourceIndex) => (\n\t\t\t\t\t
  • \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{source.documentTitle}\n\t\t\t\t\t\t\n\t\t\t\t\t
  • \n\t\t\t\t))}\n\t\t\t\n\t\t\t{sources.length > 2 && (\n\t\t\t\t {\n\t\t\t\t\t\tsetIsShowingMore(!isShowingMore);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{isShowingMore ? 'Show less' : 'Show more'}\n\t\t\t\t\n\t\t\t)}\n\t\t
    \n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFaceSatisfiedFill(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 116,\n height: 120,\n viewBox: \"0 0 116 120\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M0 60C0 27.8906 25.9597 1.875 58 1.875C90.0403 1.875 116 27.8906 116 60C116 92.1094 90.0403 118.125 58 118.125C25.9597 118.125 0 92.1094 0 60ZM46.7742 48.75C46.7742 52.8984 43.4298 56.25 39.2903 56.25C35.1508 56.25 31.8065 52.8984 31.8065 48.75C31.8065 44.6016 35.1508 41.25 39.2903 41.25C43.4298 41.25 46.7742 44.6016 46.7742 48.75ZM84.1936 48.75C84.1936 52.8984 80.8492 56.25 76.7097 56.25C72.5702 56.25 69.2258 52.8984 69.2258 48.75C69.2258 44.6016 72.5702 41.25 76.7097 41.25C80.8492 41.25 84.1936 44.6016 84.1936 48.75ZM77.6452 73.2656C72.7807 79.125 65.6008 82.5 58 82.5C50.3992 82.5 43.2194 79.1484 38.3548 73.2656C36.3669 70.875 32.8121 70.5703 30.45 72.5391C28.0645 74.5312 27.7605 78.0703 29.725 80.4609C36.7411 88.8984 47.0548 93.7266 58 93.7266C68.9452 93.7266 79.2589 88.8984 86.275 80.4609C88.2629 78.0703 87.9355 74.5312 85.55 72.5391C83.1879 70.5703 79.6331 70.875 77.6452 73.2656Z\",\n fill: \"#7FAA3A\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFaceSatisfiedFill);\nexport default __webpack_public_path__ + \"static/media/icon-face-satisfied-fill.af38932a.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFaceNeutralLine(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 116,\n height: 118,\n viewBox: \"0 0 116 118\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M58 0.875C25.9597 0.875 0 26.8906 0 59C0 91.1094 25.9597 117.125 58 117.125C90.0403 117.125 116 91.1094 116 59C116 26.8906 90.0403 0.875 58 0.875ZM58 105.875C32.204 105.875 11.2258 84.8516 11.2258 59C11.2258 33.1484 32.204 12.125 58 12.125C83.796 12.125 104.774 33.1484 104.774 59C104.774 84.8516 83.796 105.875 58 105.875ZM39.2903 55.25C43.4298 55.25 46.7742 51.8984 46.7742 47.75C46.7742 43.6016 43.4298 40.25 39.2903 40.25C35.1508 40.25 31.8065 43.6016 31.8065 47.75C31.8065 51.8984 35.1508 55.25 39.2903 55.25ZM76.7097 40.25C72.5702 40.25 69.2258 43.6016 69.2258 47.75C69.2258 51.8984 72.5702 55.25 76.7097 55.25C80.8492 55.25 84.1936 51.8984 84.1936 47.75C84.1936 43.6016 80.8492 40.25 76.7097 40.25ZM78.5806 74H37.4194C34.3323 74 31.8065 76.5312 31.8065 79.625C31.8065 82.7188 34.3323 85.25 37.4194 85.25H78.5806C81.6677 85.25 84.1936 82.7188 84.1936 79.625C84.1936 76.5312 81.6677 74 78.5806 74Z\",\n fill: \"#F8AF0A\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFaceNeutralLine);\nexport default __webpack_public_path__ + \"static/media/icon-face-neutral-line.15cd7bdd.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFaceNeutralFill(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 116,\n height: 120,\n viewBox: \"0 0 116 120\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M0 60C0 27.8906 25.9597 1.875 58 1.875C90.0403 1.875 116 27.8906 116 60C116 92.1094 90.0403 118.125 58 118.125C25.9597 118.125 0 92.1094 0 60ZM46.7742 48.75C46.7742 52.8984 43.4298 56.25 39.2903 56.25C35.1508 56.25 31.8065 52.8984 31.8065 48.75C31.8065 44.6016 35.1508 41.25 39.2903 41.25C43.4298 41.25 46.7742 44.6016 46.7742 48.75ZM69.2258 48.75C69.2258 44.6016 72.5702 41.25 76.7097 41.25C80.8492 41.25 84.1936 44.6016 84.1936 48.75C84.1936 52.8984 80.8492 56.25 76.7097 56.25C72.5702 56.25 69.2258 52.8984 69.2258 48.75ZM84.1936 80.625C84.1936 77.5312 81.6677 75 78.5807 75H37.4194C34.3323 75 31.8065 77.5312 31.8065 80.625C31.8065 83.7188 34.3323 86.25 37.4194 86.25H78.5807C81.6677 86.25 84.1936 83.7188 84.1936 80.625Z\",\n fill: \"#F8AF0A\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFaceNeutralFill);\nexport default __webpack_public_path__ + \"static/media/icon-face-neutral-fill.2a775ec0.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFaceDissatisfiedLine(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 116,\n height: 118,\n viewBox: \"0 0 116 118\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M58 0.875C25.9597 0.875 0 26.8906 0 59C0 91.1094 25.9597 117.125 58 117.125C90.0403 117.125 116 91.1094 116 59C116 26.8906 90.0403 0.875 58 0.875ZM58 105.875C32.204 105.875 11.2258 84.8516 11.2258 59C11.2258 33.1484 32.204 12.125 58 12.125C83.796 12.125 104.774 33.1484 104.774 59C104.774 84.8516 83.796 105.875 58 105.875ZM39.2903 55.25C43.4298 55.25 46.7742 51.8984 46.7742 47.75C46.7742 43.6016 43.4298 40.25 39.2903 40.25C35.1508 40.25 31.8065 43.6016 31.8065 47.75C31.8065 51.8984 35.1508 55.25 39.2903 55.25ZM76.7097 40.25C72.5702 40.25 69.2258 43.6016 69.2258 47.75C69.2258 51.8984 72.5702 55.25 76.7097 55.25C80.8492 55.25 84.1936 51.8984 84.1936 47.75C84.1936 43.6016 80.8492 40.25 76.7097 40.25ZM58 70.25C48.5984 70.25 39.7581 74.3984 33.7242 81.6406C31.7363 84.0312 32.0637 87.5703 34.4492 89.5625C36.8347 91.5312 40.3661 91.2266 42.354 88.8359C46.2363 84.1719 51.9427 81.4766 58 81.4766C64.0573 81.4766 69.7637 84.1484 73.646 88.8359C75.5403 91.1094 79.0484 91.625 81.5508 89.5625C83.9363 87.5703 84.2403 84.0312 82.2758 81.6406C76.2419 74.3984 67.4016 70.25 58 70.25Z\",\n fill: \"#CC3333\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFaceDissatisfiedLine);\nexport default __webpack_public_path__ + \"static/media/icon-face-dissatisfied-line.d0422385.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _path4;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFaceDissatisfiedFill(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 116,\n height: 120,\n viewBox: \"0 0 116 120\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M58 1.875C25.9597 1.875 0 27.8906 0 60C0 92.1094 25.9597 118.125 58 118.125C90.0403 118.125 116 92.1094 116 60C116 27.8906 90.0403 1.875 58 1.875ZM39.2903 56.25C43.4298 56.25 46.7742 52.8984 46.7742 48.75C46.7742 44.6016 43.4298 41.25 39.2903 41.25C35.1508 41.25 31.8065 44.6016 31.8065 48.75C31.8065 52.8984 35.1508 56.25 39.2903 56.25ZM76.7097 41.25C72.5702 41.25 69.2258 44.6016 69.2258 48.75C69.2258 52.8984 72.5702 56.25 76.7097 56.25C80.8492 56.25 84.1936 52.8984 84.1936 48.75C84.1936 44.6016 80.8492 41.25 76.7097 41.25ZM58 71.25C48.5984 71.25 39.7581 75.3984 33.7242 82.6406C31.7363 85.0312 32.0637 88.5703 34.4492 90.5625C36.8347 92.5312 40.3661 92.2266 42.354 89.8359C46.2363 85.1719 51.9427 82.4766 58 82.4766C64.0573 82.4766 69.7637 85.1484 73.646 89.8359C75.5403 92.1094 79.0484 92.625 81.5508 90.5625C83.9363 88.5703 84.2403 85.0312 82.2758 82.6406C76.2419 75.3984 67.4016 71.25 58 71.25Z\",\n fill: \"#CC3333\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M46.7744 48.75C46.7744 52.8984 43.43 56.25 39.2905 56.25C35.151 56.25 31.8066 52.8984 31.8066 48.75C31.8066 44.6016 35.151 41.25 39.2905 41.25C43.43 41.25 46.7744 44.6016 46.7744 48.75Z\",\n fill: \"white\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M69.226 48.75C69.226 44.6016 72.5704 41.25 76.7099 41.25C80.8494 41.25 84.1937 44.6016 84.1937 48.75C84.1937 52.8984 80.8494 56.25 76.7099 56.25C72.5704 56.25 69.226 52.8984 69.226 48.75Z\",\n fill: \"white\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M33.7244 82.6406C39.7583 75.3984 48.5986 71.25 58.0002 71.25C67.4018 71.25 76.2421 75.3984 82.276 82.6406C84.2405 85.0312 83.9365 88.5703 81.551 90.5625C79.0486 92.625 75.5405 92.1094 73.6462 89.8359C69.7639 85.1484 64.0574 82.4766 58.0002 82.4766C51.9429 82.4766 46.2365 85.1719 42.3542 89.8359C40.3663 92.2266 36.8349 92.5312 34.4494 90.5625C32.0639 88.5703 31.7365 85.0312 33.7244 82.6406Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFaceDissatisfiedFill);\nexport default __webpack_public_path__ + \"static/media/icon-face-dissatisfied-fill.00e4c900.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC, useState, useEffect, useCallback } from 'react';\nimport { useHistory } from 'react-router-dom';\n\nimport { ErrorConfig, ERROR_CODES } from '@/lib/http-client';\nimport { isErrorConfig } from '@/lib/utils';\nimport { ErrorDisplay, Loader } from '@/components';\nimport { useSignOut } from '@/hooks';\n\nenum DISPLAY_STATES {\n\tLOADING = 'LOADING',\n\tSUCCESS = 'SUCCESS',\n\tERROR = 'ERROR',\n}\n\ninterface AsyncPageProps {\n\tfetchData(): Promise;\n\tabortFetch?(): void;\n\terrorDisplayClassName?: string;\n}\n\nexport const AsyncPage: FC = ({ children, fetchData, abortFetch, errorDisplayClassName }) => {\n\tconst history = useHistory();\n\tconst { signOut, signOutNoServiceCall } = useSignOut();\n\tconst [fetchPageDataError, setFetchPageDataError] = useState(undefined);\n\tconst [displayState, setDisplayState] = useState(DISPLAY_STATES.LOADING);\n\n\tconst fetchPageData = useCallback(async () => {\n\t\tsetDisplayState(DISPLAY_STATES.LOADING);\n\t\tsetFetchPageDataError(undefined);\n\n\t\ttry {\n\t\t\tawait fetchData();\n\t\t\tsetDisplayState(DISPLAY_STATES.SUCCESS);\n\t\t} catch (error) {\n\t\t\tif (isErrorConfig(error)) {\n\t\t\t\tif (error.code === ERROR_CODES.REQUEST_ABORTED) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.status === 503) {\n\t\t\t\t\thistory.replace('/maintenance');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.code === 'AUTHENTICATION_REQUIRED' || error.code === 'NotAuthorizedException') {\n\t\t\t\t\tsignOutNoServiceCall();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.status === 401) {\n\t\t\t\t\tsignOutNoServiceCall();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (error.status === 403) {\n\t\t\t\t\tsignOut();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsetFetchPageDataError(error);\n\t\t\tsetDisplayState(DISPLAY_STATES.ERROR);\n\t\t}\n\t}, [fetchData, history, signOut, signOutNoServiceCall]);\n\n\tuseEffect(() => {\n\t\tfetchPageData();\n\n\t\treturn () => {\n\t\t\ttypeof abortFetch === 'function' && abortFetch();\n\t\t};\n\t}, [fetchPageData, abortFetch]);\n\n\tfunction getDisplayState() {\n\t\tswitch (displayState) {\n\t\t\tcase DISPLAY_STATES.LOADING:\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\tcase DISPLAY_STATES.SUCCESS:\n\t\t\t\treturn children;\n\t\t\tcase DISPLAY_STATES.ERROR:\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn <>;\n\t\t}\n\t}\n\n\treturn <>{getDisplayState()};\n};\n","import React, { useState } from 'react';\nimport { Button, Form, Modal, ModalProps } from 'react-bootstrap';\nimport { FEEDBACK_RATING_ID } from '@/lib/models';\nimport { aiConversationService } from '@/lib/services';\nimport { createUseThemedStyles, useHandleError } from '@/hooks';\nimport { FadeTransition, LoadingButton } from '@/components';\nimport { ReactComponent as FaceSatisfiedLineIcon } from '@/assets/icons/icon-face-satisfied-line.svg';\nimport { ReactComponent as FaceSatisfiedFillIcon } from '@/assets/icons/icon-face-satisfied-fill.svg';\nimport { ReactComponent as FaceNeutralLineIcon } from '@/assets/icons/icon-face-neutral-line.svg';\nimport { ReactComponent as FaceNeutralFillIcon } from '@/assets/icons/icon-face-neutral-fill.svg';\nimport { ReactComponent as FaceDissatisfiedLineIcon } from '@/assets/icons/icon-face-dissatisfied-line.svg';\nimport { ReactComponent as FaceDissatisfiedFillIcon } from '@/assets/icons/icon-face-dissatisfied-fill.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdialog: {\n\t\twidth: '90%',\n\t\theight: '100%',\n\t\tmaxWidth: 610,\n\t\tmargin: '0 auto',\n\t\t'& .modal-content': {\n\t\t\tmaxHeight: '90vh',\n\t\t},\n\t\t'& .hackett-modal__body': {\n\t\t\toverflowY: 'auto',\n\t\t},\n\t},\n\tradioButtonLabel: {\n\t\t'&:after, &:before': {\n\t\t\tdisplay: 'none !important',\n\t\t},\n\t},\n}));\n\ninterface AiRateModalProps extends ModalProps {\n\tconversationQueryId: string;\n\tonSave(): void;\n}\n\nconst satisfactionOptions = [\n\t{\n\t\tvalue: FEEDBACK_RATING_ID.POSITIVE,\n\t\tcheckedIcon: ,\n\t\tuncheckedIcon: ,\n\t},\n\t{\n\t\tvalue: FEEDBACK_RATING_ID.NEUTRAL,\n\t\tcheckedIcon: ,\n\t\tuncheckedIcon: ,\n\t},\n\t{\n\t\tvalue: FEEDBACK_RATING_ID.NEGATIVE,\n\t\tcheckedIcon: ,\n\t\tuncheckedIcon: ,\n\t},\n];\n\nexport const AiRateModal = ({ conversationQueryId, onSave, ...props }: AiRateModalProps) => {\n\tconst handleError = useHandleError();\n\tconst classes = useStyles();\n\tconst [formValues, setFormValues] = useState({\n\t\tsatisfaction: undefined as FEEDBACK_RATING_ID | undefined,\n\t\treason: '',\n\t});\n\tconst [isSaving, setIsSaving] = useState(false);\n\n\tconst handleOnEnter = () => {\n\t\tsetIsSaving(false);\n\t\tsetFormValues({\n\t\t\tsatisfaction: undefined,\n\t\t\treason: '',\n\t\t});\n\t};\n\n\tconst handleFormSubmit = async (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\n\t\ttry {\n\t\t\tif (!formValues.satisfaction) {\n\t\t\t\tthrow new Error('Feedback is undefined.');\n\t\t\t}\n\n\t\t\tsetIsSaving(true);\n\n\t\t\tawait aiConversationService\n\t\t\t\t.rateConversationQuery({\n\t\t\t\t\tconversationQueryId,\n\t\t\t\t\tfeedbackRatingId: formValues.satisfaction,\n\t\t\t\t\t...(formValues.reason && { reason: formValues.reason }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tonSave();\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t\tsetIsSaving(false);\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tAskHackett.ai Response\n\t\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t

    How satisfied were you with the response provided by AskHackett.ai?

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{satisfactionOptions.map((option) => (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\tsatisfaction: currentTarget.value as FEEDBACK_RATING_ID,\n\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{formValues.satisfaction === option.value\n\t\t\t\t\t\t\t\t\t\t\t? option.checkedIcon\n\t\t\t\t\t\t\t\t\t\t\t: option.uncheckedIcon}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{formValues.satisfaction === FEEDBACK_RATING_ID.POSITIVE && (\n\t\t\t\t\t\t\t\t\tTell us more about why you were satisfied (Optional)\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{formValues.satisfaction === FEEDBACK_RATING_ID.NEUTRAL && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTell us more about how the response could have been improved (Optional)\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{formValues.satisfaction === FEEDBACK_RATING_ID.NEGATIVE && (\n\t\t\t\t\t\t\t\t\tTell us more about why you were dissatisfied\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\treason: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trequired={formValues.satisfaction === FEEDBACK_RATING_ID.NEGATIVE}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tSubmit\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { FC, useEffect } from 'react';\nimport classNames from 'classnames';\nimport { CSSTransition } from 'react-transition-group';\n\nimport { createUseThemedStyles, useAlert } from '@/hooks';\n\nconst transitionDuration = 200;\n\nconst useAlertStyles = createUseThemedStyles((theme) => ({\n\talertOuter: {\n\t\ttop: 20,\n\t\tleft: '50%',\n\t\tzIndex: 1056, // Must be placed above Bootstrap's modal shadow\n\t\tmaxWidth: '90%',\n\t\tposition: 'fixed',\n\t\ttransition: `all ${transitionDuration}ms`,\n\t},\n\talert: {\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\ttransition: `background-color ${transitionDuration}ms`,\n\t\tpadding: `15px 40px 15px 25px`,\n\t\t'&.success': {\n\t\t\tbackgroundColor: theme.colors.success,\n\t\t},\n\t\t'&.warning': {\n\t\t\tbackgroundColor: theme.colors.warning,\n\t\t},\n\t\t'&.danger': {\n\t\t\tbackgroundColor: theme.colors.danger,\n\t\t},\n\t},\n\thideAlertButton: {\n\t\tright: 2,\n\t\tborder: 0,\n\t\twidth: 44,\n\t\theight: 44,\n\t\ttop: '50%',\n\t\tappearance: 'none',\n\t\tposition: 'absolute',\n\t\ttransform: 'translateY(-50%)',\n\t\tbackgroundColor: 'transparent',\n\t\t'&:before, &:after': {\n\t\t\ttop: '50%',\n\t\t\twidth: 12,\n\t\t\theight: 2,\n\t\t\tleft: '50%',\n\t\t\tcontent: '\"\"',\n\t\t\tposition: 'absolute',\n\t\t\tbackgroundColor: theme.colors.white,\n\t\t},\n\t\t'&:before': {\n\t\t\ttransform: 'translate(-50%, -50%) rotate(-45deg)',\n\t\t},\n\t\t'&:after': {\n\t\t\ttransform: 'translate(-50%, -50%) rotate(45deg)',\n\t\t},\n\t},\n\t'@global': {\n\t\t'.alert-enter': {\n\t\t\topacity: 0,\n\t\t\ttransform: 'translate(-50%, -100%)',\n\t\t},\n\t\t'.alert-enter-active': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translate(-50%, 0)',\n\t\t},\n\t\t'.alert-enter-done': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translate(-50%, 0)',\n\t\t},\n\t\t'.alert-exit': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translate(-50%, 0)',\n\t\t},\n\t\t'.alert-exit-active': {\n\t\t\topacity: 0,\n\t\t\ttransform: 'translate(-50%, -100%)',\n\t\t},\n\t},\n}));\n\nexport const Alert: FC = () => {\n\tconst { alertIsShowing, alertChildren, alertVariant, hideAlert } = useAlert();\n\tconst classes = useAlertStyles();\n\n\tuseEffect(() => {}, [alertChildren]);\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{alertChildren}\n\t\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { useMemo } from 'react';\nimport classNames from 'classnames';\nimport { createUseThemedStyles } from '@/hooks';\n\ninterface useStylesProps {\n\twidth: number;\n\theight: number;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\timageOuter: {\n\t\twidth: '100%',\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundRepeat: 'no-repeat',\n\t\tbackgroundColor: theme.colors.gray300,\n\t\tpaddingBottom: ({ width, height }: useStylesProps) => `${(height / width) * 100}%`,\n\t},\n}));\n\ninterface AspectRatioLockedImageProps {\n\twidth: number;\n\theight: number;\n\tsrc?: string;\n\tclassName?: string;\n}\n\nexport const AspectRatioLockedImage = ({ width, height, src, className }: AspectRatioLockedImageProps) => {\n\tconst classes = useStyles({ width, height });\n\tconst placeHolder = useMemo(() => {\n\t\treturn `https://placehold.co/${width * 2}x${height * 2}`;\n\t}, [height, width]);\n\n\treturn (\n\t\t\n\t);\n};\n","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconLink(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-link-45deg\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1.002 1.002 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4.018 4.018 0 0 1-.128-1.287z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243L6.586 4.672z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconLink);\nexport default __webpack_public_path__ + \"static/media/icon-link.203d389f.svg\";\nexport { ForwardRef as ReactComponent };","var _polygon;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconChevronLeft(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 10,\n height: 10,\n viewBox: \"0 0 10 10\",\n fill: \"currentColor\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n fillRule: \"evenodd\",\n points: \"5 8.214 0 3.214 1.429 1.786 5 5.357 8.571 1.786 10 3.214\",\n transform: \"rotate(90 5 5)\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconChevronLeft);\nexport default __webpack_public_path__ + \"static/media/icon-chevron-left.fa6a9903.svg\";\nexport { ForwardRef as ReactComponent };","import { v4 as uuid } from 'uuid';\nimport React, { useRef } from 'react';\nimport { Dropdown as ReactBootstrapDropdown } from 'react-bootstrap';\n\nimport { createUseThemedStyles, useCopyTextToClipboard, useHandleError } from '@/hooks';\nimport { Dropdown, DropdownMenu, DropdownToggle } from '@/components';\n\nimport { ReactComponent as LinkIcon } from '@/assets/icons/icon-link.svg';\n\nimport { downloadFileAtUrl } from '@/lib/utils';\n\ninterface UseStylesProps {\n\tshowBorder?: boolean;\n}\n\nconst useStyles = createUseThemedStyles(\n\t(theme) => ({\n\t\tattachmentDropdownToggle: ({ showBorder }: UseStylesProps) => ({\n\t\t\twidth: '100%',\n\t\t\ttextAlign: 'left',\n\t\t\tjustifyContent: 'space-between',\n\t\t\tbackgroundColor: `transparent`,\n\t\t\t...(!showBorder && { padding: '0' }),\n\t\t\tcolor: `${theme.colors.primary}`,\n\t\t\tfontWeight: `${theme.fonts.openSansBold.fontWeight}`,\n\t\t\tborder: `1px solid ${showBorder ? theme.colors.primary : 'transparent'}`,\n\t\t}),\n\t}),\n\t{ index: 5 }\n);\n\ninterface AttachmentDropdownProps {\n\ttitle: string;\n\tdownloadUrl?: string;\n\tviewUrl?: string;\n\tshowBorder?: boolean;\n\tshowRemoveOption?: boolean;\n\tclassName?: string;\n\tonRemove?(): void;\n}\n\nexport const AttachmentDropdown = ({\n\ttitle,\n\tdownloadUrl,\n\tviewUrl,\n\tshowBorder = true,\n\tshowRemoveOption = true,\n\tclassName,\n\tonRemove,\n}: AttachmentDropdownProps) => {\n\tconst handleError = useHandleError();\n\tconst id = useRef(uuid()).current;\n\tconst classes = useStyles({ showBorder });\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\n\tasync function handleDownloadClick() {\n\t\tif (!downloadUrl) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tawait downloadFileAtUrl(downloadUrl, title);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}\n\n\tasync function handleCopyLinkClick() {\n\t\tif (!viewUrl) {\n\t\t\treturn;\n\t\t}\n\t\tcopyTextToClipboard(viewUrl, 'Success: Link was copied to clipboard.');\n\t}\n\n\tfunction handleRemoveAttachmentClick() {\n\t\tif (!onRemove) {\n\t\t\treturn;\n\t\t}\n\n\t\tonRemove();\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t{title}\n\t\t\t\n\t\t\t\n\t\t\t\t{downloadUrl && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tDownload\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tCopy Link\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t{showRemoveOption && (\n\t\t\t\t\t\n\t\t\t\t\t\tRemove Attachment\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\n\t\t\n\t);\n};\n","import React from 'react';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tavatar: ({ size }: { size: number }) => ({\n\t\twidth: size,\n\t\theight: size,\n\t\tflexShrink: 0,\n\t\tborderRadius: '50%',\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundRepeat: 'no-repeat',\n\t\tbackgroundColor: theme.colors.gray300,\n\t}),\n}));\n\ninterface AvatarProps {\n\tsize: number;\n\turl: string;\n\tclassName?: string;\n}\n\nexport const Avatar = ({ size, url, className }: AvatarProps) => {\n\tconst classes = useStyles({\n\t\tsize,\n\t});\n\n\treturn
    ;\n};\n","var _polygon;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconChevronRight(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 10,\n height: 10,\n fill: \"currentColor\",\n viewBox: \"0 0 10 10\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n fillRule: \"evenodd\",\n points: \"5.214 8.214 .214 3.214 1.643 1.786 5.214 5.357 8.786 1.786 10.214 3.214\",\n transform: \"rotate(-90 5.214 5)\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconChevronRight);\nexport default __webpack_public_path__ + \"static/media/icon-chevron-right.4be9e1dc.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Button } from 'react-bootstrap';\nimport HTMLEllipsis from 'react-lines-ellipsis/lib/html';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { mediaQueries } from '@/jss';\n\nimport { ReactComponent as LeftChevron } from '@/assets/icons/icon-chevron-left.svg';\nimport { ReactComponent as RightChevron } from '@/assets/icons/icon-chevron-right.svg';\n\nconst animationDurationInMs = 300;\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tcarousel: {\n\t\tdisplay: 'block',\n\t\t[mediaQueries.lg]: {\n\t\t\tdisplay: 'flex',\n\t\t\tflexDirection: 'row-reverse',\n\t\t},\n\t},\n\tinformationOuter: {\n\t\toverflow: 'hidden',\n\t\tposition: 'relative',\n\t\tbackgroundColor: theme.colors.gray200,\n\t\tborderLeft: `1px solid ${theme.colors.gray300}`,\n\t\tborderRight: `1px solid ${theme.colors.gray300}`,\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\ttransition: `height ${animationDurationInMs}ms`,\n\t\t[mediaQueries.lg]: {\n\t\t\twidth: '56%',\n\t\t\tborderRight: 0,\n\t\t\tborderTop: `1px solid ${theme.colors.gray300}`,\n\t\t},\n\t},\n\tinformationSlide: {\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tposition: 'absolute',\n\t},\n\tinformationSlideLink: {\n\t\tdisplay: 'block',\n\t\tpadding: '30px 30px 25px',\n\t\tcolor: theme.colors.dark,\n\t\t'& .title-content': {\n\t\t\tminHeight: 70,\n\t\t},\n\t\t'& .html-content': {\n\t\t\tminHeight: 75,\n\t\t\tcolor: theme.colors.gray900,\n\t\t\t'& p:last-of-type': {\n\t\t\t\tmarginBottom: 0,\n\t\t\t},\n\t\t},\n\t\t'&:hover': {\n\t\t\tcolor: theme.colors.dark,\n\t\t\ttextDecoration: 'none',\n\t\t\t'& h2': {\n\t\t\t\ttextDecoration: 'underline',\n\t\t\t},\n\t\t},\n\t},\n\tcarouselControls: {\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\tdisplay: 'flex',\n\t\tposition: 'absolute',\n\t\talignItems: 'center',\n\t\tpadding: '0 30px 25px',\n\t\tjustifyContent: 'center',\n\t\t'& ul': {\n\t\t\tpadding: 0,\n\t\t\tdisplay: 'flex',\n\t\t\tmargin: '0 10px',\n\t\t\tlistStyle: 'none',\n\t\t\t'& li': {\n\t\t\t\twidth: 10,\n\t\t\t\theight: 10,\n\t\t\t\tmargin: '0 5px',\n\t\t\t\tborderRadius: 5,\n\t\t\t\tposition: 'relative',\n\t\t\t\tbackgroundColor: theme.colors.gray400,\n\t\t\t\t'&:first-child': {\n\t\t\t\t\tmarginLeft: 0,\n\t\t\t\t},\n\t\t\t\t'&:last-child': {\n\t\t\t\t\tmarginRight: 0,\n\t\t\t\t},\n\t\t\t\t'&.active': {\n\t\t\t\t\tborder: `2px solid ${theme.colors.info}`,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tarrowButton: {\n\t\twidth: 32,\n\t\theight: 24,\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\tjustifyContent: 'center',\n\t\t'&:disabled': {\n\t\t\tbackgroundColor: 'transparent !important',\n\t\t},\n\t},\n\timageOuter: {\n\t\theight: 250,\n\t\toverflow: 'hidden',\n\t\tposition: 'relative',\n\t\t[mediaQueries.lg]: {\n\t\t\theight: 'auto',\n\t\t\twidth: '44%',\n\t\t},\n\t},\n\timageSlide: {\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\tpadding: 30,\n\t\tposition: 'absolute',\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundColor: theme.colors.gray300,\n\t},\n\t'@global': {\n\t\t'.carousel-previous-enter': {\n\t\t\ttransform: 'translateX(-100%)',\n\t\t},\n\t\t'.carousel-previous-enter-active': {\n\t\t\ttransition: `transform ${animationDurationInMs}ms`,\n\t\t\ttransform: 'translateX(0%)',\n\t\t},\n\t\t'.carousel-previous-enter-done': {\n\t\t\ttransform: 'translateX(0%)',\n\t\t},\n\t\t'.carousel-previous-exit': {\n\t\t\ttransform: 'translateX(0%)',\n\t\t},\n\t\t'.carousel-previous-exit-active': {\n\t\t\ttransition: `transform ${animationDurationInMs}ms`,\n\t\t\ttransform: 'translateX(100%)',\n\t\t},\n\t\t'.carousel-previous-exit-done': {\n\t\t\ttransform: 'translateX(100%)',\n\t\t},\n\t\t'.carousel-next-enter': {\n\t\t\ttransform: 'translateX(100%)',\n\t\t},\n\t\t'.carousel-next-enter-active': {\n\t\t\ttransition: `transform ${animationDurationInMs}ms`,\n\t\t\ttransform: 'translateX(0%)',\n\t\t},\n\t\t'.carousel-next-enter-done': {\n\t\t\ttransform: 'translateX(0%)',\n\t\t},\n\t\t'.carousel-next-exit': {\n\t\t\ttransform: 'translateX(0%)',\n\t\t},\n\t\t'.carousel-next-exit-active': {\n\t\t\ttransition: `transform ${animationDurationInMs}ms`,\n\t\t\ttransform: 'translateX(-100%)',\n\t\t},\n\t\t'.carousel-next-exit-done': {\n\t\t\ttransform: 'translateX(-100%)',\n\t\t},\n\t},\n}));\n\ninterface CarouselSlide {\n\tto: string;\n\ttitle: string;\n\tdescription: string;\n\timageUrl: string;\n}\n\ninterface Props {\n\tslides: CarouselSlide[];\n}\n\nconst ResponsiveEllipsis = responsiveHOC()(HTMLEllipsis);\n\nexport const CarouselSingle = ({ slides }: Props) => {\n\tconst classes = useStyles();\n\n\tconst currentSlideRef = useRef(null);\n\tconst controlsRef = useRef(null);\n\n\tconst [currentSlideIndex, setCurrentSlideIndex] = useState(0);\n\tconst [animationClassNames, setAnimationClassNames] = useState('carousel-next');\n\tconst [carouselHeight, setCarouselHeight] = useState(0);\n\tconst currentSlide = useMemo(() => slides[currentSlideIndex], [currentSlideIndex, slides]);\n\n\tconst measureAndSetCarouselHeight = useCallback(() => {\n\t\tif (!currentSlideRef.current || !controlsRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentSlideHeight = currentSlideRef.current.getBoundingClientRect().height;\n\t\tconst controlsHeight = controlsRef.current.getBoundingClientRect().height;\n\n\t\tsetCarouselHeight(currentSlideHeight + controlsHeight);\n\t}, []);\n\n\tconst handlePreviousButtonClick = useCallback(() => {\n\t\tsetCurrentSlideIndex((previousValue) => {\n\t\t\tif (previousValue === 0) {\n\t\t\t\treturn slides.length - 1;\n\t\t\t}\n\n\t\t\treturn previousValue - 1;\n\t\t});\n\n\t\tsetAnimationClassNames('carousel-previous');\n\t}, [slides]);\n\n\tconst handleNextButtonClick = useCallback(() => {\n\t\tsetCurrentSlideIndex((previousValue) => {\n\t\t\tif (previousValue === slides.length - 1) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\treturn previousValue + 1;\n\t\t});\n\n\t\tsetAnimationClassNames('carousel-next');\n\t}, [slides]);\n\n\tconst handlePageButtonClick = useCallback((index: number) => {\n\t\tlet previousIndex = 0;\n\n\t\tsetCurrentSlideIndex((previousValue) => {\n\t\t\tpreviousIndex = previousValue;\n\t\t\treturn index;\n\t\t});\n\n\t\tif (previousIndex > index) {\n\t\t\tsetAnimationClassNames('carousel-previous');\n\t\t} else {\n\t\t\tsetAnimationClassNames('carousel-next');\n\t\t}\n\t}, []);\n\n\tconst handleDescriptionReflow = useCallback(() => {\n\t\tmeasureAndSetCarouselHeight();\n\t}, [measureAndSetCarouselHeight]);\n\n\tuseEffect(() => {\n\t\tmeasureAndSetCarouselHeight();\n\t}, [currentSlideIndex, measureAndSetCarouselHeight]);\n\n\t// TODO return something better here when there is no content for the carousel?\n\tif (!currentSlide) return
    ;\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t React.cloneElement(child, { classNames: animationClassNames })}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t\t\t React.cloneElement(child, { classNames: animationClassNames })}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t{currentSlide.description && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t
      \n\t\t\t\t\t\t{slides.map((_slide, slideIndex) => (\n\t\t\t\t\t\t\t handlePageButtonClick(slideIndex)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","var _defs, _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconCarouselArrowLeft(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 32,\n height: 60,\n viewBox: \"0 0 32 60\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"polygon\", {\n id: \"icon-carousel-arrow-left-b\",\n points: \"7 .373 29.627 23 7 45.627 2.757 41.385 21.141 22.999 2.757 4.615\"\n }), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"icon-carousel-arrow-left-a\",\n width: \"181.9%\",\n height: \"161.9%\",\n x: \"-40.9%\",\n y: \"-15.5%\",\n filterUnits: \"objectBoundingBox\"\n }, /*#__PURE__*/React.createElement(\"feOffset\", {\n dy: 10,\n in: \"SourceAlpha\",\n result: \"shadowOffsetOuter1\"\n }), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n in: \"shadowOffsetOuter1\",\n result: \"shadowBlurOuter1\",\n stdDeviation: 2\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"shadowBlurOuter1\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.32 0\"\n })))), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\",\n transform: \"matrix(-1 0 0 1 32.385 0)\"\n }, /*#__PURE__*/React.createElement(\"use\", {\n fill: \"#000\",\n filter: \"url(#icon-carousel-arrow-left-a)\",\n xlinkHref: \"#icon-carousel-arrow-left-b\"\n }), /*#__PURE__*/React.createElement(\"use\", {\n fill: \"#FFF\",\n xlinkHref: \"#icon-carousel-arrow-left-b\"\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconCarouselArrowLeft);\nexport default __webpack_public_path__ + \"static/media/icon-carousel-arrow-left.13177e18.svg\";\nexport { ForwardRef as ReactComponent };","var _defs, _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconCarouselArrowRight(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 32,\n height: 60,\n viewBox: \"0 0 32 60\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"polygon\", {\n id: \"icon-carousel-icon-b\",\n points: \"7 .373 29.627 23 7 45.627 2.757 41.385 21.141 22.999 2.757 4.615\"\n }), /*#__PURE__*/React.createElement(\"filter\", {\n id: \"icon-carousel-icon-a\",\n width: \"181.9%\",\n height: \"161.9%\",\n x: \"-40.9%\",\n y: \"-15.5%\",\n filterUnits: \"objectBoundingBox\"\n }, /*#__PURE__*/React.createElement(\"feOffset\", {\n dy: 10,\n in: \"SourceAlpha\",\n result: \"shadowOffsetOuter1\"\n }), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n in: \"shadowOffsetOuter1\",\n result: \"shadowBlurOuter1\",\n stdDeviation: 2\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n in: \"shadowBlurOuter1\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.32 0\"\n })))), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"use\", {\n fill: \"#000\",\n filter: \"url(#icon-carousel-icon-a)\",\n xlinkHref: \"#icon-carousel-icon-b\"\n }), /*#__PURE__*/React.createElement(\"use\", {\n fill: \"#FFF\",\n xlinkHref: \"#icon-carousel-icon-b\"\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconCarouselArrowRight);\nexport default __webpack_public_path__ + \"static/media/icon-carousel-arrow-right.ef59e7de.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC } from 'react';\nimport { Fade } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport ReactMultiCarousel, { ButtonGroupProps } from 'react-multi-carousel';\nimport 'react-multi-carousel/lib/styles.css';\nimport Color from 'color';\n\nimport { screenWidths } from '@/jss';\nimport { createUseThemedStyles, useTheme } from '@/hooks';\n\nimport { ReactComponent as LeftIcon } from '@/assets/icons/icon-carousel-arrow-left.svg';\nimport { ReactComponent as RightIcon } from '@/assets/icons/icon-carousel-arrow-right.svg';\n\n/* ----------------------------------------------------------- */\n/* General config */\n/* ----------------------------------------------------------- */\nconst gutterSize = 30;\nconst responsiveConfig = {\n\txl: {\n\t\tbreakpoint: {\n\t\t\tmax: 4000,\n\t\t\tmin: screenWidths.lg,\n\t\t},\n\t\titems: 4,\n\t},\n\tlg: {\n\t\tbreakpoint: {\n\t\t\tmax: screenWidths.lg,\n\t\t\tmin: screenWidths.md,\n\t\t},\n\t\titems: 3,\n\t},\n\tmd: {\n\t\tbreakpoint: {\n\t\t\tmax: screenWidths.md,\n\t\t\tmin: screenWidths.sm,\n\t\t},\n\t\titems: 2,\n\t},\n\tsm: {\n\t\tbreakpoint: {\n\t\t\tmax: screenWidths.sm,\n\t\t\tmin: screenWidths.xs,\n\t\t},\n\t\titems: 1,\n\t},\n\txs: {\n\t\tbreakpoint: {\n\t\t\tmax: screenWidths.xs,\n\t\t\tmin: 0,\n\t\t},\n\t\titems: 1,\n\t},\n};\n\n/* ----------------------------------------------------------- */\n/* Button group component */\n/* ----------------------------------------------------------- */\nconst useButtonGroupStyles = createUseThemedStyles({\n\tcarouselButton: ({ buttonColor }: { buttonColor: string }) => ({\n\t\ttop: 0,\n\t\tborder: 0,\n\t\tzIndex: 2,\n\t\tpadding: 15,\n\t\theight: '100%',\n\t\tdisplay: 'flex',\n\t\tappearance: 'none',\n\t\tposition: 'absolute',\n\t\talignItems: 'center',\n\t\tbackgroundColor: Color(buttonColor)\n\t\t\t.alpha(0.2)\n\t\t\t.string(),\n\t\t'&:after': {\n\t\t\ttop: 0,\n\t\t\tcontent: '\"\"',\n\t\t\twidth: '200%',\n\t\t\theight: '100%',\n\t\t\tposition: 'absolute',\n\t\t\tbackground: `linear-gradient(90deg, ${Color(buttonColor)\n\t\t\t\t.alpha(0.2)\n\t\t\t\t.string()} 0%, ${Color(buttonColor)\n\t\t\t\t.alpha(0)\n\t\t\t\t.string()} 100%)`,\n\t\t},\n\t\t'&:hover': {\n\t\t\tbackgroundColor: Color(buttonColor)\n\t\t\t\t.alpha(0.3)\n\t\t\t\t.string(),\n\t\t\t'&:after': {\n\t\t\t\tbackground: `linear-gradient(90deg, ${Color(buttonColor)\n\t\t\t\t\t.alpha(0.3)\n\t\t\t\t\t.string()} 0%, ${Color(buttonColor)\n\t\t\t\t\t.alpha(0)\n\t\t\t\t\t.string()} 100%)`,\n\t\t\t},\n\t\t},\n\t\t'&:active': {\n\t\t\tbackgroundColor: Color(buttonColor)\n\t\t\t\t.alpha(0.1)\n\t\t\t\t.string(),\n\t\t\t'&:after': {\n\t\t\t\tbackground: `linear-gradient(90deg, ${Color(buttonColor)\n\t\t\t\t\t.alpha(0.1)\n\t\t\t\t\t.string()} 0%, ${Color(buttonColor)\n\t\t\t\t\t.alpha(0)\n\t\t\t\t\t.string()} 100%)`,\n\t\t\t},\n\t\t},\n\t}),\n\tcarouselButtonPrevious: {\n\t\tleft: -(gutterSize / 2),\n\t\ttransform: 'translateX(-100%)',\n\t\tborderTopRightRadius: 2,\n\t\tborderBottomRightRadius: 2,\n\t\t'&:after': {\n\t\t\tright: '100%',\n\t\t\ttransform: 'scaleX(-1)',\n\t\t},\n\t},\n\tcarouselButtonNext: {\n\t\tright: -(gutterSize / 2),\n\t\ttransform: 'translateX(100%)',\n\t\tborderTopLeftRadius: 2,\n\t\tborderBottomLeftRadius: 2,\n\t\t'&:after': {\n\t\t\tleft: '100%',\n\t\t},\n\t},\n});\n\ninterface CustomButtonGroupProps extends ButtonGroupProps {\n\tbuttonColor?: string;\n}\n\nconst CustomButtonGroup = ({ buttonColor, next, previous, carouselState }: CustomButtonGroupProps) => {\n\tconst { theme } = useTheme();\n\tconst classes = useButtonGroupStyles({\n\t\tbuttonColor: buttonColor || theme.colors.white,\n\t});\n\n\tlet noMorePreviousSlides = true;\n\tlet noMoreNextSlides = true;\n\n\tif (carouselState) {\n\t\tnoMorePreviousSlides = carouselState.currentSlide === 0;\n\n\t\tif (carouselState.totalItems - carouselState.slidesToShow < 0) {\n\t\t\tnoMoreNextSlides = true;\n\t\t} else {\n\t\t\tnoMoreNextSlides = carouselState.currentSlide === carouselState.totalItems - carouselState.slidesToShow;\n\t\t}\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t (previous ? previous() : undefined)}\n\t\t\t\t\tdisabled={noMorePreviousSlides}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t (next ? next() : undefined)}\n\t\t\t\t\tdisabled={noMoreNextSlides}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\n/* ----------------------------------------------------------- */\n/* Main component */\n/* ----------------------------------------------------------- */\nconst useCarouselStyles = createUseThemedStyles({\n\tcontainerClass: {\n\t\tposition: 'relative',\n\t\tmarginLeft: -(gutterSize / 2),\n\t\tmarginRight: -(gutterSize / 2),\n\t},\n\tsliderClass: {},\n\titemClass: {\n\t\tpadding: `0 ${gutterSize / 2}px`,\n\t},\n});\n\ninterface CarouselProps {\n\tbuttonColor?: string;\n}\n\nexport const Carousel: FC = ({ buttonColor, children }) => {\n\tconst classes = useCarouselStyles();\n\n\treturn (\n\t\t
    \n\t\t\t}\n\t\t\t\trenderButtonGroupOutside={true}\n\t\t\t\tarrows={false}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t\n\t\t
    \n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconPaperclip(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"currentColor\",\n width: 16,\n height: 16,\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.5,3 C4.5,1.61928813 5.61928813,0.5 7,0.5 C8.38071187,0.5 9.5,1.61928813 9.5,3 L9.5,12 C9.5,12.8284271 8.82842712,13.5 8,13.5 C7.17157288,13.5 6.5,12.8284271 6.5,12 L6.5,5 C6.5,4.72385763 6.72385763,4.5 7,4.5 C7.27614237,4.5 7.5,4.72385763 7.5,5 L7.5,12 C7.5,12.2761424 7.72385763,12.5 8,12.5 C8.27614237,12.5 8.5,12.2761424 8.5,12 L8.5,3 C8.5,2.46410161 8.21410163,1.96891107 7.75000001,1.70096187 C7.28589839,1.43301267 6.71410161,1.43301267 6.24999999,1.70096187 C5.78589837,1.96891107 5.5,2.46410161 5.5,3 L5.5,12 C5.5,13.3807119 6.61928813,14.5 8,14.5 C9.38071187,14.5 10.5,13.3807119 10.5,12 L10.5,5 C10.5,4.72385763 10.7238576,4.5 11,4.5 C11.2761424,4.5 11.5,4.72385763 11.5,5 L11.5,12 C11.5,13.9329966 9.93299662,15.5 8,15.5 C6.06700338,15.5 4.5,13.9329966 4.5,12 L4.5,3 Z\",\n transform: \"rotate(-45 8 8)\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconPaperclip);\nexport default __webpack_public_path__ + \"static/media/icon-paperclip.7910f425.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC } from 'react';\nimport { Container, ContainerProps } from 'react-bootstrap';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport Color from 'color';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tcolorBlockContainer: ({ angle }: { angle: number }) => ({\n\t\tbackgroundColor: theme.colors.primary,\n\t\tbackgroundImage: `linear-gradient(${angle}deg, ${Color(theme.colors.primary)\n\t\t\t.lighten(0)\n\t\t\t.hex()} 0%, ${Color(theme.colors.primary)\n\t\t\t.lighten(0)\n\t\t\t.hex()} 50%, ${Color(theme.colors.primary)\n\t\t\t.lighten(0.2)\n\t\t\t.desaturate(0.2)\n\t\t\t.hex()} 50%, ${Color(theme.colors.primary)\n\t\t\t.lighten(0.2)\n\t\t\t.desaturate(0.2)\n\t\t\t.hex()} 100%)`,\n\t}),\n}));\n\ninterface ColorBlockContainerProps extends ContainerProps {\n\tangle?: number;\n}\n\nexport const ColorBlockContainer: FC = ({ angle, children, ...props }) => {\n\tconst classes = useStyles({\n\t\tangle: angle || 16,\n\t});\n\n\treturn (\n\t\t
    \n\t\t\t{children}\n\t\t
    \n\t);\n};\n","import React, { useState } from 'react';\nimport { Button, Form } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { Avatar } from '@/components';\n\nimport { ReactComponent as LinkIcon } from '@/assets/icons/icon-link.svg';\nimport { ReactComponent as PaperclipIcon } from '@/assets/icons/icon-paperclip.svg';\n\nconst useStyles = createUseThemedStyles({\n\tcommentPost: {\n\t\tdisplay: 'flex',\n\t},\n\ttextareaOuter: {\n\t\tflex: 1,\n\t},\n});\n\ninterface CommentPostProps {\n\tclassName?: string;\n}\n\nexport const CommentPost = ({ className }: CommentPostProps) => {\n\tconst classes = useStyles();\n\tconst [commentValue, setCommentValue] = useState('');\n\n\tfunction handleFormSubmit(event: React.FormEvent) {\n\t\tevent.preventDefault();\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    \n\t\t\t\tAdd a Comment\n\t\t\t\t {\n\t\t\t\t\t\tsetCommentValue(event.currentTarget.value);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Button } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { ReactComponent as PaperclipIcon } from '@/assets/icons/icon-paperclip.svg';\nimport { Avatar } from '@/components';\n\nconst useStyles = createUseThemedStyles({\n\tcommentOuter: {\n\t\tdisplay: 'flex',\n\t\tmarginBottom: 20,\n\t},\n\tcomment: {\n\t\tflex: 1,\n\t},\n});\n\ninterface CommentProps {\n\tavatarUrl: string;\n\tname: string;\n\ttitle: string;\n\tcomment: string;\n\tattachments?: {\n\t\ttitle: string;\n\t\turl: string;\n\t}[];\n\tclassName?: string;\n}\n\nexport const Comment = ({ avatarUrl, name, title, comment, attachments, className }: CommentProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{name}, {title}\n\t\t\t\t
    \n\t\t\t\t

    \n\t\t\t\t{!!attachments?.length &&\n\t\t\t\t\tattachments.map((attachment, index) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t

    \n\t\t
    \n\t);\n};\n","import React, { FC } from 'react';\nimport { Link } from 'react-router-dom';\nimport LinesEllipsis from 'react-lines-ellipsis';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { Avatar } from '@/components';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tcontactRequest: {\n\t\tdisplay: 'flex',\n\t\tpadding: '16px 0',\n\t\talignItems: 'center',\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\tcolor: 'inherit',\n\t},\n\trequestInformation: {\n\t\tflex: 1,\n\t\toverflow: 'hidden',\n\t},\n}));\n\ninterface ContactRequestProps {\n\tavatarUrl?: string;\n\tnamePrefix?: string;\n\tname: string;\n\tnameSupplement?: string;\n\ttime?: string;\n\tlastMessage?: string;\n\tclassName?: string;\n\thref?: string;\n}\n\nconst ResponsiveEllipsis = responsiveHOC()(LinesEllipsis);\n\nexport const ContactRequest: FC = ({\n\tavatarUrl,\n\tnamePrefix,\n\tname,\n\tnameSupplement,\n\ttime,\n\tlastMessage,\n\tclassName,\n\thref,\n\tchildren,\n}) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t{avatarUrl && }\n\t\t\t
    \n\t\t\t\t{namePrefix &&

    {namePrefix}

    }\n\t\t\t\t
    \n\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{`${name}${nameSupplement ? `, ${nameSupplement}` : ''}`}\n\t\t\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t{time &&

    {time}

    }\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t{children}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as ChevronIcon } from '@/assets/icons/icon-chevron-right.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\trecentlyViewed: {\n\t\twidth: '100%',\n\t\tdisplay: 'flex',\n\t},\n\tnumberOuter: {\n\t\twidth: 40,\n\t\tflexShrink: 0,\n\t\tmarginRight: 16,\n\t\t'& h2': {\n\t\t\ttop: -9,\n\t\t\tposition: 'relative',\n\t\t},\n\t},\n\tinfoOuter: {\n\t\tflex: 1,\n\t},\n\tlink: {\n\t\tcolor: theme.colors.gray800,\n\t\t...theme.fonts.openSansBold,\n\t},\n\tchevronIcon: {\n\t\tmarginTop: -1,\n\t\tcolor: theme.colors.primary,\n\t},\n}));\n\ninterface DashboardRecentlyViewedProps {\n\tnumber?: string;\n\ttype: string;\n\ttitle: string;\n\tto: string;\n}\n\nexport const DashboardRecentlyViewed = ({ number, type, title, to }: DashboardRecentlyViewedProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t{number && (\n\t\t\t\t
    \n\t\t\t\t\t

    {number}

    \n\t\t\t\t
    \n\t\t\t)}\n\t\t\t
    \n\t\t\t\t

    {type}

    \n\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t\t\t{title} \n\t\t\t\t\t\n\t\t\t\t

    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconClock(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 14,\n height: 14,\n viewBox: \"0 0 14 14\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M6.99998 13.8842C8.22134 13.8842 9.35154 13.5788 10.3906 12.9682C11.4297 12.3575 12.2545 11.5326 12.8652 10.4936C13.4759 9.45451 13.7812 8.3243 13.7812 7.10295C13.7812 5.8816 13.4759 4.75139 12.8652 3.71233C12.2545 2.67327 11.4297 1.84841 10.3906 1.23773C9.35154 0.627054 8.22134 0.321716 6.99998 0.321716C5.77863 0.321716 4.64843 0.627054 3.60937 1.23773C2.57031 1.84841 1.74544 2.67327 1.13476 3.71233C0.524088 4.75139 0.21875 5.8816 0.21875 7.10295C0.21875 8.3243 0.524088 9.45451 1.13476 10.4936C1.74544 11.5326 2.57031 12.3575 3.60937 12.9682C4.64843 13.5788 5.77863 13.8842 6.99998 13.8842ZM8.87473 9.78947L8.94139 9.78263C9.03253 9.7644 9.10545 9.71883 9.16013 9.64591L9.65232 8.93498C9.70701 8.86206 9.72979 8.78003 9.72068 8.68888C9.71157 8.59774 9.67055 8.52482 9.59763 8.47013L7.76561 7.15764V3.27483C7.76561 3.18369 7.73371 3.10621 7.6699 3.04241C7.6061 2.97861 7.52863 2.94671 7.43748 2.94671H6.56248C6.47134 2.94671 6.39387 2.97861 6.33006 3.04241C6.26626 3.10621 6.23436 3.18369 6.23436 3.27483V7.7592C6.23436 7.86857 6.27993 7.95972 6.37108 8.03264L8.69529 9.72794C8.76821 9.78263 8.85024 9.80086 8.94139 9.78263L8.87473 9.78947Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconClock);\nexport default __webpack_public_path__ + \"static/media/icon-clock.32f3e111.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconStar(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 14,\n height: 14,\n viewBox: \"0 0 14 14\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.2563 13.8906C10.445 14 10.6423 14.0273 10.8482 13.9726C11.0541 13.9179 11.2128 13.7949 11.3243 13.6035C11.4358 13.4121 11.4744 13.207 11.4401 12.9883L10.7967 8.99607L13.5247 6.17967C13.6791 6.01561 13.7606 5.8242 13.7692 5.60546C13.7777 5.38671 13.7177 5.18619 13.589 5.00389C13.4603 4.8216 13.2845 4.71223 13.0614 4.67577L9.30409 4.10155L7.6313 0.492186C7.52836 0.273437 7.37824 0.127604 7.18093 0.0546875C6.98363 -0.0182292 6.78633 -0.0182292 6.58902 0.0546875C6.39172 0.127604 6.2416 0.273437 6.13866 0.492186L4.46587 4.10155L0.708523 4.67577C0.485484 4.71223 0.309627 4.8216 0.180951 5.00389C0.0522747 5.18619 -0.00777408 5.38671 0.000804204 5.60546C0.00938248 5.8242 0.0908775 6.01561 0.245289 6.17967L2.97322 8.99607L2.32984 12.9883C2.29553 13.207 2.33413 13.4121 2.44565 13.6035C2.55717 13.7949 2.71587 13.9179 2.92175 13.9726C3.12764 14.0273 3.32494 14 3.51366 13.8906L6.88498 12.0312L10.2563 13.8906Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconStar);\nexport default __webpack_public_path__ + \"static/media/icon-star.e9646171.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconCalendarV2(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 17,\n height: 18,\n viewBox: \"0 0 17 18\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.63636 8.1H8.18182V12.6H3.63636V8.1ZM14.5455 16.2H1.81818V6.3H14.5455V16.2ZM14.5455 1.8H13.6364V0H11.8182V1.8H4.54545V0H2.72727V1.8H1.81818C0.809091 1.8 0 2.61 0 3.6V16.2C0 16.6774 0.191558 17.1352 0.532533 17.4728C0.873508 17.8104 1.33597 18 1.81818 18H14.5455C15.0277 18 15.4901 17.8104 15.8311 17.4728C16.1721 17.1352 16.3636 16.6774 16.3636 16.2V3.6C16.3636 3.12261 16.1721 2.66477 15.8311 2.32721C15.4901 1.98964 15.0277 1.8 14.5455 1.8Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconCalendarV2);\nexport default __webpack_public_path__ + \"static/media/icon-calendar-v2.fcac7b23.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { Link } from 'react-router-dom';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as ClockIcon } from '@/assets/icons/icon-clock.svg';\nimport { ReactComponent as StarIcon } from '@/assets/icons/icon-star.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\timageOuter: {\n\t\twidth: '100%',\n\t\tmarginBottom: 16,\n\t\tpaddingBottom: '70%',\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundRepeat: 'no-repeat',\n\t\tbackgroundColor: theme.colors.gray200,\n\t},\n\tlink: {\n\t\tdisplay: 'block',\n\t\tcolor: theme.colors.white,\n\t\t'&:hover': {\n\t\t\tcolor: theme.colors.white,\n\t\t},\n\t},\n}));\n\ninterface DashboardRecommendationProps {\n\timageSrc: string;\n\ttype: string;\n\tto: string;\n\ttitle: string;\n\trecentlyPublished?: boolean;\n\trecommendedByAdvisor?: boolean;\n}\n\nexport const DashboardRecommendation = ({\n\timageSrc,\n\ttype,\n\tto,\n\ttitle,\n\trecentlyPublished,\n\trecommendedByAdvisor,\n}: DashboardRecommendationProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t

    {type}

    \n\t\t\t{recentlyPublished && (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t

    Recently published

    \n\t\t\t\t
    \n\t\t\t)}\n\t\t\t{recommendedByAdvisor && (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t

    Recommended by your advisor

    \n\t\t\t\t
    \n\t\t\t)}\n\t\t\t

    {title}

    \n\t\t\n\t);\n};\n","import { TableColumns, TableHeaders, TableRowConfig } from '@/components/table/models';\n\nexport enum ASSESSMENTS_TABLE_COLUMN_IDS {\n\tASSESSMENTS = 'ASSESSMENTS',\n\tDESCRIPTION = 'DESCRIPTION',\n\tLAST_TAKEN = 'LAST_TAKEN',\n\tACTIONS = 'ACTIONS',\n}\n\nexport const assessmentsTableColumns: TableColumns = {\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.ASSESSMENTS]: {\n\t\tcolumnId: ASSESSMENTS_TABLE_COLUMN_IDS.ASSESSMENTS,\n\t\tcolumnTitle: 'Assessments',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.DESCRIPTION]: {\n\t\tcolumnId: ASSESSMENTS_TABLE_COLUMN_IDS.DESCRIPTION,\n\t\tcolumnTitle: 'Description',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.LAST_TAKEN]: {\n\t\tcolumnId: ASSESSMENTS_TABLE_COLUMN_IDS.LAST_TAKEN,\n\t\tcolumnTitle: 'Last Taken',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.ACTIONS]: {\n\t\tcolumnId: ASSESSMENTS_TABLE_COLUMN_IDS.ACTIONS,\n\t\tcolumnTitle: 'Actions',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n};\n\nexport const assessmentsTableHeaders: TableHeaders = {\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.ASSESSMENTS]: {\n\t\ttableHeaderId: ASSESSMENTS_TABLE_COLUMN_IDS.ASSESSMENTS,\n\t\ttitle: 'Assessments',\n\t\tisSortable: true,\n\t},\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.DESCRIPTION]: {\n\t\ttableHeaderId: ASSESSMENTS_TABLE_COLUMN_IDS.DESCRIPTION,\n\t\ttitle: 'Description',\n\t\tisSortable: true,\n\t},\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.LAST_TAKEN]: {\n\t\ttableHeaderId: ASSESSMENTS_TABLE_COLUMN_IDS.LAST_TAKEN,\n\t\ttitle: 'Last Taken',\n\t\tisSortable: true,\n\t},\n\t[ASSESSMENTS_TABLE_COLUMN_IDS.ACTIONS]: {\n\t\ttableHeaderId: ASSESSMENTS_TABLE_COLUMN_IDS.ACTIONS,\n\t\ttitle: 'Actions',\n\t\tisSortable: true,\n\t},\n};\n\nexport const assessmentsTableRows: TableRowConfig<{\n\ttitle: string;\n\tdescription: string;\n\tlastTakenDescription: string;\n\tactionTitle: string;\n}>[] = [\n\t{\n\t\trowId: 'xxxx-xxxx-xxxx-xxxx-0',\n\t\tchecked: false,\n\t\texpanded: false,\n\t\tcolumnData: {\n\t\t\ttitle: 'Finance Executive Heights',\n\t\t\tdescription: 'Summarize Finance improvement opportunities with comparisons to Digital World Class®',\n\t\t\tlastTakenDescription: 'June 22nd 2020',\n\t\t\tactionTitle: 'View Results',\n\t\t},\n\t},\n];\n","import React from 'react';\nimport DatePicker, { ReactDatePickerProps } from 'react-datepicker';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as CalendarIcon } from '@/assets/icons/icon-calendar-v2.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdateInput: {\n\t\tminWidth: 150,\n\t\tposition: 'relative',\n\t\t'& .react-datepicker__input-container': {\n\t\t\t'& input': {\n\t\t\t\tflex: 1,\n\t\t\t\theight: 40,\n\t\t\t\tpadding: 0,\n\t\t\t\twidth: '100%',\n\t\t\t\ttextIndent: 16,\n\t\t\t\tborderRadius: 2,\n\t\t\t\t...theme.fonts.s,\n\t\t\t\tpaddingRight: 44,\n\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\t\tboxShadow: 'inset 0 1px 4px 0 rgba(0, 0, 0, 0.16)',\n\t\t\t\t'&:hover': {\n\t\t\t\t\tborder: `1px solid ${theme.colors.gray600}`,\n\t\t\t\t},\n\t\t\t\t'&:focus': {\n\t\t\t\t\toutline: 'none',\n\t\t\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t\t\t},\n\t\t\t\t'&:disabled': {\n\t\t\t\t\tbackgroundColor: theme.colors.gray300,\n\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t'& .react-datepicker__close-icon': {\n\t\t\t\tright: 38,\n\t\t\t},\n\t\t},\n\t\t'& .react-datepicker-popper': {\n\t\t\tpadding: '0 !important',\n\t\t\t'& .react-datepicker': {\n\t\t\t\tborderRadius: 2,\n\t\t\t\t...theme.fonts.s,\n\t\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\t\t'&__triangle': {\n\t\t\t\t\tdisplay: 'none',\n\t\t\t\t},\n\t\t\t\t'&__navigation': {\n\t\t\t\t\ttop: 8,\n\t\t\t\t\twidth: 40,\n\t\t\t\t\theight: 32,\n\t\t\t\t\t'&--previous': {\n\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t},\n\t\t\t\t\t'&--next': {\n\t\t\t\t\t\tright: 0,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t'&__navigation-icon': {\n\t\t\t\t\ttop: 0,\n\t\t\t\t\t'&--previous, &--next': {\n\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\tright: 0,\n\t\t\t\t\t},\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\tborderWidth: '2px 2px 0 0',\n\t\t\t\t\t\tborderColor: theme.colors.primary,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t'&__header': {\n\t\t\t\t\tpadding: '8px 0',\n\t\t\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t\t\t\tborderBottom: `1px solid ${theme.colors.gray500}`,\n\t\t\t\t},\n\t\t\t\t'&__current-month': {\n\t\t\t\t\theight: 32,\n\t\t\t\t\tfontSize: '1.6rem',\n\t\t\t\t\tlineHeight: '3.2rem',\n\t\t\t\t},\n\t\t\t\t'&__day-names': {\n\t\t\t\t\tmargin: 0,\n\t\t\t\t},\n\t\t\t\t'&__day-name': {\n\t\t\t\t\tmargin: 0,\n\t\t\t\t\twidth: 40,\n\t\t\t\t\theight: 32,\n\t\t\t\t\tlineHeight: '3.2rem',\n\t\t\t\t\tcolor: theme.colors.gray600,\n\t\t\t\t},\n\t\t\t\t'&__month': {\n\t\t\t\t\tmargin: 0,\n\t\t\t\t},\n\t\t\t\t'&__day': {\n\t\t\t\t\tmargin: 0,\n\t\t\t\t\twidth: 40,\n\t\t\t\t\theight: 40,\n\t\t\t\t\tborderRadius: 2,\n\t\t\t\t\tlineHeight: '4.0rem',\n\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\ttextDecoration: 'underline',\n\t\t\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\t\t},\n\t\t\t\t\t'&--outside-month': {\n\t\t\t\t\t\tborderRadius: 0,\n\t\t\t\t\t\tbackgroundColor: theme.colors.gray200,\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tbackgroundColor: theme.colors.gray200,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t'&--today': {\n\t\t\t\t\t\t...theme.fonts.openSansSemiBold,\n\t\t\t\t\t},\n\t\t\t\t\t'&--selected': {\n\t\t\t\t\t\t...theme.fonts.openSansSemiBold,\n\t\t\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t\t.string(),\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t\t\t.string(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t'&--keyboard-selected': {\n\t\t\t\t\t\toutline: 'none',\n\t\t\t\t\t\tcolor: theme.colors.black,\n\t\t\t\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tcalendarIcon: {\n\t\ttop: '50%',\n\t\tright: 15,\n\t\tposition: 'absolute',\n\t\tpointerEvents: 'none',\n\t\ttransform: 'translateY(-50%)',\n\t\tcolor: theme.colors.primary,\n\t},\n}));\n\nexport const DateInput = ({ maxDate, ...props }: ReactDatePickerProps) => {\n\tconst classes = useStyles();\n\tconst finalProps = {\n\t\t...(maxDate ? { maxDate } : {}),\n\t\tpeekNextMonth: true,\n\t\tshowMonthDropdown: true,\n\t\tshowYearDropdown: true,\n\t\tdropdownMode: 'select' as const,\n\t\t...props,\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\n\ninterface DeliverableListItemProps {\n\ttype: string;\n\tto: string;\n\ttitle: string;\n\tprograms: string;\n\tdate: string;\n}\n\nexport const DeliverableListItem = ({ type, to, title, programs, date }: DeliverableListItemProps) => {\n\treturn (\n\t\t
    \n\t\t\t

    {type}

    \n\t\t\t

    \n\t\t\t\t{title}\n\t\t\t

    \n\t\t\t

    {programs}

    \n\t\t\t

    {date}

    \n\t\t
    \n\t);\n};\n","import { TableColumns, TableHeaders } from '@/components/table/models';\n\nexport enum BEST_PRACTICE_TABLE_COLUMN_IDS {\n\tBEST_PRACTICES = 'DESCRIPTION',\n\tBUSINESS_PROCESS = 'BUSINESS_PROCESS',\n\tSERVICE_DELIVERY_COMPONENT = 'SERVICE_DELIVERY_COMPONENT',\n\tCERTIFICATION_STATUS = 'CERTIFICATION_STATUS',\n\tTHEMES = 'THEMES',\n\tLEVEL_OF_EFFORT = 'LEVEL_OF_EFFORT',\n\tTIME_FRAME = 'TIME_FRAME',\n\tCODE = 'CODE',\n}\n\nexport const bestPracticeTableColumns: TableColumns = {\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.BEST_PRACTICES]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.BEST_PRACTICES,\n\t\tcolumnTitle: 'Best Practices',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\tcolumnTitle: 'Business Process',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.SERVICE_DELIVERY_COMPONENT]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.SERVICE_DELIVERY_COMPONENT,\n\t\tcolumnTitle: 'Service Delivery Component',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.CERTIFICATION_STATUS]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.CERTIFICATION_STATUS,\n\t\tcolumnTitle: 'Certification Status',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.THEMES]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.THEMES,\n\t\tcolumnTitle: 'Themes',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.LEVEL_OF_EFFORT]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.LEVEL_OF_EFFORT,\n\t\tcolumnTitle: 'Level of Effort',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.TIME_FRAME]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.TIME_FRAME,\n\t\tcolumnTitle: 'Time Frame',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.CODE]: {\n\t\tcolumnId: BEST_PRACTICE_TABLE_COLUMN_IDS.CODE,\n\t\tcolumnTitle: 'Code',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n};\n\nexport const bestPracticeTableHeaders: TableHeaders = {\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.BEST_PRACTICES]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.BEST_PRACTICES,\n\t\ttitle: 'Best Practices',\n\t\tisSortable: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\ttitle: 'Business Process',\n\t\tisSortable: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.SERVICE_DELIVERY_COMPONENT]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.SERVICE_DELIVERY_COMPONENT,\n\t\ttitle: 'Service Delivery Component',\n\t\tisSortable: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.CERTIFICATION_STATUS]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.CERTIFICATION_STATUS,\n\t\ttitle: 'Certification Status',\n\t\tisSortable: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.THEMES]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.THEMES,\n\t\ttitle: 'Themes',\n\t\tisSortable: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.LEVEL_OF_EFFORT]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.LEVEL_OF_EFFORT,\n\t\ttitle: 'Level or Effort',\n\t\tisSortable: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.TIME_FRAME]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.TIME_FRAME,\n\t\ttitle: 'Time Frame',\n\t\tisSortable: true,\n\t},\n\t[BEST_PRACTICE_TABLE_COLUMN_IDS.CODE]: {\n\t\ttableHeaderId: BEST_PRACTICE_TABLE_COLUMN_IDS.CODE,\n\t\ttitle: 'Code',\n\t\tisSortable: true,\n\t},\n};\n","import { TableColumns, TableHeaders } from '@/components/table/models';\n\nexport enum CONTACTS_TABLE_COLUMN_IDS {\n\tCOMPANY = 'COMPANY',\n\tNAME = 'NAME',\n\tTITLE = 'TITLE',\n\tEMAIL = 'EMAIL',\n\tPHONE = 'PHONE',\n\tDELIVERED = 'DELIVERED',\n\tACTIONS = 'ACTIONS',\n}\n\nexport const contactsTableColumns: TableColumns = {\n\t[CONTACTS_TABLE_COLUMN_IDS.COMPANY]: {\n\t\tcolumnId: CONTACTS_TABLE_COLUMN_IDS.COMPANY,\n\t\tcolumnTitle: 'Company',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.NAME]: {\n\t\tcolumnId: CONTACTS_TABLE_COLUMN_IDS.NAME,\n\t\tcolumnTitle: 'User Name',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.TITLE]: {\n\t\tcolumnId: CONTACTS_TABLE_COLUMN_IDS.TITLE,\n\t\tcolumnTitle: 'Title',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.EMAIL]: {\n\t\tcolumnId: CONTACTS_TABLE_COLUMN_IDS.EMAIL,\n\t\tcolumnTitle: 'Email',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.PHONE]: {\n\t\tcolumnId: CONTACTS_TABLE_COLUMN_IDS.PHONE,\n\t\tcolumnTitle: 'Phone',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.DELIVERED]: {\n\t\tcolumnId: CONTACTS_TABLE_COLUMN_IDS.DELIVERED,\n\t\tcolumnTitle: 'Delivered',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.ACTIONS]: {\n\t\tcolumnId: CONTACTS_TABLE_COLUMN_IDS.ACTIONS,\n\t\tcolumnTitle: 'Actions',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n};\n\nexport const contactsTableHeaders: TableHeaders = {\n\t[CONTACTS_TABLE_COLUMN_IDS.COMPANY]: {\n\t\ttableHeaderId: CONTACTS_TABLE_COLUMN_IDS.COMPANY,\n\t\ttitle: 'Company',\n\t\tisSortable: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.NAME]: {\n\t\ttableHeaderId: CONTACTS_TABLE_COLUMN_IDS.NAME,\n\t\ttitle: 'User Name',\n\t\tisSortable: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.TITLE]: {\n\t\ttableHeaderId: CONTACTS_TABLE_COLUMN_IDS.TITLE,\n\t\ttitle: 'Title',\n\t\tisSortable: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.EMAIL]: {\n\t\ttableHeaderId: CONTACTS_TABLE_COLUMN_IDS.EMAIL,\n\t\ttitle: 'Email',\n\t\tisSortable: true,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.PHONE]: {\n\t\ttableHeaderId: CONTACTS_TABLE_COLUMN_IDS.PHONE,\n\t\ttitle: 'Phone',\n\t\tisSortable: false,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.DELIVERED]: {\n\t\ttableHeaderId: CONTACTS_TABLE_COLUMN_IDS.DELIVERED,\n\t\ttitle: 'Delivered',\n\t\tisSortable: false,\n\t},\n\t[CONTACTS_TABLE_COLUMN_IDS.ACTIONS]: {\n\t\ttableHeaderId: CONTACTS_TABLE_COLUMN_IDS.ACTIONS,\n\t\ttitle: 'Actions',\n\t\tisSortable: false,\n\t},\n};\n","import { TableColumns, TableHeaders, TableRowConfig } from '@/components/table/models';\n\nexport enum ENGAGEMENT_PLAN_TABLE_COLUMN_IDS {\n\tACTION_ITEM = 'ACTION_ITEM',\n\tADVISOR = 'ADVISOR',\n\tSTATUS = 'STATUS',\n\tMILESTONE_DATE = 'MILESTONE_DATE',\n}\n\nexport const engagementPlanTableColumns: TableColumns = {\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ACTION_ITEM]: {\n\t\tcolumnId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ACTION_ITEM,\n\t\tcolumnTitle: 'Action Item',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ADVISOR]: {\n\t\tcolumnId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ADVISOR,\n\t\tcolumnTitle: 'ADVISOR',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.STATUS]: {\n\t\tcolumnId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.STATUS,\n\t\tcolumnTitle: 'STATUS',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.MILESTONE_DATE]: {\n\t\tcolumnId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.MILESTONE_DATE,\n\t\tcolumnTitle: 'MILESTONE_DATE',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n};\n\nexport const engagementPlanTableHeaders: TableHeaders = {\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ACTION_ITEM]: {\n\t\ttableHeaderId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ACTION_ITEM,\n\t\ttitle: 'Action Item',\n\t\tisSortable: false,\n\t},\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ADVISOR]: {\n\t\ttableHeaderId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ADVISOR,\n\t\ttitle: 'Advisor',\n\t\tisSortable: false,\n\t},\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.STATUS]: {\n\t\ttableHeaderId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.STATUS,\n\t\ttitle: 'Status',\n\t\tisSortable: false,\n\t},\n\t[ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.MILESTONE_DATE]: {\n\t\ttableHeaderId: ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.MILESTONE_DATE,\n\t\ttitle: 'Milestone Date',\n\t\tisSortable: false,\n\t},\n};\n\nexport const engagementPlanTableRows: TableRowConfig<{\n\tdescription: string;\n\tattachementCount: number;\n\tcommentCount: number;\n\tadvisor: string;\n\tstatusId: string;\n\tmilestoneDate: string;\n}>[] = [\n\t{\n\t\trowId: 'xxxx-xxxx-xxxx-xxxx-0',\n\t\tchecked: false,\n\t\texpanded: false,\n\t\tcolumnData: {\n\t\t\tdescription: 'Review Stategy',\n\t\t\tattachementCount: 2,\n\t\t\tcommentCount: 0,\n\t\t\tadvisor: 'John Smith',\n\t\t\tstatusId: 'COMPLETE',\n\t\t\tmilestoneDate: '12/10/20',\n\t\t},\n\t},\n\t{\n\t\trowId: 'xxxx-xxxx-xxxx-xxxx-1',\n\t\tchecked: false,\n\t\texpanded: false,\n\t\tcolumnData: {\n\t\t\tdescription: 'Share Best Practices & Research',\n\t\t\tattachementCount: 0,\n\t\t\tcommentCount: 0,\n\t\t\tadvisor: 'John Smith',\n\t\t\tstatusId: 'COMPLETE',\n\t\t\tmilestoneDate: '12/29/20',\n\t\t},\n\t},\n\t{\n\t\trowId: 'xxxx-xxxx-xxxx-xxxx-2',\n\t\tchecked: false,\n\t\texpanded: false,\n\t\tcolumnData: {\n\t\t\tdescription: 'Share Talent Research',\n\t\t\tattachementCount: 1,\n\t\t\tcommentCount: 2,\n\t\t\tadvisor: 'John Smith',\n\t\t\tstatusId: 'IN_PROGRESS',\n\t\t\tmilestoneDate: '1/14/21',\n\t\t},\n\t},\n];\n","import { TableColumns, TableHeaders } from '@/components/table/models';\n\nexport enum PERFORMANCE_METRICS_TABLE_COLUMN_IDS {\n\tPERFORMANCE_METRICS = 'DESCRIPTION',\n\tBUSINESS_PROCESS = 'BUSINESS_PROCESS',\n\tPEER_GROUP = 'PEER_GROUP',\n\tDIGITAL_WORLD_CLASS = 'DIGITAL_WORLD_CLASS',\n\tINDUSTRY_PEER = 'INDUSTRY_PEER',\n\tFIRST_QUARTILE = 'FIRST_QUARTILE',\n\tDRIVER = 'DRIVER',\n\tCATEGORY = 'CATEGORY',\n\tSOURCE = 'SOURCE',\n\tTOP_PERFORMER = 'TOP_PERFORMER',\n}\n\nexport const performanceMetricsTableColumns: TableColumns = {\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PERFORMANCE_METRICS]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PERFORMANCE_METRICS,\n\t\tcolumnTitle: 'Benchmark Metrics',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\tcolumnTitle: 'Business Process',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PEER_GROUP]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PEER_GROUP,\n\t\tcolumnTitle: 'Peer Group',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.TOP_PERFORMER]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.TOP_PERFORMER,\n\t\t// This is referred to as \"First Quartile\" in the admin\n\t\tcolumnTitle: 'First Quartile',\n\t\tisHidable: false,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DIGITAL_WORLD_CLASS]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DIGITAL_WORLD_CLASS,\n\t\tcolumnTitle: 'Digital World Class®',\n\t\tisHidable: false,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.INDUSTRY_PEER]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.INDUSTRY_PEER,\n\t\tcolumnTitle: 'Industry Peer',\n\t\tisHidable: false,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.FIRST_QUARTILE]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.FIRST_QUARTILE,\n\t\t// This is referred to as \"Industry First Quartile\" in the admin\n\t\tcolumnTitle: 'First Quartile',\n\t\tisHidable: false,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DRIVER]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DRIVER,\n\t\tcolumnTitle: 'Driver',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.CATEGORY]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.CATEGORY,\n\t\tcolumnTitle: 'Category',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.SOURCE]: {\n\t\tcolumnId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.SOURCE,\n\t\tcolumnTitle: 'Source',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n};\n\nexport const performanceMetricsTableHeaders: TableHeaders = {\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PERFORMANCE_METRICS]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PERFORMANCE_METRICS,\n\t\ttitle: 'Benchmark Metrics',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\ttitle: 'Business Process',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PEER_GROUP]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PEER_GROUP,\n\t\ttitle: 'Peer Group',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.TOP_PERFORMER]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.TOP_PERFORMER,\n\t\t// This is referred to as 1stQ internally at Hackett\n\t\ttitle: 'First Quartile',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DIGITAL_WORLD_CLASS]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DIGITAL_WORLD_CLASS,\n\t\ttitle: 'Digital World Class®',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.INDUSTRY_PEER]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.INDUSTRY_PEER,\n\t\ttitle: 'Industry Peer',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.FIRST_QUARTILE]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.FIRST_QUARTILE,\n\t\ttitle: 'First Quartile',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DRIVER]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DRIVER,\n\t\ttitle: 'Driver',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.CATEGORY]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.CATEGORY,\n\t\ttitle: 'Category',\n\t\tisSortable: true,\n\t},\n\t[PERFORMANCE_METRICS_TABLE_COLUMN_IDS.SOURCE]: {\n\t\ttableHeaderId: PERFORMANCE_METRICS_TABLE_COLUMN_IDS.SOURCE,\n\t\ttitle: 'Source',\n\t\tisSortable: true,\n\t},\n};\n","import { TableColumns, TableHeaders, TableRowConfig } from '@/components/table/models';\n\nexport enum PLAYBOOKS_TABLE_COLUMN_IDS {\n\tBEST_PRACTICES = 'BEST_PRACTICES',\n\tBUSINESS_PROCESS = 'BUSINESS_PROCESS',\n\tMODULES = 'MODULES',\n\tPRIORITY = 'PRIORITY',\n\tFUNCTIONS = 'FUNCTIONS',\n\tCONFIGURATION_CONSIDERATIONS = 'CONFIGURATION_CONSIDERATIONS',\n\tLESSONS_LEARNED = 'LESSONS_LEARNED',\n\tPROCESS_FLOW_STEPS_INFLUENCED = 'PROCESS_FLOW_STEPS_INFLUENCED',\n\tCURRENT_ASSEESSMENT = 'CURRENT_ASSEESSMENT',\n\tBUSINESS_VALUE = 'BUSINESS_VALUE',\n}\n\nexport const playbooksTableColumns: TableColumns = {\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.BEST_PRACTICES]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.BEST_PRACTICES,\n\t\tcolumnTitle: 'Best Practices',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\tcolumnTitle: 'Business Process',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.MODULES]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.MODULES,\n\t\tcolumnTitle: 'Modules',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.PRIORITY]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.PRIORITY,\n\t\tcolumnTitle: 'Priority',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.FUNCTIONS]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.FUNCTIONS,\n\t\tcolumnTitle: 'Functions',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.CONFIGURATION_CONSIDERATIONS]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.CONFIGURATION_CONSIDERATIONS,\n\t\tcolumnTitle: 'Configuration Considerations',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.LESSONS_LEARNED]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.LESSONS_LEARNED,\n\t\tcolumnTitle: 'Lessons Learned',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.PROCESS_FLOW_STEPS_INFLUENCED]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.PROCESS_FLOW_STEPS_INFLUENCED,\n\t\tcolumnTitle: 'Process Flow Steps Influenced',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.CURRENT_ASSEESSMENT]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.CURRENT_ASSEESSMENT,\n\t\tcolumnTitle: 'Current Assessment',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_VALUE]: {\n\t\tcolumnId: PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_VALUE,\n\t\tcolumnTitle: 'Business Value',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n};\n\nexport const playbooksTableHeaders: TableHeaders = {\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.BEST_PRACTICES]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.BEST_PRACTICES,\n\t\ttitle: 'Best Practices',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\ttitle: 'Business Process',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.MODULES]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.MODULES,\n\t\ttitle: 'Modules',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.PRIORITY]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.PRIORITY,\n\t\ttitle: 'Priority',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.FUNCTIONS]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.FUNCTIONS,\n\t\ttitle: 'Functions',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.CONFIGURATION_CONSIDERATIONS]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.CONFIGURATION_CONSIDERATIONS,\n\t\ttitle: 'Configuration Considerations',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.LESSONS_LEARNED]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.LESSONS_LEARNED,\n\t\ttitle: 'Lessons Learned',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.PROCESS_FLOW_STEPS_INFLUENCED]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.PROCESS_FLOW_STEPS_INFLUENCED,\n\t\ttitle: 'Process Flow Steps Influenced',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.CURRENT_ASSEESSMENT]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.CURRENT_ASSEESSMENT,\n\t\ttitle: 'Current Assessment',\n\t\tisSortable: true,\n\t},\n\t[PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_VALUE]: {\n\t\ttableHeaderId: PLAYBOOKS_TABLE_COLUMN_IDS.BUSINESS_VALUE,\n\t\ttitle: 'Business Value',\n\t\tisSortable: true,\n\t},\n};\n\nexport const playbooksTableRows: TableRowConfig<{\n\tbestPractices: string;\n\tbusinessProcess: string;\n\tmodules: string;\n\tpriority: string;\n\tfunctions: string;\n\tconfigurationConsiderations: string;\n\tlessonsLearned: string;\n\tprocessFlowStepsInfluenced: string;\n\tcurrentAssessment: string;\n\tbusinessValue: string;\n}>[] = [\n\t{\n\t\trowId: 'xxxx-xxxx-xxxx-xxxx-0',\n\t\tchecked: false,\n\t\texpanded: false,\n\t\tcolumnData: {\n\t\t\tbestPractices:\n\t\t\t\t'Consolidate transaction processing within a shared services or leveraged environment (retained, outsourced or hybrid).',\n\t\t\tbusinessProcess: 'Accounts Payable',\n\t\t\tmodules: 'Accounts Payable',\n\t\t\tpriority: 'None',\n\t\t\tfunctions: 'Application Security, Policy & Procedures, Workflow',\n\t\t\tconfigurationConsiderations:\n\t\t\t\t\"Leverage Oracle Cloud's shared services functionality by creating relationships among client and service provider business units to establish a consolidated accounts payable shared service center.\",\n\t\t\tlessonsLearned: 'N/A',\n\t\t\tprocessFlowStepsInfluenced:\n\t\t\t\t'AP 1.0 - Process Invoice, AP 2.0 - Issue Payment, AP 3.0 - Retain Records, AP 4.0 - Perform Period End Activities, AP 5.0 - Respond to Inquiries',\n\t\t\tcurrentAssessment: '2 - Rarely Performed',\n\t\t\tbusinessValue: '3 - Moderate',\n\t\t},\n\t},\n];\n","import { TableColumns, TableHeaders, TableRowConfig } from '@/components/table/models';\n\nexport enum PROCESS_FLOWS_TABLE_COLUMN_IDS {\n\tPROCESS_FLOWS = 'PROCESS_FLOWS',\n\tLEVEL = 'LEVEL',\n}\n\nexport const processFlowsTableColumns: TableColumns = {\n\t[PROCESS_FLOWS_TABLE_COLUMN_IDS.PROCESS_FLOWS]: {\n\t\tcolumnId: PROCESS_FLOWS_TABLE_COLUMN_IDS.PROCESS_FLOWS,\n\t\tcolumnTitle: 'Process Flows',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[PROCESS_FLOWS_TABLE_COLUMN_IDS.LEVEL]: {\n\t\tcolumnId: PROCESS_FLOWS_TABLE_COLUMN_IDS.LEVEL,\n\t\tcolumnTitle: 'Level',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n};\n\nexport const processFlowsTableHeaders: TableHeaders = {\n\t[PROCESS_FLOWS_TABLE_COLUMN_IDS.PROCESS_FLOWS]: {\n\t\ttableHeaderId: PROCESS_FLOWS_TABLE_COLUMN_IDS.PROCESS_FLOWS,\n\t\ttitle: 'Process Flows',\n\t\tisSortable: true,\n\t},\n\t[PROCESS_FLOWS_TABLE_COLUMN_IDS.LEVEL]: {\n\t\ttableHeaderId: PROCESS_FLOWS_TABLE_COLUMN_IDS.LEVEL,\n\t\ttitle: 'Level',\n\t\tisSortable: true,\n\t},\n};\n\nexport const processFlowsTableRows: TableRowConfig<{\n\ttitle: string;\n\tlevel: string;\n}>[] = [\n\t{\n\t\trowId: 'xxxx-xxxx-xxxx-xxxx-0',\n\t\tchecked: false,\n\t\texpanded: false,\n\t\tcolumnData: {\n\t\t\ttitle: 'Absence and Leave Management',\n\t\t\tlevel: '1',\n\t\t},\n\t},\n];\n","import { TableColumns, TableHeaders, TableRowConfig } from '@/components/table/models';\n\nexport enum USE_CASES_TABLE_COLUMN_IDS {\n\tUSE_CASES = 'USE_CASES',\n\tNUMBER = 'NUMBER',\n\tFUNCTION = 'FUNCTION',\n\tBUSINESS_PROCESS = 'BUSINESS_PROCESS',\n\tAI_TECHNOLOGY = 'AI_TECHNOLOGY',\n\tVALUE_RATING = 'VALUE_RATING',\n}\n\nexport const useCasesTableColumns: TableColumns = {\n\t[USE_CASES_TABLE_COLUMN_IDS.USE_CASES]: {\n\t\tcolumnId: USE_CASES_TABLE_COLUMN_IDS.USE_CASES,\n\t\tcolumnTitle: 'Use Cases',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.NUMBER]: {\n\t\tcolumnId: USE_CASES_TABLE_COLUMN_IDS.NUMBER,\n\t\tcolumnTitle: 'Number',\n\t\tisHidable: true,\n\t\tisShownByDefault: false,\n\t\tisShowing: false,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.FUNCTION]: {\n\t\tcolumnId: USE_CASES_TABLE_COLUMN_IDS.FUNCTION,\n\t\tcolumnTitle: 'Function',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\tcolumnId: USE_CASES_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\tcolumnTitle: 'Business Process',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.AI_TECHNOLOGY]: {\n\t\tcolumnId: USE_CASES_TABLE_COLUMN_IDS.AI_TECHNOLOGY,\n\t\tcolumnTitle: 'AI Technology',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.VALUE_RATING]: {\n\t\tcolumnId: USE_CASES_TABLE_COLUMN_IDS.VALUE_RATING,\n\t\tcolumnTitle: 'Value Rating',\n\t\tisHidable: true,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n};\n\nexport const useCasesTableHeaders: TableHeaders = {\n\t[USE_CASES_TABLE_COLUMN_IDS.USE_CASES]: {\n\t\ttableHeaderId: USE_CASES_TABLE_COLUMN_IDS.USE_CASES,\n\t\ttitle: 'AI Use Cases',\n\t\tisSortable: false,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.NUMBER]: {\n\t\ttableHeaderId: USE_CASES_TABLE_COLUMN_IDS.NUMBER,\n\t\ttitle: 'Number',\n\t\tisSortable: true,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.FUNCTION]: {\n\t\ttableHeaderId: USE_CASES_TABLE_COLUMN_IDS.FUNCTION,\n\t\ttitle: 'Function',\n\t\tisSortable: false,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.BUSINESS_PROCESS]: {\n\t\ttableHeaderId: USE_CASES_TABLE_COLUMN_IDS.BUSINESS_PROCESS,\n\t\ttitle: 'Business Process',\n\t\tisSortable: false,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.AI_TECHNOLOGY]: {\n\t\ttableHeaderId: USE_CASES_TABLE_COLUMN_IDS.AI_TECHNOLOGY,\n\t\ttitle: 'AI Technology',\n\t\tisSortable: false,\n\t},\n\t[USE_CASES_TABLE_COLUMN_IDS.VALUE_RATING]: {\n\t\ttableHeaderId: USE_CASES_TABLE_COLUMN_IDS.VALUE_RATING,\n\t\ttitle: 'Value Rating',\n\t\tisSortable: false,\n\t},\n};\n\nexport const useCasesTableRows: TableRowConfig<{\n\ttitle: string;\n\tnumber: string;\n\tfunction: string;\n\tbusinessProcess: string;\n\taiTechnology: string;\n\tvalueRating: string;\n}>[] = [\n\t{\n\t\trowId: 'xxxx-xxxx-xxxx-xxxx-0',\n\t\tchecked: false,\n\t\texpanded: false,\n\t\tcolumnData: {\n\t\t\ttitle: 'Title',\n\t\t\tnumber: 'Number',\n\t\t\tfunction: 'Function',\n\t\t\tbusinessProcess: 'BusinessProcess',\n\t\t\taiTechnology: 'AiTechnology',\n\t\t\tvalueRating: 'ValueRating',\n\t\t},\n\t},\n];\n","import React, { FC } from 'react';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useTableBodyStyles = createUseThemedStyles({\n\ttableBody: {},\n});\n\nexport const TableBody: FC = ({ children }) => {\n\tconst classes = useTableBodyStyles();\n\n\treturn {children};\n};\n","import React, { FC } from 'react';\nimport { Collapse } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useTableCellStyles = createUseThemedStyles({\n\ttableCell: (props: any) => ({\n\t\tpadding: 0,\n\t\tbackgroundColor: 'inherit',\n\t\t'&.fixed-column': {\n\t\t\tzIndex: 1,\n\t\t\tposition: 'sticky',\n\t\t\tleft: props.fixedOffset ? props.fixedOffset : 0,\n\t\t},\n\t}),\n\ttableCellContent: (props: any) => ({\n\t\toverflow: 'hidden',\n\t\tpadding: '18px 20px',\n\t\ttransition: '0.3s opacity',\n\t\twidth: props.width || 'auto',\n\t\tminWidth: props.minWidth || 'auto',\n\t\topacity: props.expanded ? 1 : 0,\n\t}),\n});\n\ninterface TableCellProps {\n\twidth?: number | string;\n\tminWidth?: number | string;\n\tfixed?: boolean;\n\tfixedOffset?: number;\n\tclassName?: string;\n\tclassNameOuter?: string;\n\texpanded?: boolean;\n\tcolSpan?: number;\n}\n\nexport const TableCell: FC = ({\n\twidth,\n\tminWidth,\n\tfixed,\n\tfixedOffset,\n\tclassName,\n\tclassNameOuter,\n\texpanded = true,\n\tchildren,\n\tcolSpan,\n}) => {\n\tconst classes = useTableCellStyles({\n\t\twidth,\n\t\tminWidth,\n\t\tfixedOffset,\n\t\texpanded,\n\t});\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    {children}
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import { createUseThemedStyles } from '@/hooks';\nimport { cloneDeep } from 'lodash';\nimport React, { useEffect, useState } from 'react';\nimport { Button, Form, Modal, ModalProps } from 'react-bootstrap';\n\nimport { TableColumnConfig, TableColumns } from './models';\n\nconst useStyles = createUseThemedStyles({\n\tdialog: {\n\t\twidth: '90%',\n\t\tmaxWidth: 610,\n\t\tmargin: '0 auto',\n\t},\n});\n\ninterface TableColumnModalProps {\n\ttableColumnData: TableColumns;\n\tonChange(tableColumnData: TableColumns): void;\n}\n\nexport function TableColumnModal({\n\ttableColumnData,\n\tonChange,\n\t...props\n}: TableColumnModalProps & ModalProps) {\n\tconst classes = useStyles();\n\tconst [tableColumns, setTableColumns] = useState>();\n\n\tuseEffect(() => {\n\t\tif (!props.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetTableColumns(tableColumnData);\n\t}, [props.show, tableColumnData]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tShow or Hide Columns\n\t\t\t\n\t\t\t\n\t\t\t\t{tableColumns &&\n\t\t\t\t\tObject.values>(tableColumns).map((tableColumn) => {\n\t\t\t\t\t\tif (!tableColumn.isHidable) {\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tconst tableColumnsClone = cloneDeep(tableColumns);\n\t\t\t\t\t\t\t\t\ttableColumnsClone[tableColumn.columnId].isShowing = event.currentTarget.checked;\n\n\t\t\t\t\t\t\t\t\tsetTableColumns(tableColumnsClone);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t {\n\t\t\t\t\t\t\tif (!tableColumns) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst tableColumnsClone = Object.entries>(tableColumns).reduce(\n\t\t\t\t\t\t\t\t(previous, [columnId, columnConfig]) => {\n\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t...previous,\n\t\t\t\t\t\t\t\t\t\t[columnId]: {\n\t\t\t\t\t\t\t\t\t\t\t...columnConfig,\n\t\t\t\t\t\t\t\t\t\t\tisShowing: columnConfig.isShownByDefault,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{} as TableColumns\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\tonChange(tableColumnsClone);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tReset to default\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tif (!tableColumns) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tonChange(tableColumns);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tSave Columns & Close\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n}\n","import React, { FC } from 'react';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useTableHeadStyles = createUseThemedStyles((theme) => ({\n\ttableHead: {\n\t\t'& tr': {\n\t\t\tborderBottom: `1px solid ${theme.colors.gray200}`,\n\t\t},\n\t},\n}));\n\nexport const TableHead: FC = (props) => {\n\tconst classes = useTableHeadStyles();\n\n\treturn {props.children};\n};\n","var _polygon;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgSortAscend(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 8,\n height: 16,\n viewBox: \"0 0 8 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n fillRule: \"evenodd\",\n points: \"4 7 8 11 0 11\",\n transform: \"matrix(1 0 0 -1 0 18)\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSortAscend);\nexport default __webpack_public_path__ + \"static/media/sort-ascend.c7acd794.svg\";\nexport { ForwardRef as ReactComponent };","var _polygon;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgSortDescend(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 8,\n height: 16,\n viewBox: \"0 0 8 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n fillRule: \"evenodd\",\n points: \"4 5 8 9 0 9\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSortDescend);\nexport default __webpack_public_path__ + \"static/media/sort-descend.c3eb1f25.svg\";\nexport { ForwardRef as ReactComponent };","var _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgSortNone(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 8,\n height: 16,\n viewBox: \"0 0 8 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"polygon\", {\n fill: \"#000\",\n points: \"4 2 8 6 0 6\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n fill: \"#000\",\n points: \"4 10 8 14 0 14\",\n transform: \"matrix(1 0 0 -1 0 24)\"\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSortNone);\nexport default __webpack_public_path__ + \"static/media/sort-none.ead9b6b4.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC } from 'react';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { ReactComponent as SortAscend } from './assets/sort-ascend.svg';\nimport { ReactComponent as SortDescend } from './assets/sort-descend.svg';\nimport { ReactComponent as SortNone } from './assets/sort-none.svg';\n\ninterface UseStyleProps {\n\twidth?: number | string;\n\tfixedOffset?: number;\n\tsortable?: boolean;\n}\n\nconst useTableHeaderStyles = createUseThemedStyles((theme) => ({\n\ttableHeader: ({ width, fixedOffset }: UseStyleProps) => ({\n\t\tpadding: 0,\n\t\tbackgroundColor: theme.colors.white,\n\t\twidth: width ? width : 'auto',\n\t\t'&.fixed-column': {\n\t\t\tzIndex: 1,\n\t\t\tposition: 'sticky',\n\t\t\tleft: fixedOffset ? fixedOffset : 0,\n\t\t},\n\t}),\n\ttableHeaderContent: ({ width, sortable }: UseStyleProps) => ({\n\t\tdisplay: 'flex',\n\t\toverflow: 'hidden',\n\t\talignItems: 'center',\n\t\twhiteSpace: 'nowrap',\n\t\tpadding: '14px 20px',\n\t\tjustifyContent: 'space-between',\n\t\t...(sortable ? { cursor: 'pointer' } : {}),\n\t\twidth: typeof width === 'string' ? 'auto' : width,\n\t}),\n\tsortableIconOuter: {\n\t\tmarginLeft: 16,\n\t},\n\tsortableIcon: {\n\t\tdisplay: 'flex',\n\t},\n}));\n\nexport enum SORT_DIRECTION {\n\tASC = 'ASC',\n\tDESC = 'DESC',\n}\n\ninterface TableHeaderProps {\n\twidth?: number | string;\n\tfixed?: boolean;\n\tfixedOffset?: number;\n\tsortable?: boolean;\n\tsortKey?: string;\n\tsortDirection?: SORT_DIRECTION | null;\n\tonSort?(sortKey: string, sortDirection: SORT_DIRECTION): void;\n\tcolspan?: number;\n\tclassName?: string;\n\tclassNameOuter?: string;\n}\n\nexport const TableHeader: FC = (props) => {\n\tconst classes = useTableHeaderStyles({\n\t\twidth: props.width,\n\t\tfixedOffset: props.fixedOffset,\n\t\tsortable: props.sortable,\n\t});\n\n\tfunction handleSortButtonClick() {\n\t\tif (!props.onSort || !props.sortKey) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (props.sortDirection === SORT_DIRECTION.ASC) {\n\t\t\tprops.onSort(props.sortKey, SORT_DIRECTION.DESC);\n\t\t} else {\n\t\t\tprops.onSort(props.sortKey, SORT_DIRECTION.ASC);\n\t\t}\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.children}\n\t\t\t\t{props.sortable && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{!props.sortDirection && }\n\t\t\t\t\t\t{props.sortDirection === SORT_DIRECTION.ASC && }\n\t\t\t\t\t\t{props.sortDirection === SORT_DIRECTION.DESC && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t\n\t);\n};\n","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconGear(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-gear\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconGear);\nexport default __webpack_public_path__ + \"static/media/icon-gear.942ab870.svg\";\nexport { ForwardRef as ReactComponent };","import { range } from 'lodash';\nimport React, { FC, useCallback, useMemo } from 'react';\nimport { Button, Form } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { Select } from '@/components';\n\nimport { ReactComponent as LeftChevron } from '@/assets/icons/icon-chevron-left.svg';\nimport { ReactComponent as RightChevron } from '@/assets/icons/icon-chevron-right.svg';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles(\n\t(theme) => ({\n\t\tarrowButton: {\n\t\t\twidth: 32,\n\t\t\theight: 24,\n\t\t\tdisplay: 'flex',\n\t\t\talignItems: 'center',\n\t\t\tjustifyContent: 'center',\n\t\t\t'&:disabled': {\n\t\t\t\tbackgroundColor: 'transparent !important',\n\t\t\t},\n\t\t},\n\t\tpaginationButton: {\n\t\t\twidth: 32,\n\t\t\theight: 24,\n\t\t\tdisplay: 'flex',\n\t\t\talignItems: 'center',\n\t\t\tjustifyContent: 'center',\n\t\t\tcolor: `${theme.colors.gray500} !important`,\n\t\t},\n\t\tpaginationButtonActive: {\n\t\t\ttextDecoration: 'underline',\n\t\t\tcolor: `${theme.colors.primary} !important`,\n\t\t},\n\t}),\n\t{ index: 4 }\n);\n\nconst pageSizeOptions = [\n\t{\n\t\tvalue: 5,\n\t\ttitle: '5',\n\t},\n\t{\n\t\tvalue: 10,\n\t\ttitle: '10',\n\t},\n\t{\n\t\tvalue: 15,\n\t\ttitle: '15',\n\t},\n];\n\ninterface TablePaginationProps {\n\tpageSize: number;\n\tpageIndex: number;\n\ttotal: number;\n\tonChange(values: { pageSize: number; pageIndex: number }): void;\n\tshowPageSize?: boolean;\n}\n\nexport const TablePagination: FC = ({\n\tpageSize,\n\tpageIndex,\n\ttotal,\n\tonChange,\n\tshowPageSize = true,\n}) => {\n\tconst classes = useStyles();\n\n\tconst totalPages = Math.ceil(total / pageSize);\n\tconst lastPage = totalPages > 0 ? totalPages - 1 : 0;\n\n\tconst getPageButtonConfig = useCallback(\n\t\t(index: number) => {\n\t\t\treturn {\n\t\t\t\tindex,\n\t\t\t\ttitle: String(index + 1),\n\t\t\t\tisActive: index === pageIndex,\n\t\t\t};\n\t\t},\n\t\t[pageIndex]\n\t);\n\n\tconst pageButtons = useMemo(() => {\n\t\tconst blockSize = 5;\n\t\tconst blockBuffer = 2;\n\t\tconst firstPage = 0;\n\n\t\tif (totalPages <= blockSize) {\n\t\t\treturn range(firstPage, lastPage + 1).map((index) => {\n\t\t\t\treturn getPageButtonConfig(index);\n\t\t\t});\n\t\t}\n\n\t\tconst currentBlock = range(pageIndex - blockBuffer, pageIndex + 1 + blockBuffer);\n\n\t\tif (currentBlock[0] <= firstPage) {\n\t\t\treturn range(firstPage, blockSize + firstPage).map((index) => {\n\t\t\t\treturn getPageButtonConfig(index);\n\t\t\t});\n\t\t}\n\n\t\tif (currentBlock[currentBlock.length - 1] >= lastPage) {\n\t\t\treturn range(lastPage + 1 - blockSize, lastPage + 1).map((index) => {\n\t\t\t\treturn getPageButtonConfig(index);\n\t\t\t});\n\t\t}\n\n\t\treturn currentBlock.map((index) => {\n\t\t\treturn getPageButtonConfig(index);\n\t\t});\n\t}, [getPageButtonConfig, lastPage, pageIndex, totalPages]);\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{showPageSize && (\n\t\t\t\t\t<>\n\t\t\t\t\t\tPage Size\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tonChange({ pageSize: parseInt(event.currentTarget.value, 10), pageIndex: 0 });\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{pageSizeOptions.map((pageSizeOption) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t
    \n\n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tonChange({ pageSize, pageIndex: pageIndex - 1 });\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{pageButtons.map((pageButton) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tonChange({ pageSize, pageIndex: pageButton.index });\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{pageButton.title}\n\t\t\t\t\t\t\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t\t {\n\t\t\t\t\t\tonChange({ pageSize, pageIndex: pageIndex + 1 });\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { FC } from 'react';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\ninterface UseStylesProps {\n\tisLoading?: boolean;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\ttableOuter: ({ isLoading }: UseStylesProps) => ({\n\t\twidth: '100%',\n\t\tborderRadius: 2,\n\t\toverflowX: 'auto',\n\t\topacity: isLoading ? 0.32 : 1,\n\t\tboxShadow: '0 1px 2px 0 rgba(91,103,112,0.1), 0 2px 5px 0 rgba(91,103,112,0.1)',\n\t}),\n\ttable: {\n\t\twidth: '100%',\n\t},\n}));\n\ninterface TableProps {\n\tisLoading?: boolean;\n\tclassName?: string;\n}\n\nexport const Table: FC = ({ isLoading, className, children }) => {\n\tconst classes = useStyles({ isLoading });\n\n\treturn (\n\t\t
    \n\t\t\t{children}
    \n\t\t
    \n\t);\n};\n","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconDownload(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-download\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconDownload);\nexport default __webpack_public_path__ + \"static/media/icon-download.dd049ccb.svg\";\nexport { ForwardRef as ReactComponent };","import Cookies from 'js-cookie';\nimport { v4 as uuid } from 'uuid';\nimport React, { PropsWithChildren, useCallback, useMemo, useRef, useState } from 'react';\nimport { Button, Form } from 'react-bootstrap';\nimport Color from 'color';\n\nimport { COOKIES } from '@/lib/models';\nimport { TableColumnConfig, TableColumns, TableRowConfig, DownloadParametersModel } from './models';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { FadeTransition, Loader } from '@/components';\n\nimport { Table } from './table';\nimport { TableBody } from './table-body';\nimport { TableHead } from './table-head';\nimport { TablePagination } from './table-pagination';\nimport { TableColumnModal } from './table-column-modal';\n\nimport { ReactComponent as GearIcon } from '@/assets/icons/icon-gear.svg';\nimport { ReactComponent as DownloadIcon } from '@/assets/icons/icon-download.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tselectAllAlertOuter: {\n\t\toverflow: 'hidden',\n\t},\n\tselectAllAlert: {\n\t\tpadding: 16,\n\t\tborderRadius: 4,\n\t\tdisplay: 'flex',\n\t\tmarginBottom: 16,\n\t\talignItems: 'center',\n\t\tjustifyContent: 'center',\n\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t.alpha(0.16)\n\t\t\t.string(),\n\t},\n\ttableOuter: {\n\t\tposition: 'relative',\n\t},\n\tloader: {\n\t\ttop: '50%',\n\t\tleft: '50%',\n\t\tposition: 'absolute',\n\t\ttransform: 'translate(-50%, -50%)',\n\t},\n}));\n\ninterface TableCheckboxProps {\n\tid: string;\n\tvalue: string;\n\tchecked: boolean;\n\tlabel: string;\n\tonChange(event: React.ChangeEvent): void;\n\tonClick(event: React.MouseEvent): void;\n}\n\ninterface TableRendererProps {\n\ttableColumnData: TableColumns;\n\tonTableColumnDataChange(tableColumns: TableColumns): void;\n\ttableRowData: TableRowConfig[];\n\tonTableRowDataChange(tableRowData: TableRowConfig[]): void;\n\ttableSelectAll?: boolean;\n\tonTableSelectAllChange?(value: boolean): void;\n\tdownloadUrl?: string;\n\tsetUncheckedRowsIds?(value: string[]): void;\n\tuncheckedRowsIds?: string[];\n\tsetCheckedRowsIds?(value: string[]): void;\n\tcheckedRowsIds?: string[];\n\tdownloadData?: DownloadParametersModel;\n\ttableHeaderRowRenderer(checkboxProps: TableCheckboxProps, clearSelections: () => void): JSX.Element | null;\n\ttableBodyRowRenderer(\n\t\tdata: TableRowConfig,\n\t\tcheckboxProps: TableCheckboxProps\n\t): JSX.Element | null;\n\tisLoading?: boolean;\n\tpageSize: number;\n\tpageIndex: number;\n\ttableRowDataTotal: number;\n\tonPaginationChange(values: { pageSize: number; pageIndex: number }): void;\n\thidePagination?: boolean;\n\thideColumnControls?: boolean;\n\tclassName?: string;\n}\n\nexport function TableRenderer({\n\ttableColumnData,\n\tonTableColumnDataChange,\n\ttableRowData,\n\tonTableRowDataChange,\n\ttableSelectAll,\n\tonTableSelectAllChange,\n\tdownloadUrl,\n\tdownloadData,\n\tsetUncheckedRowsIds,\n\tuncheckedRowsIds,\n\tsetCheckedRowsIds,\n\tcheckedRowsIds,\n\ttableHeaderRowRenderer,\n\ttableBodyRowRenderer,\n\tisLoading,\n\tpageSize,\n\tpageIndex,\n\ttableRowDataTotal,\n\tonPaginationChange,\n\thidePagination = false,\n\thideColumnControls = false,\n\tclassName,\n\tchildren,\n}: PropsWithChildren>) {\n\tconst classes = useStyles();\n\tconst tableId = useRef(uuid());\n\tconst [showTableColumnModal, setShowTableColumnModal] = useState(false);\n\tconst [selectAll, setSelectAll] = useState(false);\n\tconst [downloadLength, setDownloadLength] = useState(0);\n\tconst [pageChanges, setPageChanges] = useState(false);\n\n\tconst clearSelections = useCallback(() => {\n\n\t\tconst tableRowsDataClone = tableRowData.map((row) => {\n\t\t\trow.checked = false;\n\t\t\treturn row;\n\t\t});\n\t\tsetDownloadLength(0);\n\t\tsetUncheckedRowsIds?.([]);\n\t\tsetCheckedRowsIds?.([]);\n\t\tonTableRowDataChange(tableRowsDataClone);\n\t\tsetSelectAll(false);\n\t\tif (onTableSelectAllChange) {\n\t\t\tonTableSelectAllChange(false);\n\t\t}\n\t}, [onTableRowDataChange, onTableSelectAllChange, tableRowData, setUncheckedRowsIds, setCheckedRowsIds]);\n\n\tconst selectAllOnChange = useCallback(\n\t\t(event: React.ChangeEvent) => {\n\t\t\tonTableRowDataChange(\n\t\t\t\ttableRowData.map((row) => {\n\t\t\t\t\trow.checked = event.currentTarget.checked;\n\t\t\t\t\treturn row;\n\t\t\t\t})\n\t\t\t);\n\t\t\tsetPageChanges(false);\n\t\t\tconst selectAllCurrentPage = tableRowData.map(a => a.rowId);\n\t\t\tonTableSelectAllChange?.(false);\n\t\t\tsetSelectAll(event.currentTarget.checked);\n\t\t\tsetCheckedRowsIds?.(selectAllCurrentPage);\n\t\t\tsetUncheckedRowsIds?.([]);\n\t\t\tsetDownloadLength(tableRowData.length);\n\t\t\tif (!event.currentTarget.checked) {\n\t\t\t\tclearSelections();\n\t\t\t}\n\t\t},\n\t\t[clearSelections, onTableRowDataChange, tableRowData, onTableSelectAllChange, setUncheckedRowsIds, setCheckedRowsIds]\n\t);\n\n\tconst rowSelectOnChange = useCallback(\n\t\t(event: React.ChangeEvent) => {\n\t\t\tconst { value, checked } = event.currentTarget;\n\t\t\tif (downloadLength > tableRowData.length + 1 && downloadLength === tableRowDataTotal) {\n\t\t\t\tonTableSelectAllChange?.(true);\n\t\t\t}\n\n\t\t\telse if (downloadLength !== tableRowDataTotal) {\n\t\t\t\tonTableSelectAllChange?.(false);\n\t\t\t}\n\t\t\tconst tableRowsDataClone = tableRowData.map((row) => {\n\t\t\t\tif (row.rowId === value) {\n\t\t\t\t\tif (row.checked && downloadLength >= 0) {\n\t\t\t\t\t\tif (!(uncheckedRowsIds?.includes(value)) && tableSelectAll) {\n\t\t\t\t\t\t\tsetUncheckedRowsIds?.([...uncheckedRowsIds!, value]);\n\t\t\t\t\t\t\tonTableSelectAllChange?.(true);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetCheckedRowsIds?.(checkedRowsIds?.filter(element => element !== value)!);\n\t\t\t\t\t\tsetDownloadLength(downloadLength - 1);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (uncheckedRowsIds?.includes(value) && tableSelectAll) {\n\t\t\t\t\t\t\tsetUncheckedRowsIds?.(uncheckedRowsIds?.filter(element => element !== value)!);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetCheckedRowsIds?.([...checkedRowsIds!, value]);\n\t\t\t\t\t\tsetDownloadLength(downloadLength + 1);\n\t\t\t\t\t}\n\t\t\t\t\trow.checked = checked;\n\n\t\t\t\t}\n\n\n\t\t\t\treturn row;\n\t\t\t});\n\t\t\tconst allAreChecked = tableRowsDataClone.every((row) => {\n\t\t\t\treturn row.checked;\n\t\t\t});\n\n\t\t\tif (allAreChecked) {\n\t\t\t\tsetSelectAll(true);\n\t\t\t} else {\n\t\t\t\tsetSelectAll(false);\n\t\t\t}\n\t\t\tonTableRowDataChange(tableRowsDataClone);\n\t\t},\n\t\t[tableRowData, onTableRowDataChange, setDownloadLength, downloadLength, tableSelectAll, onTableSelectAllChange, setUncheckedRowsIds, uncheckedRowsIds, checkedRowsIds, setCheckedRowsIds, tableRowDataTotal]\n\t);\n\n\tconst selectAllCheckboxProps = useMemo((): TableCheckboxProps => {\n\t\treturn {\n\t\t\tid: `table-head__checkbox--${tableId.current}`,\n\t\t\tvalue: 'SELECT_ALL',\n\t\t\tchecked: selectAll || false,\n\t\t\tlabel: '',\n\t\t\tonChange: selectAllOnChange,\n\t\t\tonClick: (event) => {\n\t\t\t\tevent.stopPropagation();\n\t\t\t},\n\t\t};\n\t}, [selectAll, selectAllOnChange]);\n\n\tconst tableRowCheckboxProps = useMemo(() => {\n\t\treturn (data: TableRowConfig): TableCheckboxProps => ({\n\t\t\tid: `table-row__checkbox--${data.rowId}`,\n\t\t\tvalue: data.rowId,\n\t\t\tchecked: data.checked,\n\t\t\tlabel: '',\n\t\t\tonChange: rowSelectOnChange,\n\t\t\tonClick: (event) => {\n\t\t\t\tevent.stopPropagation();\n\t\t\t},\n\t\t});\n\t}, [rowSelectOnChange]);\n\n\tconst hideableColumnLength = useMemo(() => {\n\t\treturn Object.values>(tableColumnData).filter((tableColumn) => {\n\t\t\treturn tableColumn.isHidable;\n\t\t}).length;\n\t}, [tableColumnData]);\n\n\n\treturn (\n\t\t
    \n\t\t\t {\n\t\t\t\t\tsetShowTableColumnModal(false);\n\t\t\t\t\tonTableColumnDataChange(updatedTableColumnData);\n\t\t\t\t}}\n\t\t\t\tonHide={() => {\n\t\t\t\t\tsetShowTableColumnModal(false);\n\t\t\t\t}}\n\t\t\t/>\n\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tAll {tableRowDataTotal} items are selected.\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t 0 && downloadLength === tableRowData.length && !tableSelectAll && !pageChanges}\n\t\t\t>\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tAll {downloadLength} items on this page are selected.\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tif (onTableSelectAllChange) {\n\t\t\t\t\t\t\t\t\tonTableSelectAllChange(true);\n\t\t\t\t\t\t\t\t\tsetDownloadLength(tableRowDataTotal)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tSelect all {tableRowDataTotal} items\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\n\t\t\t{(downloadUrl || hideableColumnLength > 0) && (\n\t\t\t\t
    \n\t\t\t\t\t
    {children}
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t{downloadUrl && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t{downloadData &&\n\t\t\t\t\t\t\t\t\tObject.entries(downloadData).map(([key, value], index) => {\n\t\t\t\t\t\t\t\t\t\tswitch (typeof value) {\n\t\t\t\t\t\t\t\t\t\t\tcase 'boolean':\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\tcase 'string':\n\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t})}\n\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tDownload Selected (\n\t\t\t\t\t\t\t\t\t{<>{downloadLength}})\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{hideableColumnLength > 0 && !hideColumnControls && (\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetShowTableColumnModal(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tEdit Table Columns\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t)}\n\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{tableHeaderRowRenderer(selectAllCheckboxProps, clearSelections)}\n\t\t\t\t\t\n\t\t\t\t\t\t{tableRowData.map((trd) => {\n\t\t\t\t\t\t\treturn tableBodyRowRenderer(trd, tableRowCheckboxProps(trd));\n\t\t\t\t\t\t})}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t{isLoading && }\n\t\t\t
    \n\n\t\t\t{!hidePagination && (\n\t\t\t\t {\n\t\t\t\t\t\tonPaginationChange(values);\n\t\t\t\t\t\tsetPageChanges(true);\n\t\t\t\t\t\tdownloadLength === tableRowData.length && setSelectAll?.(false);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t)}\n\t\t
    \n\t);\n\n}\n","import React, { FC } from 'react';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\ttableRow: ({ canClick }: { canClick: boolean }) => ({\n\t\tbackgroundColor: theme.colors.white,\n\t\tcursor: canClick ? 'pointer' : 'default',\n\t\t'&:hover': {\n\t\t\tbackgroundColor: canClick ? theme.colors.gray200 : theme.colors.white,\n\t\t},\n\t\t'&:nth-child(odd)': {\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t\t'&:hover': {\n\t\t\t\tbackgroundColor: canClick ? theme.colors.gray200 : theme.colors.gray100,\n\t\t\t},\n\t\t},\n\t\t'&:active': {\n\t\t\tbackgroundColor: canClick ? theme.colors.gray300 : theme.colors.white,\n\t\t},\n\t}),\n}));\n\ninterface TableRowProps {\n\tclassName?: string;\n\tonClick?(event: React.MouseEvent): void;\n}\n\nexport const TableRow: FC = ({ className, onClick, children }) => {\n\tconst classes = useStyles({\n\t\tcanClick: onClick ? true : false,\n\t});\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconTrash(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-trash-fill\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.5 1a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1H3v9a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V4h.5a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H10a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1H2.5zm3 4a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 .5-.5zM8 5a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-1 0v-7A.5.5 0 0 1 8 5zm3 .5v7a.5.5 0 0 1-1 0v-7a.5.5 0 0 1 1 0z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconTrash);\nexport default __webpack_public_path__ + \"static/media/icon-trash.f1938ca5.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC } from 'react';\nimport { Form } from 'react-bootstrap';\nimport { Select } from '@/components';\nimport { FormOption } from '@/lib/models';\nimport { TableSelectedFilterModel } from '@/components/table/models';\n\ninterface dropdownFilterProps {\n\tfilterLabel: string;\n\tfilterKey: string;\n\ttableFilters: FormOption[];\n\tselectedFilters: TableSelectedFilterModel;\n\tupdateFilterSelection(key: string, value: string): void;\n\tallowAny?: boolean;\n\tdisabled?: boolean;\n}\n\nexport const TableFilterDropdown: FC = ({\n\tfilterLabel,\n\tfilterKey,\n\ttableFilters,\n\tselectedFilters,\n\tupdateFilterSelection,\n\tallowAny = true,\n\tdisabled,\n}) => {\n\treturn (\n\t\t\n\t\t\t{filterLabel}\n\t\t\t {\n\t\t\t\t\tupdateFilterSelection(filterKey, currentTarget.value);\n\t\t\t\t}}\n\t\t\t\tdisabled={disabled}\n\t\t\t>\n\t\t\t\t{allowAny && }\n\t\t\t\t{tableFilters.map((filter) => (\n\t\t\t\t\t\n\t\t\t\t))}\n\t\t\t\n\t\t\n\t);\n};\n","var _polygon;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconChevronDown(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 10,\n height: 10,\n viewBox: \"0 0 10 10\",\n fill: \"currentColor\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n fillRule: \"evenodd\",\n points: \"5 8.429 0 3.429 1.429 2 5 5.571 8.571 2 10 3.429\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconChevronDown);\nexport default __webpack_public_path__ + \"static/media/icon-chevron-down.e93cba4a.svg\";\nexport { ForwardRef as ReactComponent };","import Cookies from 'js-cookie';\nimport { cloneDeep } from 'lodash';\nimport React, { useState } from 'react';\nimport { Button, Form, Modal, ModalProps } from 'react-bootstrap';\n\nimport config from '@/lib/config';\nimport { contactsTableColumns, contactsTableHeaders, CONTACTS_TABLE_COLUMN_IDS } from '@/lib/__mocks__';\nimport { AccountModel, COOKIES, UnmatchedAccountModel } from '@/lib/models';\nimport { TableRowConfig } from '@/components/table/models';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { TableCell, TableHeader, TableRenderer, TableRow } from '@/components/table';\n\nimport { ReactComponent as DownloadIcon } from '@/assets/icons/icon-download.svg';\nimport { ReactComponent as TrashIcon } from '@/assets/icons/icon-trash.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdialog: {\n\t\twidth: '90%',\n\t\theight: '100%',\n\t\tmaxWidth: 1240,\n\t\tmargin: '0 auto',\n\t\t'& .modal-content': {\n\t\t\tmaxHeight: '90vh',\n\t\t},\n\t\t'& .hackett-modal__body': {\n\t\t\toverflowY: 'auto',\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t},\n\t},\n}));\n\ninterface DeliverablesContactsModalProps extends ModalProps {\n\tfileName: string;\n\tunmatchedContacts: UnmatchedAccountModel[];\n\tmatchedContacts: AccountModel[];\n\tonSave(selectedContacts: AccountModel[]): void;\n}\n\nexport const DeliverablesContactsModal = ({\n\tfileName,\n\tunmatchedContacts,\n\tmatchedContacts,\n\tonSave,\n\t...props\n}: DeliverablesContactsModalProps) => {\n\tconst classes = useStyles();\n\n\tconst [tableIsLoading] = useState(false);\n\tconst [tablePageSize] = useState(1000);\n\tconst [tablePageIndex] = useState(0);\n\tconst [tableColumnsData, setTableColumnsData] = useState(contactsTableColumns);\n\tconst [tableHeadersData] = useState(contactsTableHeaders);\n\n\tconst [unmatchedContactsRowData, setUnmatchedContactsRowData] = useState[]>(\n\t\t[]\n\t);\n\tconst [matchedContactsRowData, setMatchedContactsRowData] = useState[]>([]);\n\n\tconst handleOnEnter = () => {\n\t\tconst formattedUnmatchedContacts = unmatchedContacts.map((uc, ucIndex) => {\n\t\t\treturn {\n\t\t\t\trowId: String(ucIndex),\n\t\t\t\tchecked: false,\n\t\t\t\texpanded: false,\n\t\t\t\tcolumnData: uc,\n\t\t\t};\n\t\t});\n\n\t\tconst formattedMatchedContacts = matchedContacts.map((mc) => {\n\t\t\treturn {\n\t\t\t\trowId: mc.accountId,\n\t\t\t\tchecked: false,\n\t\t\t\texpanded: false,\n\t\t\t\tcolumnData: mc,\n\t\t\t};\n\t\t});\n\n\t\tsetUnmatchedContactsRowData(formattedUnmatchedContacts);\n\t\tsetMatchedContactsRowData(formattedMatchedContacts);\n\t};\n\n\tconst handleUnmatchedContactDeleteButtonClick = (rowData: TableRowConfig) => {\n\t\tif (\n\t\t\t!window.confirm(\n\t\t\t\t'Are you sure you want to remove this unmatched contact? They will no longer appear in the downloaded CSV of unmatched contacts.'\n\t\t\t)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst unmatchedContactsRowDataClone = cloneDeep(unmatchedContactsRowData);\n\t\tconst indexToRemove = unmatchedContactsRowDataClone.findIndex((rd) => rd.rowId === rowData.rowId);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tunmatchedContactsRowDataClone.splice(indexToRemove, 1);\n\t\t}\n\n\t\tsetUnmatchedContactsRowData(unmatchedContactsRowDataClone);\n\t};\n\n\tconst handleMatchedContactDeleteButtonClick = (rowData: TableRowConfig) => {\n\t\tif (!window.confirm('Are you sure you want to remove this matched contact? They will no longer be imported.')) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst matchedContactsRowDataClone = cloneDeep(matchedContactsRowData);\n\t\tconst indexToRemove = matchedContactsRowDataClone.findIndex((rd) => rd.rowId === rowData.rowId);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tmatchedContactsRowDataClone.splice(indexToRemove, 1);\n\t\t}\n\n\t\tsetMatchedContactsRowData(matchedContactsRowDataClone);\n\t};\n\n\tconst handleImportButtonClick = () => {\n\t\tonSave(matchedContactsRowData.map((rd) => rd.columnData));\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tImport Contacts ({fileName})\n\t\t\t\n\t\t\t\n\t\t\t\t{unmatchedContactsRowData.length > 0 && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t

    Warning: unmatched contacts

    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tSome contacts could not be matched to any existing user in our database.\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\thidePagination={true}\n\t\t\t\t\t\t\thideColumnControls={true}\n\t\t\t\t\t\t\ttableHeaderRowRenderer={() => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeaderProps = {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tsortable: false,\n\t\t\t\t\t\t\t\t\t\t\t\tsortKey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.DELIVERED:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttableBodyRowRenderer={(data) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.COMPANY:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.company}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.NAME:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.userName}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.TITLE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.EMAIL:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.email}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.PHONE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.phone}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.DELIVERED:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleUnmatchedContactDeleteButtonClick(data);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn -;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    Unmatched Contacts ({unmatchedContactsRowData.length})

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tDownload\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\n\t\t\t\t {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}}\n\t\t\t\t\thidePagination={true}\n\t\t\t\t\thideColumnControls={true}\n\t\t\t\t\ttableHeaderRowRenderer={() => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\t\t\t\t\t\t\t\t\tconst tableHeaderProps = {\n\t\t\t\t\t\t\t\t\t\tkey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\tsortable: false,\n\t\t\t\t\t\t\t\t\t\tsortKey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.DELIVERED:\n\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\treturn {tableHeader.title};\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\t}}\n\t\t\t\t\ttableBodyRowRenderer={(data) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.COMPANY:\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.clientName ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.NAME:\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.name ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.TITLE:\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.title ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.EMAIL:\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.emailAddress ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.PHONE:\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.mobileNumber ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.DELIVERED:\n\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleMatchedContactDeleteButtonClick(data);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\treturn -;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Matched Contacts ({matchedContactsRowData.length})

    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Button, Form, FormCheckProps } from 'react-bootstrap';\nimport Color from 'color';\n\nimport { DOCUMENT_FILE_TYPES } from '@/lib/models';\nimport { createUseThemedStyles, useGetIconForFileType } from '@/hooks';\nimport { ReactComponent as TrashIcon } from '@/assets/icons/icon-trash.svg';\n\ninterface useStylesProps {\n\tchecked: boolean;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdeliverablesDocumentListItem: ({ checked }: useStylesProps) => ({\n\t\tdisplay: 'flex',\n\t\tpadding: '20px 16px',\n\t\talignItems: 'stretch',\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\tbackgroundColor: checked\n\t\t\t? Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.08)\n\t\t\t\t\t.string()\n\t\t\t: 'transparent',\n\t}),\n\tdocumentInformation: {\n\t\tflex: 1,\n\t},\n\tfileIcon: {\n\t\tmarginTop: -3.5,\n\t\tmarginRight: 8,\n\t},\n}));\n\ninterface DeliverablesDocumentListItemProps {\n\tshowCheck?: boolean;\n\tcheckboxProps?: FormCheckProps;\n\ttitle: string;\n\tsubmissionDate: string;\n\tfileType?: DOCUMENT_FILE_TYPES;\n\tfileName: string;\n\tshowRemove?: boolean;\n\tonRemove?(event: React.MouseEvent): void;\n}\n\nexport const DeliverablesDocumentListItem = ({\n\tshowCheck,\n\tcheckboxProps,\n\ttitle,\n\tsubmissionDate,\n\tfileType,\n\tfileName,\n\tshowRemove,\n\tonRemove,\n}: DeliverablesDocumentListItemProps) => {\n\tconst classes = useStyles({\n\t\tchecked: checkboxProps?.checked ?? false,\n\t});\n\n\tconst getIconForFileType = useGetIconForFileType(classes.fileIcon, fileType);\n\n\treturn (\n\t\t
    \n\t\t\t{showCheck && (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t)}\n\t\t\t
    \n\t\t\t\t

    {title}

    \n\t\t\t\t

    Submitted {submissionDate}

    \n\t\t\t\t

    \n\t\t\t\t\t{getIconForFileType}\n\t\t\t\t\t{fileName}\n\t\t\t\t

    \n\t\t\t
    \n\t\t\t{showRemove && (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t)}\n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { DOCUMENT_FILE_TYPES } from '@/lib/models';\nimport classNames from 'classnames';\n\nimport { ReactComponent as WordIcon } from '@/assets/icons/icon-file-word.svg';\nimport { ReactComponent as PdfIcon } from '@/assets/icons/icon-file-pdf.svg';\nimport { ReactComponent as PowerpointIcon } from '@/assets/icons/icon-file-powerpoint.svg';\nimport { ReactComponent as TextIcon } from '@/assets/icons/icon-file-text.svg';\nimport { ReactComponent as VideoIcon } from '@/assets/icons/icon-file-video.svg';\nimport { ReactComponent as ExcelIcon } from '@/assets/icons/icon-file-excel.svg';\nimport { ReactComponent as ZipIcon } from '@/assets/icons/icon-file-zip.svg';\n\nexport const useGetIconForFileType = (className?: string, fileType?: string) => {\n\tswitch (fileType) {\n\t\tcase DOCUMENT_FILE_TYPES.DOCX:\n\t\t\treturn ;\n\t\tcase DOCUMENT_FILE_TYPES.PDF:\n\t\t\treturn ;\n\t\tcase DOCUMENT_FILE_TYPES.PPTX:\n\t\t\treturn ;\n\t\tcase DOCUMENT_FILE_TYPES.TXT:\n\t\t\treturn ;\n\t\tcase DOCUMENT_FILE_TYPES.VIDEO_LINK:\n\t\t\treturn ;\n\t\tcase DOCUMENT_FILE_TYPES.XLSX:\n\t\t\treturn ;\n\t\tcase DOCUMENT_FILE_TYPES.ZIP:\n\t\t\treturn ;\n\t\tdefault:\n\t\t\treturn null;\n\t}\n};\n","import { format } from 'date-fns';\nimport { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { Button, Card, Col, Form, Modal, ModalProps, Row } from 'react-bootstrap';\n\nimport { DocumentModel, FormOption } from '@/lib/models';\nimport { documentService } from '@/lib/services';\nimport { createUseThemedStyles, useDebouncedState, useHandleError } from '@/hooks';\nimport { DateInput, DeliverablesDocumentListItem, Loader, SearchInput, Select } from '@/components';\nimport { TablePagination } from './table';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdialog: {\n\t\twidth: '90%',\n\t\theight: '100%',\n\t\tmaxWidth: 1240,\n\t\tmargin: '0 auto',\n\t\t'& .modal-content': {\n\t\t\tmaxHeight: '90vh',\n\t\t},\n\t\t'& .hackett-modal__body': {\n\t\t\toverflowY: 'auto',\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t},\n\t},\n}));\n\nconst initialFilterValues = {\n\tlink: '',\n\tfromDate: null as null | Date,\n\ttoDate: null as null | Date,\n\tdocumentType: '',\n};\n\ninterface DeliverablesDocumentModalProps extends ModalProps {\n\tvalue: DocumentModel[];\n\tonSave(selectedDocuments: DocumentModel[]): void;\n}\n\nexport const DeliverablesDocumentModal = ({ value, onSave, ...props }: DeliverablesDocumentModalProps) => {\n\tconst handleError = useHandleError();\n\tconst classes = useStyles();\n\tconst [searchValue, setSearchValue] = useState('');\n\tconst debouncedSearchValue = useDebouncedState(searchValue);\n\tconst [sortOptions, setSortOptions] = useState([]);\n\tconst [documentTypes, setDocumentTypes] = useState([]);\n\tconst [filterValues, setFilterValues] = useState(initialFilterValues);\n\tconst [appliedFilters, setAppliedFilters] = useState(initialFilterValues);\n\n\tconst pageSize = useRef(4);\n\tconst page = useRef(0);\n\tconst [sortField, setSortField] = useState('');\n\tconst [documents, setDocuments] = useState([]);\n\tconst [totalDocuments, setTotalDocuments] = useState(0);\n\tconst [selectedDocuments, setSelectedDocuments] = useState([]);\n\tconst [isLoading, setIsLoading] = useState(false);\n\n\tconst fetchDocumentTypes = useCallback(async () => {\n\t\ttry {\n\t\t\tconst filtersResponse = await documentService.getDocumentFilters().fetch();\n\n\t\t\tsetSortOptions(filtersResponse.sortFields);\n\t\t\tsetDocumentTypes(filtersResponse.contentTypes);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError]);\n\n\tconst fetchDocuments = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\n\t\t\tconst response = await documentService\n\t\t\t\t.getDocuments({\n\t\t\t\t\tpage: String(page.current),\n\t\t\t\t\tsize: String(pageSize.current),\n\t\t\t\t\t...(debouncedSearchValue && { searchQuery: debouncedSearchValue }),\n\t\t\t\t\t...(sortField && { sortField }),\n\t\t\t\t\t...(appliedFilters.link && { link: appliedFilters.link }),\n\t\t\t\t\t...(appliedFilters.fromDate && {\n\t\t\t\t\t\tfromDate: format(appliedFilters.fromDate, 'yyyy-MM-dd'),\n\t\t\t\t\t}),\n\t\t\t\t\t...(appliedFilters.toDate && {\n\t\t\t\t\t\ttoDate: format(appliedFilters.toDate, 'yyyy-MM-dd'),\n\t\t\t\t\t}),\n\t\t\t\t\t...(appliedFilters.documentType && { documentTypes: [appliedFilters.documentType] }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\t\t\tsetDocuments(response.documents);\n\t\t\tsetTotalDocuments(response.totalCount);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t}, [\n\t\tappliedFilters.documentType,\n\t\tappliedFilters.fromDate,\n\t\tappliedFilters.link,\n\t\tappliedFilters.toDate,\n\t\tdebouncedSearchValue,\n\t\thandleError,\n\t\tsortField,\n\t]);\n\n\tuseEffect(() => {\n\t\tpage.current = 0;\n\t}, [debouncedSearchValue]);\n\n\tconst handleEnter = useCallback(() => {\n\t\tsetSearchValue('');\n\t\tsetSortField('');\n\t\tpage.current = 0;\n\t\tsetFilterValues(initialFilterValues);\n\t\tsetAppliedFilters(initialFilterValues);\n\n\t\tfetchDocumentTypes();\n\t\tsetSelectedDocuments(value);\n\t}, [fetchDocumentTypes, value]);\n\n\tuseEffect(() => {\n\t\tif (props.show) {\n\t\t\tfetchDocuments();\n\t\t}\n\t}, [fetchDocuments, props.show]);\n\n\tconst handleDocumentListItemChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tconst selectedDocumentsClone = cloneDeep(selectedDocuments);\n\t\tconst indexToRemove = selectedDocumentsClone.findIndex((d) => d.documentId === currentTarget.value);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tselectedDocumentsClone.splice(indexToRemove, 1);\n\t\t} else {\n\t\t\tconst documentToAdd = documents.find((d) => d.documentId === currentTarget.value);\n\t\t\tif (documentToAdd) {\n\t\t\t\tselectedDocumentsClone.push(documentToAdd);\n\t\t\t}\n\t\t}\n\n\t\tsetSelectedDocuments(selectedDocumentsClone);\n\t};\n\n\tconst handlePaginationChange = ({ pageIndex }: { pageIndex: number }) => {\n\t\tpage.current = pageIndex;\n\t\tfetchDocuments();\n\t};\n\n\tconst handleClearButtonClick = () => {\n\t\tpage.current = 0;\n\t\tsetFilterValues(initialFilterValues);\n\t\tsetAppliedFilters(initialFilterValues);\n\t};\n\n\tconst handleApplyFiltersButtonClick = (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\n\t\tpage.current = 0;\n\t\tsetAppliedFilters(filterValues);\n\t};\n\n\tconst handleAddSelectedButtonClick = () => {\n\t\tonSave(selectedDocuments);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tAdd Documents\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetSearchValue(currentTarget.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t{selectedDocuments.length > 0 ? (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{selectedDocuments.length} Selected{' '}\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedDocuments([]);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tClear Selections\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t`Documents (${totalDocuments})`\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t{isLoading && }\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tSort By\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tpage.current = 0;\n\t\t\t\t\t\t\t\t\t\tsetSortField(currentTarget.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{sortOptions.map((o) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{!isLoading && documents.length <= 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{documents.map((document) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t d.documentId === document.documentId\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tonChange: handleDocumentListItemChange,\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{documents.length > 0 && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tLink\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tlink: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tFrom Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfromDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTo Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttoDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tDocument Type\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tdocumentType: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{documentTypes.map((dt) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Button, Form, FormCheckProps } from 'react-bootstrap';\nimport LinesEllipsis from 'react-lines-ellipsis';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as TrashIcon } from '@/assets/icons/icon-trash.svg';\n\ninterface useStylesProps {\n\tchecked: boolean;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdeliverablesEntryListItem: ({ checked }: useStylesProps) => ({\n\t\tdisplay: 'flex',\n\t\tpadding: '20px 16px',\n\t\talignItems: 'stretch',\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\tbackgroundColor: checked\n\t\t\t? Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.08)\n\t\t\t\t\t.string()\n\t\t\t: 'transparent',\n\t}),\n\tdocumentInformation: {\n\t\tflex: 1,\n\t},\n}));\n\ninterface DeliverablesEntryListItemProps {\n\tshowCheck?: boolean;\n\tcheckboxProps?: FormCheckProps;\n\tid: string;\n\ttitle: string;\n\tdescription: string;\n\tdate: string;\n\ttopic: string;\n\tshowRemove?: boolean;\n\tonRemove?(event: React.MouseEvent): void;\n}\n\nconst ResponsiveEllipsis = responsiveHOC()(LinesEllipsis);\n\nexport const DeliverablesEntryListItem = ({\n\tid,\n\tshowCheck,\n\tcheckboxProps,\n\ttitle,\n\tdescription,\n\tdate,\n\ttopic,\n\tshowRemove,\n\tonRemove,\n}: DeliverablesEntryListItemProps) => {\n\tconst classes = useStyles({\n\t\tchecked: checkboxProps?.checked ?? false,\n\t});\n\n\treturn (\n\t\t
    \n\t\t\t{showCheck && (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t)}\n\t\t\t
    \n\t\t\t\t

    {title}

    \n\t\t\t\t\n\t\t\t\t

    \n\t\t\t\t\t{date} • {topic}\n\t\t\t\t

    \n\t\t\t
    \n\t\t\t{showRemove && (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t)}\n\t\t
    \n\t);\n};\n","import { format } from 'date-fns';\nimport { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { Button, Card, Col, Form, Modal, ModalProps, Row } from 'react-bootstrap';\n\nimport { EventModel, FormOption } from '@/lib/models';\nimport { eventsService } from '@/lib/services';\nimport { createUseThemedStyles, useDebouncedState, useHandleError } from '@/hooks';\nimport { DateInput, DeliverablesEntryListItem, Loader, SearchInput, Select } from '@/components';\nimport { TablePagination } from '@/components/table';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdialog: {\n\t\twidth: '90%',\n\t\theight: '100%',\n\t\tmaxWidth: 1240,\n\t\tmargin: '0 auto',\n\t\t'& .modal-content': {\n\t\t\tmaxHeight: '90vh',\n\t\t},\n\t\t'& .hackett-modal__body': {\n\t\t\toverflowY: 'auto',\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t},\n\t},\n}));\n\nconst initialFilterValues = {\n\tfromDate: null as null | Date,\n\ttoDate: null as null | Date,\n};\n\ninterface DeliverablesEntryModalProps extends ModalProps {\n\tvalue: EventModel[];\n\tonSave(selectedEntries: EventModel[]): void;\n}\n\nexport const DeliverablesEntryModal = ({ value, onSave, ...props }: DeliverablesEntryModalProps) => {\n\tconst handleError = useHandleError();\n\tconst classes = useStyles();\n\tconst [searchValue, setSearchValue] = useState('');\n\tconst debouncedSearchValue = useDebouncedState(searchValue);\n\tconst [sortOptions, setSortOptions] = useState([]);\n\tconst [filterValues, setFilterValues] = useState(initialFilterValues);\n\tconst [appliedFilters, setAppliedFilters] = useState(initialFilterValues);\n\n\tconst pageSize = useRef(4);\n\tconst page = useRef(0);\n\tconst [sortField, setSortField] = useState('');\n\tconst [entries, setEntries] = useState([]);\n\tconst [totalEntries, setTotalEntries] = useState(0);\n\tconst [selectedEntries, setSelectedEntries] = useState([]);\n\tconst [isLoading, setIsLoading] = useState(false);\n\n\tconst fetchSortOptions = useCallback(async () => {\n\t\ttry {\n\t\t\tconst response = await eventsService.getEventFilters().fetch();\n\t\t\tsetSortOptions(response.sortFields);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError]);\n\n\tconst fetchEntries = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\n\t\t\tconst response = await eventsService\n\t\t\t\t.getAllEvents({\n\t\t\t\t\t...(debouncedSearchValue && { searchQuery: debouncedSearchValue }),\n\t\t\t\t\t...(sortField && { sortField }),\n\t\t\t\t\tpage: String(page.current),\n\t\t\t\t\tsize: pageSize.current,\n\t\t\t\t\t...(appliedFilters.fromDate && {\n\t\t\t\t\t\tstart: format(appliedFilters.fromDate, 'yyyy-MM-dd'),\n\t\t\t\t\t}),\n\t\t\t\t\t...(appliedFilters.toDate && {\n\t\t\t\t\t\tend: format(appliedFilters.toDate, 'yyyy-MM-dd'),\n\t\t\t\t\t}),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetEntries(response.events);\n\t\t\tsetTotalEntries(response.totalCount);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t}, [appliedFilters.fromDate, appliedFilters.toDate, debouncedSearchValue, handleError, sortField]);\n\n\tuseEffect(() => {\n\t\tpage.current = 0;\n\t}, [debouncedSearchValue]);\n\n\tconst handleEnter = useCallback(() => {\n\t\tsetSearchValue('');\n\t\tsetSortField('');\n\t\tpage.current = 0;\n\t\tsetFilterValues(initialFilterValues);\n\t\tsetAppliedFilters(initialFilterValues);\n\n\t\tfetchSortOptions();\n\t\tsetSelectedEntries(value);\n\t}, [fetchSortOptions, value]);\n\n\tuseEffect(() => {\n\t\tif (props.show) {\n\t\t\tfetchEntries();\n\t\t}\n\t}, [fetchEntries, props.show]);\n\n\tconst handleDocumentListItemChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tconst selectedEntriesClone = cloneDeep(selectedEntries);\n\t\tconst indexToRemove = selectedEntriesClone.findIndex((e) => e.eventId === currentTarget.value);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tselectedEntriesClone.splice(indexToRemove, 1);\n\t\t} else {\n\t\t\tconst documentToAdd = entries.find((e) => e.eventId === currentTarget.value);\n\t\t\tif (documentToAdd) {\n\t\t\t\tselectedEntriesClone.push(documentToAdd);\n\t\t\t}\n\t\t}\n\n\t\tsetSelectedEntries(selectedEntriesClone);\n\t};\n\n\tconst handlePaginationChange = ({ pageIndex }: { pageIndex: number }) => {\n\t\tpage.current = pageIndex;\n\t\tfetchEntries();\n\t};\n\n\tconst handleClearButtonClick = () => {\n\t\tpage.current = 0;\n\t\tsetFilterValues(initialFilterValues);\n\t\tsetAppliedFilters(initialFilterValues);\n\t};\n\n\tconst handleApplyFiltersButtonClick = (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\n\t\tpage.current = 0;\n\t\tsetAppliedFilters(filterValues);\n\t};\n\n\tconst handleAddSelectedButtonClick = () => {\n\t\tonSave(selectedEntries);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tAdd Entries\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetSearchValue(currentTarget.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t{selectedEntries.length > 0 ? (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{selectedEntries.length} Selected{' '}\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedEntries([]);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tClear Selections\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t`Entries (${totalEntries})`\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t{isLoading && }\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tSort By\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tpage.current = 0;\n\t\t\t\t\t\t\t\t\t\tsetSortField(currentTarget.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{sortOptions.map((o) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{!isLoading && entries.length <= 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{entries.map((entry) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t e.eventId === entry.eventId),\n\t\t\t\t\t\t\t\t\t\t\tonChange: handleDocumentListItemChange,\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{entries.length > 0 && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tFrom Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfromDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTo Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttoDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { Button, Col, Form, Modal, ModalProps, Row } from 'react-bootstrap';\n\nimport { contactsTableColumns, contactsTableHeaders, CONTACTS_TABLE_COLUMN_IDS } from '@/lib/__mocks__';\nimport { AccountModel } from '@/lib/models';\nimport { deliverablesService } from '@/lib/services';\nimport { createUseThemedStyles, useDebouncedState, useHandleError } from '@/hooks';\nimport { SearchInput } from '@/components';\nimport { TableRowConfig } from '@/components/table/models';\nimport { SORT_DIRECTION, TableCell, TableHeader, TableRenderer, TableRow } from '@/components/table';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdialog: {\n\t\twidth: '90%',\n\t\theight: '100%',\n\t\tmaxWidth: 1240,\n\t\tmargin: '0 auto',\n\t\t'& .modal-content': {\n\t\t\tmaxHeight: '90vh',\n\t\t},\n\t\t'& .hackett-modal__body': {\n\t\t\toverflowY: 'auto',\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t},\n\t},\n}));\n\ninterface DeliverablesExistingModalProps extends ModalProps {\n\tcreateClientUrl: string;\n\tvalue: AccountModel[];\n\tonSave(selectedContacts: AccountModel[]): void;\n}\n\nexport const DeliverablesExistingModal = ({\n\tcreateClientUrl,\n\tvalue,\n\tonSave,\n\t...props\n}: DeliverablesExistingModalProps) => {\n\tconst handleError = useHandleError();\n\tconst classes = useStyles();\n\tconst [searchValue, setSearchValue] = useState('');\n\tconst debouncedSearchValue = useDebouncedState(searchValue);\n\n\tconst [tableIsLoading, setTableIsLoading] = useState(false);\n\tconst [tableSelectAll, setTableSelectAll] = useState(false);\n\tconst [tableColumnsData, setTableColumnsData] = useState(contactsTableColumns);\n\tconst [tableHeadersData] = useState(contactsTableHeaders);\n\tconst [tableSortKey, setTableSortKey] = useState(undefined);\n\tconst [tableSortDirection, setTableSortDirection] = useState(undefined);\n\tconst [tableState, setTableState] = useState({ size: 10, page: 0 });\n\n\tconst [contacts, setContacts] = useState[]>([]);\n\tconst [totalContacts, setTotalContacts] = useState(0);\n\tconst [previouslySelectedContacts, setPreviouslySelectedContacts] = useState([]);\n\tconst [newelySelectedContacts, setNewelySelectedContacts] = useState([]);\n\n\tconst fetchContacts = useCallback(async () => {\n\t\tif (!props.show) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetTableIsLoading(true);\n\n\t\t\tconst response = await deliverablesService\n\t\t\t\t.getAccounts({\n\t\t\t\t\t...(debouncedSearchValue && { query: debouncedSearchValue }),\n\t\t\t\t\t...(tableSortDirection && { sortDirection: tableSortDirection }),\n\t\t\t\t\t...(tableSortKey && { sortBy: tableSortKey }),\n\t\t\t\t\t...(previouslySelectedContacts.length > 0 && {\n\t\t\t\t\t\taccountsToIgnore: previouslySelectedContacts.map((a) => a.accountId),\n\t\t\t\t\t}),\n\t\t\t\t\tpage: String(tableState.page),\n\t\t\t\t\tsize: String(tableState.size),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\t\t\tconst formattedContacts = response.accounts.map((account) => {\n\t\t\t\treturn {\n\t\t\t\t\trowId: account.accountId,\n\t\t\t\t\tchecked: false,\n\t\t\t\t\texpanded: false,\n\t\t\t\t\tcolumnData: account,\n\t\t\t\t};\n\t\t\t});\n\n\t\t\tsetContacts(formattedContacts);\n\t\t\tsetTotalContacts(response.totalCount);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetTableIsLoading(false);\n\t\t}\n\t}, [\n\t\tdebouncedSearchValue,\n\t\thandleError,\n\t\tpreviouslySelectedContacts,\n\t\tprops.show,\n\t\ttableSortDirection,\n\t\ttableSortKey,\n\t\ttableState.page,\n\t\ttableState.size,\n\t]);\n\n\tconst handleEnter = useCallback(() => {\n\t\tsetSearchValue('');\n\n\t\tsetTableIsLoading(false);\n\t\tsetTableSelectAll(false);\n\t\tsetTableSortKey(undefined);\n\t\tsetTableSortDirection(undefined);\n\t\tsetTableState({\n\t\t\tsize: 10,\n\t\t\tpage: 0,\n\t\t});\n\n\t\tsetContacts([]);\n\t\tsetTotalContacts(0);\n\t\tsetPreviouslySelectedContacts(value);\n\t\tsetNewelySelectedContacts([]);\n\t}, [value]);\n\n\tuseEffect(() => {\n\t\tfetchContacts();\n\t}, [fetchContacts]);\n\n\tconst handleTableSort = useCallback((sortKey: string, sortDirection: SORT_DIRECTION) => {\n\t\tsetTableSortKey(sortKey);\n\t\tsetTableSortDirection(sortDirection);\n\t}, []);\n\n\tconst handleTableRowCheckboxChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tconst newelySelectedContactsClone = cloneDeep(newelySelectedContacts);\n\t\tconst indexToRemove = newelySelectedContactsClone.findIndex((c) => c.accountId === currentTarget.value);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tnewelySelectedContactsClone.splice(indexToRemove, 1);\n\t\t} else {\n\t\t\tconst contactToAdd = contacts.find((c) => c.columnData.accountId === currentTarget.value);\n\t\t\tif (contactToAdd) {\n\t\t\t\tnewelySelectedContactsClone.push(contactToAdd.columnData);\n\t\t\t}\n\t\t}\n\n\t\tsetNewelySelectedContacts(newelySelectedContactsClone);\n\t};\n\n\tconst handleAddSelectedButtonClick = () => {\n\t\tonSave(previouslySelectedContacts.concat(newelySelectedContacts));\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tAdd Contacts\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetSearchValue(currentTarget.value);\n\t\t\t\t\t\t\t\t\t\tsetTableState({\n\t\t\t\t\t\t\t\t\t\t\t\tsize: 10,\n\t\t\t\t\t\t\t\t\t\t\t\tpage: 0,\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetTableState({\n\t\t\t\t\t\t\t\t\tsize: pageSize,\n\t\t\t\t\t\t\t\t\tpage: pageIndex,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\thidePagination={contacts.length <= 0}\n\t\t\t\t\t\t\thideColumnControls={true}\n\t\t\t\t\t\t\ttableHeaderRowRenderer={() => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeaderProps = {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tsortable: tableHeader.isSortable,\n\t\t\t\t\t\t\t\t\t\t\t\tsortKey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tonSort: handleTableSort,\n\t\t\t\t\t\t\t\t\t\t\t\tsortDirection:\n\t\t\t\t\t\t\t\t\t\t\t\t\ttableSortKey === tableHeader.tableHeaderId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? tableSortDirection\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.DELIVERED:\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttableBodyRowRenderer={(data) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t c.accountId === data.columnData.accountId\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={(event) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={handleTableRowCheckboxChange}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.COMPANY:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.clientName ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.NAME:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.name ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.TITLE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.title ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.EMAIL:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.emailAddress ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.PHONE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.mobileNumber ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.DELIVERED:\n\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn -;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    Existing contacts ({totalContacts})

    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t{contacts.length <= 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tWe can't find \"{searchValue}\".\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tPlease refine your search, or{' '}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tcreate a new user in DTP\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { FC } from 'react';\nimport { Dropdown } from 'react-bootstrap';\nimport { DropdownMenuProps } from 'react-bootstrap/esm/DropdownMenu';\nimport classNames from 'classnames';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { boxShadow } from '@/jss';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdropdownMenu: {\n\t\tborder: 0,\n\t\t...boxShadow,\n\t\tborderRadius: 2,\n\t\tpadding: '8px 0',\n\t\toverflow: 'hidden',\n\t\t'& .dropdown-header': {\n\t\t\t...theme.fonts.xs,\n\t\t\tpadding: '8px 24px',\n\t\t\tletterSpacing: '0.083rem',\n\t\t\ttextTransform: 'uppercase',\n\t\t\tcolor: theme.colors.gray600,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'& .dropdown-item': {\n\t\t\t...theme.fonts.s,\n\t\t\tpadding: '8px 24px',\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t\tcolor: theme.colors.primary,\n\t\t\t'&:hover': {\n\t\t\t\ttextDecoration: 'underline',\n\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t},\n\t\t\t'&:active': {\n\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t.string(),\n\t\t\t},\n\t\t\t'&.active': {\n\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t.string(),\n\t\t\t},\n\t\t},\n\t},\n}));\n\nexport const DropdownMenu: FC = ({ children, className, ...props }) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgFile(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 16,\n height: 16,\n viewBox: \"0 0 16 16\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11 7.75V8.625C11 8.83125 10.8313 9 10.625 9H5.375C5.16875 9 5 8.83125 5 8.625V7.75C5 7.54375 5.16875 7.375 5.375 7.375H10.625C10.8313 7.375 11 7.54375 11 7.75ZM10.625 10H5.375C5.16875 10 5 10.1687 5 10.375V11.25C5 11.4563 5.16875 11.625 5.375 11.625H10.625C10.8313 11.625 11 11.4563 11 11.25V10.375C11 10.1687 10.8313 10 10.625 10ZM14 4.12187V14.5C14 15.3281 13.3281 16 12.5 16H3.5C2.67188 16 2 15.3281 2 14.5V1.5C2 0.671875 2.67188 0 3.5 0H9.87813C10.275 0 10.6562 0.159375 10.9375 0.440625L13.5594 3.0625C13.8406 3.34063 14 3.725 14 4.12187ZM10 1.62188V4H12.3781L10 1.62188ZM12.5 14.5V5.5H9.25C8.83437 5.5 8.5 5.16563 8.5 4.75V1.5H3.5V14.5H12.5Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgFile);\nexport default __webpack_public_path__ + \"static/media/file.820fd21e.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC } from 'react';\nimport { Dropdown } from 'react-bootstrap';\nimport { DropdownToggleProps as ReactBootStrapDropdownToggleProps } from 'react-bootstrap/esm/DropdownToggle';\nimport Color from 'color';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { ReactComponent as DownChevron } from '@/assets/icons/icon-chevron-down.svg';\n\ninterface UseStylesProps {\n\tisActive?: boolean;\n\thideCaret?: boolean;\n}\n\nconst useStyles = createUseThemedStyles(\n\t(theme) => ({\n\t\tdropdownToggle: (props?: UseStylesProps) => ({\n\t\t\tdisplay: 'flex',\n\t\t\tborderRadius: 2,\n\t\t\t...theme.fonts.s,\n\t\t\tpadding: '12px 16px',\n\t\t\talignItems: 'center',\n\t\t\tcolor: props?.isActive ? theme.colors.primary : theme.colors.black,\n\t\t\tbackgroundColor: props?.isActive\n\t\t\t\t? Color(theme.colors.primary)\n\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t.string()\n\t\t\t\t: 'transparent',\n\t\t\t...(props?.isActive ? theme.fonts.openSansSemiBold : theme.fonts.openSansRegular),\n\t\t\t'&:hover': {\n\t\t\t\ttextDecoration: 'underline',\n\t\t\t\tbackgroundColor: props?.isActive\n\t\t\t\t\t? Color(theme.colors.primary)\n\t\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t\t.string()\n\t\t\t\t\t: 'transparent',\n\t\t\t\tcolor: theme.colors.black,\n\t\t\t},\n\t\t\t'&:active': {\n\t\t\t\tbackgroundColor: props?.isActive\n\t\t\t\t\t? Color(theme.colors.primary)\n\t\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t\t.string()\n\t\t\t\t\t: 'transparent',\n\t\t\t},\n\t\t\t'&:after': {\n\t\t\t\tdisplay: 'none',\n\t\t\t},\n\t\t}),\n\t\tchildrenOuter: {\n\t\t\tflex: 1,\n\t\t},\n\t\tdownChevron: (props?: UseStylesProps) => ({\n\t\t\tmarginLeft: 8,\n\t\t\tdisplay: props?.hideCaret ? 'none' : 'flex',\n\t\t}),\n\t}),\n\t{ index: 1 }\n);\n\ninterface DropdownToggleProps extends ReactBootStrapDropdownToggleProps {\n\tisActive?: boolean;\n\thideCaret?: boolean;\n\tclassName?: string;\n\tchevronClassName?: string;\n}\n\nexport const DropdownToggle: FC = ({\n\tisActive,\n\thideCaret,\n\tclassName,\n\tchevronClassName,\n\tchildren,\n\t...props\n}) => {\n\tconst classes = useStyles({\n\t\tisActive,\n\t\thideCaret,\n\t});\n\n\treturn (\n\t\t\n\t\t\t
    {children}
    \n\t\t\t\n\t\t
    \n\t);\n};\n","import React, { FC } from 'react';\nimport { Dropdown as ReactBootstrapDropdown, DropdownProps } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles({\n\tdropdown: {\n\t\t'&:after': {\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\topacity: 0,\n\t\t\tcontent: \"''\",\n\t\t\tvisibility: 'hidden',\n\t\t\tpointerEvents: 'none',\n\t\t\tbackgroundColor: 'rgba(0, 0, 0, 0.16)',\n\t\t\ttransition: 'opacity 0.15s ease-in-out',\n\t\t},\n\t\t'&.show:after': {\n\t\t\tzIndex: 10,\n\t\t\topacity: 1,\n\t\t\tposition: 'fixed',\n\t\t\tvisibility: 'visible',\n\t\t},\n\t},\n});\n\nexport const Dropdown: FC = ({ children, className, ...props }) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n","import React, { FC, useRef } from 'react';\nimport Masonry from 'react-masonry-css';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { boxShadow } from '@/jss';\n\nconst gutterSize = 16;\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tengagementGrid: {\n\t\twidth: 'auto',\n\t\tdisplay: 'flex',\n\t\tmarginLeft: -gutterSize,\n\t\t'& .engagement-grid__column': {\n\t\t\tpaddingLeft: gutterSize,\n\t\t\tbackgroundClip: 'padding-box',\n\t\t},\n\t},\n\tengagementCard: {\n\t\t...boxShadow,\n\t\tmarginBottom: gutterSize,\n\t\tbackgroundColor: theme.colors.white,\n\t},\n\tcount: {\n\t\tfontSize: '3.2rem',\n\t\tlineHeight: '4.3rem',\n\t\tmarginBottom: '0.3rem',\n\t\tletterSpacing: '0.053rem',\n\t\tcolor: theme.colors.success,\n\t\t...theme.fonts.openSansSemiBold,\n\t},\n}));\n\nexport const EngagementGrid: FC = ({ children }) => {\n\tconst classes = useStyles();\n\n\tconst breakPointCols = useRef({\n\t\tdefault: 3,\n\t\t991: 2,\n\t\t575: 1,\n\t}).current;\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n\ninterface EngagementCardProps {\n\tcount: number;\n\ttitle: string;\n\tachievements: string[];\n}\n\nexport const EngagementCard = ({ count, title, achievements }: EngagementCardProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t

    {count}

    \n\t\t\t\t

    {title}

    \n\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
      \n\t\t\t\t\t{achievements.map((achievement, index) => {\n\t\t\t\t\t\tconst isLast = index === achievements.length - 1;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t{achievement}\n\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { useHistory } from 'react-router-dom';\nimport { Button, Container, Row, Col } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { RenderJson } from '@/components';\n\ninterface ErrorDisplayProps {\n\terror: any;\n\tshowBackButton?: boolean;\n\tshowRetryButton?: boolean;\n\tonRetryButtonClick?(): void;\n\tclassName?: string;\n}\n\nexport const ErrorDisplay = ({\n\terror,\n\tshowBackButton,\n\tshowRetryButton,\n\tonRetryButtonClick,\n\tclassName,\n}: ErrorDisplayProps) => {\n\tconst history = useHistory();\n\n\tfunction handleGoBackButtonClick() {\n\t\thistory.goBack();\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    Error

    \n\t\t\t\t\t\t

    {error.message}

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{showBackButton && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{showRetryButton && }\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgDownload(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 17,\n height: 17,\n viewBox: \"0 0 17 17\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M8 2H10V7.92412L12.5858 5.58579L14 7L9 11.6569L4 7L5.41421 5.58579L8 7.92412V2ZM14.5 14.5V12.5H3.5V14.5H14.5Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgDownload);\nexport default __webpack_public_path__ + \"static/media/download.e151f874.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgCopy(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 16,\n height: 16,\n viewBox: \"0 0 16 16\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.5607 2.06066L12.9393 0.439344C12.658 0.158039 12.2765 2.08024e-06 11.8787 0L6.5 0C5.67156 0 5 0.671562 5 1.5V3H2.5C1.67156 3 1 3.67156 1 4.5V14.5C1 15.3284 1.67156 16 2.5 16H9.5C10.3284 16 11 15.3284 11 14.5V13H13.5C14.3284 13 15 12.3284 15 11.5V3.12131C15 2.72349 14.842 2.34196 14.5607 2.06066ZM9.3125 14.5H2.6875C2.63777 14.5 2.59008 14.4802 2.55492 14.4451C2.51975 14.4099 2.5 14.3622 2.5 14.3125V4.6875C2.5 4.63777 2.51975 4.59008 2.55492 4.55492C2.59008 4.51975 2.63777 4.5 2.6875 4.5H5V11.5C5 12.3284 5.67156 13 6.5 13H9.5V14.3125C9.5 14.3622 9.48025 14.4099 9.44508 14.4451C9.40992 14.4802 9.36223 14.5 9.3125 14.5ZM13.3125 11.5H6.6875C6.63777 11.5 6.59008 11.4802 6.55492 11.4451C6.51975 11.4099 6.5 11.3622 6.5 11.3125V1.6875C6.5 1.63777 6.51975 1.59008 6.55492 1.55492C6.59008 1.51975 6.63777 1.5 6.6875 1.5H10V4.25C10 4.66422 10.3358 5 10.75 5H13.5V11.3125C13.5 11.3622 13.4802 11.4099 13.4451 11.4451C13.4099 11.4802 13.3622 11.5 13.3125 11.5ZM13.5 3.5H11.5V1.5H11.801C11.8507 1.5 11.8984 1.51975 11.9336 1.55491L13.4451 3.06641C13.4625 3.08382 13.4763 3.10449 13.4857 3.12724C13.4952 3.14999 13.5 3.17438 13.5 3.199V3.5Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgCopy);\nexport default __webpack_public_path__ + \"static/media/copy.03477d55.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useCallback } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Button } from 'react-bootstrap';\nimport { DOCUMENT_FILE_TYPES } from '@/lib/models';\nimport { useAnalytics, useCopyTextToClipboard, useNavigationConfig } from '@/hooks';\n\nimport { ReactComponent as ViewIcon } from '@/assets/icons/file.svg';\nimport { ReactComponent as DownloadIcon } from '@/assets/icons/download.svg';\nimport { ReactComponent as CopyIcon } from '@/assets/icons/copy.svg';\nimport { documentService } from '@/lib/services';\n\ninterface EventDocumentListItemProps {\n\tdocumentId: string;\n\tfileType?: DOCUMENT_FILE_TYPES;\n\tfileName?: string;\n\tviewUrl: string;\n\tdownloadUrl?: string;\n\tto: string;\n\ttitle: string;\n}\n\nexport const EventDocumentListItem = ({\n\tdocumentId,\n\tfileType,\n\tfileName,\n\tviewUrl,\n\tdownloadUrl,\n\tto,\n\ttitle,\n}: EventDocumentListItemProps) => {\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\tconst analytics = useAnalytics();\n\tconst { navigationConfig } = useNavigationConfig();\n\n\tconst handleShareButtonClick = () => {\n\t\tcopyTextToClipboard(`${window.location.origin}/research/${documentId}`, 'Link copied to clipboard.');\n\t};\n\n\tconst handleDownloadClick = useCallback(async () => {\n\t\tif (viewUrl) {\n\t\t\ttry {\n\t\t\t\tawait documentService.trackDocumentDownload(documentId).fetch();\n\t\t\t\tanalytics.handleClickEvent(viewUrl);\n\t\t\t} catch (error) {\n\t\t\t\t// fail silently because we dont need to report a failed analytics call\n\t\t\t} finally {\n\t\t\t\twindow.open(downloadUrl, '_blank', 'noopener');\n\t\t\t}\n\t\t}\n\t}, [viewUrl, documentId, analytics, downloadUrl]);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{title}\n\t\t\t

    \n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tanalytics.handleClickEvent(viewUrl);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{navigationConfig?.allowDownloads && downloadUrl && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useEffect, useRef } from 'react';\nimport { Form, FormControlProps } from 'react-bootstrap';\n\nexport const ExpandingTextarea = ({ ...props }: FormControlProps) => {\n\tconst textareaRef = useRef(null);\n\n\tuseEffect(() => {\n\t\tif (!textareaRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\ttextareaRef.current.style.height = '0px';\n\t\tconst scrollHeight = textareaRef.current.scrollHeight;\n\t\ttextareaRef.current.style.height = `${scrollHeight + 2}px`;\n\t}, [props.value]);\n\n\treturn ;\n};\n","import React, { FC, useRef } from 'react';\nimport { createUseStyles } from 'react-jss';\nimport { CSSTransition } from 'react-transition-group';\nimport { CSSTransitionProps } from 'react-transition-group/CSSTransition';\n\nconst useStyles = createUseStyles({\n\tfadeTransitionOuter: ({ animationDuration }: { animationDuration: number }) => ({\n\t\toverflow: 'hidden',\n\t\ttransition: `height ${animationDuration}ms ease-out`,\n\t}),\n\topacityHeightTransition: ({ animationDuration }: { animationDuration: number }) => ({\n\t\t'&-enter': {\n\t\t\topacity: 0,\n\t\t},\n\t\t'&-enter-active': {\n\t\t\topacity: 1,\n\t\t\ttransition: `opacity ${animationDuration}ms ease-out`,\n\t\t},\n\t\t'&-exit': {\n\t\t\topacity: 1,\n\t\t},\n\t\t'&-exit-active': {\n\t\t\topacity: 0,\n\t\t\ttransition: `opacity ${animationDuration}ms ease-out`,\n\t\t},\n\t}),\n});\n\ntype FadeTransitionProps = Partial & {\n\tanimationDuration?: number;\n};\n\nexport const FadeTransition: FC = ({ animationDuration = 200, children, ...props }) => {\n\tconst outerRef = useRef(null);\n\tconst innerRef = useRef(null);\n\tconst classes = useStyles({ animationDuration });\n\n\tfunction handleEnter() {\n\t\tif (outerRef.current) {\n\t\t\touterRef.current.style.height = '0px';\n\t\t}\n\t}\n\n\tfunction handleEntering() {\n\t\tconst targetHeight = innerRef.current?.getBoundingClientRect().height;\n\n\t\tif (outerRef.current) {\n\t\t\touterRef.current.style.height = `${targetHeight}px`;\n\t\t}\n\t}\n\n\tfunction handleEntered() {\n\t\tif (outerRef.current) {\n\t\t\touterRef.current.style.removeProperty('height');\n\t\t}\n\t}\n\n\tfunction handleExit() {\n\t\tconst targetHeight = innerRef.current?.getBoundingClientRect().height;\n\n\t\tif (outerRef.current) {\n\t\t\touterRef.current.style.height = `${targetHeight}px`;\n\t\t}\n\t}\n\n\tfunction handleExiting() {\n\t\tif (outerRef.current) {\n\t\t\touterRef.current.style.height = '0px';\n\t\t}\n\t}\n\n\tfunction handleExited() {\n\t\tif (outerRef.current) {\n\t\t\touterRef.current.style.removeProperty('height');\n\t\t}\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t
    {children}
    \n\t\t\t\n\t\t
    \n\t);\n};\n","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconFile(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-file-earmark-text\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.5L9.5 0zm0 1v2A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconFile);\nexport default __webpack_public_path__ + \"static/media/icon-file.eedd3514.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconCalendar(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-calendar3\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.5 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-9 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm3 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconCalendar);\nexport default __webpack_public_path__ + \"static/media/icon-calendar.09c7ca94.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { ReactComponent as FileIcon } from '@/assets/icons/icon-file.svg';\nimport { ReactComponent as CalendarIcon } from '@/assets/icons/icon-calendar.svg';\nimport { ReactComponent as ChevronIcon } from '@/assets/icons/icon-chevron-right.svg';\nimport { ReactComponent as ClockIcon } from '@/assets/icons/icon-clock.svg';\nimport { ReactComponent as StarIcon } from '@/assets/icons/icon-star.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tfeatureCardSecondary: {\n\t\tdisplay: 'flex',\n\t\tcolor: theme.colors.white,\n\t},\n\ticon: {\n\t\twidth: 56,\n\t\theight: 56,\n\t\tflexShrink: 0,\n\t\tmarginRight: 24,\n\t\topacity: 0.5,\n\t},\n\tlink: {\n\t\tdisplay: 'block',\n\t\tcolor: theme.colors.white,\n\t\t...theme.fonts.openSansBold,\n\t\t'&:hover': {\n\t\t\tcolor: theme.colors.white,\n\t\t},\n\t},\n\tchevronIcon: {\n\t\tmarginTop: -3,\n\t\tmarginLeft: 8,\n\t},\n\tcallToActionOuter: {\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\t'&-primary': {\n\t\t\tcolor: theme.colors.primary,\n\t\t},\n\t\t'&-success': {\n\t\t\tcolor: theme.colors.success,\n\t\t},\n\t\t'&-warning': {\n\t\t\tcolor: theme.colors.warning,\n\t\t},\n\t\t'&-danger': {\n\t\t\tcolor: theme.colors.danger,\n\t\t},\n\t\t'&-info': {\n\t\t\tcolor: theme.colors.info,\n\t\t},\n\t},\n\tcallToActionIcon: {\n\t\tflexShrink: 0,\n\t\tmarginRight: 8,\n\t},\n}));\n\ninterface FeatureCardSecondaryProps {\n\ticon?: 'file' | 'calendar';\n\tcategory: string;\n\ttitle: string;\n\tto: string;\n\tcallToActionVariant?: 'primary' | 'success' | 'warning' | 'danger' | 'info';\n\tcallToActionIcon?: 'clock' | 'star';\n\tcallToActionText?: string;\n\tclassName?: string;\n}\n\nexport const FeatureCardSecondary = ({\n\ticon,\n\tcategory,\n\ttitle,\n\tto,\n\tcallToActionVariant,\n\tcallToActionText,\n\tcallToActionIcon,\n\tclassName,\n}: FeatureCardSecondaryProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t{icon && (\n\t\t\t\t<>\n\t\t\t\t\t{icon === 'file' && }\n\t\t\t\t\t{icon === 'calendar' && }\n\t\t\t\t\n\t\t\t)}\n\t\t\t
    \n\t\t\t\t

    {category}

    \n\t\t\t\t\n\t\t\t\t\t{title}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{callToActionText && (\n\t\t\t\t\t\n\t\t\t\t\t\t{callToActionIcon && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{callToActionIcon === 'clock' && }\n\t\t\t\t\t\t\t\t{callToActionIcon === 'star' && }\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t

    {callToActionText}

    \n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Link, useHistory } from 'react-router-dom';\nimport { Button } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { boxShadow } from '@/jss';\nimport { ReactComponent as FileIcon } from '@/assets/icons/icon-file.svg';\nimport { ReactComponent as ClockIcon } from '@/assets/icons/icon-clock.svg';\nimport { ReactComponent as StarIcon } from '@/assets/icons/icon-star.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tcardOuter: {\n\t\theight: '100%',\n\t\tdisplay: 'flex',\n\t\tborderRadius: 2,\n\t\tflexDirection: 'column',\n\t\tjustifyContent: 'space-between',\n\t\tbackgroundColor: theme.colors.white,\n\t\t...boxShadow,\n\t},\n\tcard: ({ smaller }: { smaller?: boolean }) => ({\n\t\tpadding: smaller ? '2.4rem 4.0rem' : '4.0rem',\n\t}),\n\tfileIcon: {\n\t\twidth: 28,\n\t\theight: 28,\n\t\topacity: 0.5,\n\t\tmarginRight: 10,\n\t},\n\tcallToActionOuter: ({ smaller }: { smaller?: boolean }) => ({\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\tpadding: smaller ? '0.0rem 4.0rem 4.0rem' : '2.0rem 4.0rem',\n\t\tborderBottomLeftRadius: 2,\n\t\tborderBottomRightRadius: 2,\n\t\tcolor: smaller ? theme.colors.primary : theme.colors.white,\n\t\tbackgroundColor: smaller ? 'transparent' : theme.colors.primary,\n\t\t'&-primary': {\n\t\t\tpadding: '2.0rem 4.0rem',\n\t\t\tcolor: smaller ? theme.colors.primary : theme.colors.white,\n\t\t\tbackgroundColor: smaller ? 'transparent' : theme.colors.primary,\n\t\t},\n\t\t'&-secondary': {\n\t\t\tcolor: smaller ? theme.colors.secondary : theme.colors.white,\n\t\t\tbackgroundColor: smaller ? 'transparent' : theme.colors.secondary,\n\t\t},\n\t\t'&-success': {\n\t\t\tcolor: smaller ? theme.colors.success : theme.colors.white,\n\t\t\tbackgroundColor: smaller ? 'transparent' : theme.colors.success,\n\t\t},\n\t\t'&-warning': {\n\t\t\tcolor: smaller ? theme.colors.warning : theme.colors.white,\n\t\t\tbackgroundColor: smaller ? 'transparent' : theme.colors.warning,\n\t\t},\n\t\t'&-danger': {\n\t\t\tcolor: smaller ? theme.colors.danger : theme.colors.white,\n\t\t\tbackgroundColor: smaller ? 'transparent' : theme.colors.danger,\n\t\t},\n\t\t'&-info': {\n\t\t\tcolor: smaller ? theme.colors.info : theme.colors.white,\n\t\t\tbackgroundColor: smaller ? 'transparent' : theme.colors.info,\n\t\t},\n\t}),\n}));\n\ninterface FeatureCardProps {\n\tsmaller?: boolean;\n\ttitleSize?: 'sm' | 'lg';\n\thideFileIcon?: boolean;\n\tcategory: string;\n\ttype?: string;\n\tto: string;\n\ttitle: string;\n\tdescription?: string;\n\tbuttonTitle?: string;\n\tcallToActionVariant?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'info';\n\tcallToActionIcon?: 'clock' | 'star';\n\tcallToActionText?: string;\n}\n\nexport const FeatureCard = ({\n\tsmaller,\n\ttitleSize = 'lg',\n\thideFileIcon,\n\tcategory,\n\ttype,\n\tto,\n\ttitle,\n\tdescription,\n\tbuttonTitle,\n\tcallToActionVariant,\n\tcallToActionIcon,\n\tcallToActionText,\n}: FeatureCardProps) => {\n\tconst history = useHistory();\n\tconst classes = useStyles({ smaller });\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{!hideFileIcon && }\n\n\t\t\t\t\t

    \n\t\t\t\t\t\t{category} {type && <>• {type}}\n\t\t\t\t\t

    \n\t\t\t\t
    \n\n\t\t\t\t{titleSize === 'lg' && (\n\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t)}\n\t\t\t\t{titleSize === 'sm' && (\n\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t)}\n\n\t\t\t\t{description &&

    {description}

    }\n\n\t\t\t\t{buttonTitle && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\thistory.push(to);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{buttonTitle}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t\t{callToActionText && (\n\t\t\t\t\n\t\t\t\t\t{callToActionIcon === 'clock' && }\n\t\t\t\t\t{callToActionIcon === 'star' && }\n\t\t\t\t\t

    {callToActionText}

    \n\t\t\t\t
    \n\t\t\t)}\n\t\t\n\t);\n};\n","import React from 'react';\nimport { Button } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tfeatureHero: {\n\t\tpadding: 60,\n\t\tdisplay: 'flex',\n\t\tborderRadius: 4,\n\t\talignItems: 'flex-end',\n\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t.saturate(0.8)\n\t\t\t.darken(0.32)\n\t\t\t.hex(),\n\t\tboxShadow: '0 2px 4px 0 rgba(0,0,0,0.15), 0 10px 20px 0 rgba(0,0,0,0.19);',\n\t},\n\tfeatureInformation: {\n\t\twidth: 600,\n\t\tmaxWidth: '100%',\n\t},\n}));\n\ninterface FeatureHeroProps {\n\tcategory: string;\n\ttitle: string;\n\tdescription?: string;\n\tbuttonTitle?: string;\n\tonButtonClick?(event: React.MouseEvent): void;\n}\n\nexport const FeatureHero = ({ category, title, description, buttonTitle, onButtonClick }: FeatureHeroProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t

    {category}

    \n\t\t\t\t

    {title}

    \n\t\t\t\t{description && (\n\t\t\t\t\t

    {description}

    \n\t\t\t\t)}\n\t\t\t\t{buttonTitle && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12, _path13, _path14, _path15, _path16, _path17, _path18, _path19, _path20, _path21, _path22, _path23;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgLogoHackettWhite(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 223,\n height: 29,\n viewBox: \"0 0 223 29\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0.0264052 2.67664V11.9641H1.72149L9.11023 2.77564V2.67664H0.0264052Z\",\n fill: \"white\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.10995 5.18817L1.77207 11.9645H5.35297L9.10995 7.6543V5.18817Z\",\n fill: \"white\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.44065 11.9641L9.10995 9.64601V11.9641H6.44065Z\",\n fill: \"white\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.45793 12.8193L1.95233 15.8665L4.60892 12.8193H0V22.1058H9.08285V17.9366L6.34998 20.3627L9.08285 17.2235V13.6053L3.4694 18.6616L8.56249 12.8193H5.45793Z\",\n fill: \"white\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.0343 17.0947L14.8574 12.8195H17.0816L10.0343 20.9119V17.0947Z\",\n fill: \"white\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.923 12.8195L10.0346 16.1337V12.8195H12.923Z\",\n fill: \"white\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.0346 22.1066H19.1174V13.0081L10.0346 20.9245V22.1066Z\",\n fill: \"white\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M11.1584 10.9756H21.8894V0H11.1584V10.9756Z\",\n fill: \"white\"\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M39.9246 10.2657C39.9246 7.99655 39.8767 4.81737 39.732 3.16528C40.0939 3.23929 40.4548 3.28929 40.8177 3.28929C41.1796 3.28929 41.5405 3.23929 41.9014 3.16528C41.7576 4.81737 41.7097 7.99655 41.7097 10.1417V12.0158H41.7576C42.6487 10.6107 43.8792 9.79564 45.6154 9.79564C47.3985 9.79564 49.4731 10.6847 49.4731 14.0859C49.4731 14.7571 49.451 15.445 49.4279 16.1633V16.1639C49.4026 16.949 49.3762 17.7705 49.3762 18.6461C49.3762 19.7302 49.3762 20.7652 49.4232 21.8263C49.0623 21.7513 48.7483 21.7033 48.4118 21.7033C48.0744 21.7033 47.7594 21.7513 47.4229 21.8263C47.4408 21.1705 47.4681 20.5146 47.4956 19.8539C47.5436 18.7022 47.5921 17.5358 47.5921 16.329V14.8249C47.5921 12.4098 46.5553 11.0777 44.9639 11.0777C42.7231 11.0777 41.7097 12.5568 41.7097 15.1209C41.7097 16.995 41.7576 20.1752 41.9014 21.8263C41.5405 21.7513 41.1796 21.7033 40.8177 21.7033C40.4548 21.7033 40.0939 21.7513 39.732 21.8263C39.8767 20.1752 39.9246 16.995 39.9246 14.7269V10.2657Z\",\n fill: \"white\"\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M31.2935 11.2022C31.2935 9.50113 31.269 7.80104 31.2211 6.09994C29.5573 6.09994 27.4123 6.19795 26.0615 6.37096C26.1339 6.12495 26.1818 5.85393 26.1818 5.58192C26.1818 5.3349 26.1339 5.08789 26.0615 4.81787C28.1351 4.89088 30.2087 4.93988 32.2814 4.93988C34.355 4.93988 36.4286 4.89088 38.5013 4.81787C38.4289 5.08789 38.381 5.3349 38.381 5.60592C38.381 5.85393 38.4289 6.12495 38.5013 6.37096C37.1515 6.19795 35.0064 6.09994 33.3426 6.09994C33.2957 7.80104 33.2703 9.50113 33.2703 11.2022V15.4425C33.2703 17.5616 33.3661 19.7067 33.463 21.8268C33.0531 21.7518 32.6677 21.7038 32.2814 21.7038C31.897 21.7038 31.5106 21.7518 31.1008 21.8268C31.1976 19.7067 31.2935 17.5616 31.2935 15.4425V11.2022Z\",\n fill: \"white\"\n })), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M62.6604 14.8254C62.6604 12.0893 61.0456 9.79615 57.6701 9.79615C54.1244 9.79615 52.1486 12.2863 52.1486 16.2805C52.1486 19.5597 54.5362 22.0728 58.0075 22.0728C59.5021 22.0728 61.0681 21.3588 62.0335 20.5687L62.1782 19.3627L62.0579 19.2877C61.2118 20.2737 59.7192 21.0368 58.4398 21.0368C55.7647 21.0368 54.2711 19.0416 54.2711 16.4765C54.2711 16.2565 54.2711 16.0325 54.2936 15.7875C54.6601 15.7792 55.0235 15.7678 55.3861 15.7564C56.0733 15.7349 56.7572 15.7135 57.4519 15.7135C58.5709 15.7135 59.6899 15.7348 60.816 15.7563C61.4124 15.7677 62.0111 15.7792 62.6125 15.7875L62.6152 15.7504C62.6378 15.4419 62.6604 15.133 62.6604 14.8254ZM55.3199 14.8787C54.9852 14.8683 54.6566 14.858 54.3425 14.8504C54.4638 13.0753 55.3548 10.5862 57.719 10.5862C60.2249 10.5862 60.6827 13.0993 60.6827 14.8504C60.361 14.8581 60.0271 14.8683 59.6872 14.8787L59.6864 14.8788C58.9567 14.9012 58.1992 14.9244 57.4754 14.9244C56.7853 14.9244 56.0387 14.9011 55.3199 14.8787Z\",\n fill: \"white\"\n })), _path12 || (_path12 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M84.4789 11.2022C84.4789 9.08211 84.3831 6.93799 84.2862 4.81787C84.698 4.89088 85.0824 4.93988 85.4678 4.93988C85.8542 4.93988 86.2396 4.89088 86.6494 4.81787C86.5535 6.93799 86.4567 9.08211 86.4567 11.2022V15.4425C86.4567 17.5616 86.5535 19.7067 86.6494 21.8268C86.2396 21.7518 85.8542 21.7038 85.4678 21.7038C85.0824 21.7038 84.698 21.7518 84.2862 21.8268C84.3831 19.7067 84.4789 17.5616 84.4789 15.4425V13.2243C82.7926 13.1983 81.1279 13.1743 79.4416 13.1743C77.7534 13.1743 76.0896 13.1983 74.4023 13.2243V15.4425C74.4023 17.5616 74.4982 19.7067 74.595 21.8268C74.1861 21.7518 73.7988 21.7038 73.4134 21.7038C73.029 21.7038 72.6417 21.7518 72.2318 21.8268C72.3277 19.7067 72.4245 17.5616 72.4245 15.4425V11.2022C72.4245 9.08211 72.3277 6.93799 72.2318 4.81787C72.6417 4.89088 73.029 4.93988 73.4134 4.93988C73.7988 4.93988 74.1861 4.89088 74.595 4.81787C74.4982 6.93799 74.4023 9.08211 74.4023 11.2022V12.0643C74.968 12.0727 75.5311 12.0838 76.0934 12.095C77.208 12.1172 78.3194 12.1393 79.4416 12.1393C80.5626 12.1393 81.6741 12.1172 82.7888 12.095C83.3508 12.0838 83.9137 12.0726 84.4789 12.0643V11.2022Z\",\n fill: \"white\"\n })), _path13 || (_path13 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M94.7742 9.79574C93.4967 9.79574 92.3396 10.1178 90.892 11.2258V12.5089H91.159C91.7117 11.4488 92.9167 10.8318 94.1951 10.8318C96.125 10.8318 96.8468 12.2859 96.8468 13.938C96.8468 14.9 96.7275 15.097 93.2327 15.6641C91.1336 16.0081 89.8317 17.0681 89.8317 19.0412C89.8317 20.9143 91.4231 22.0734 93.038 22.0734C94.6773 22.0734 95.6662 21.4554 96.8243 20.2733C96.9202 21.1114 97.4503 21.8014 98.4871 21.8014C99.1131 21.8014 99.6922 21.6044 100.029 21.4554V20.9143C99.8614 21.0134 99.6707 21.0134 99.523 21.0134C98.584 21.0134 98.584 20.0013 98.584 19.1893C98.584 18.1243 98.6093 17.1247 98.6339 16.1535V16.1521C98.6572 15.2349 98.6798 14.3428 98.6798 13.4449C98.6798 11.2508 97.0884 9.79574 94.7742 9.79574ZM95.4674 15.9358C95.9773 15.8384 96.4586 15.7464 96.8468 15.6141L96.751 19.3123C96.1964 20.2253 95.1361 21.0364 93.9066 21.0364C92.8453 21.0364 91.8085 20.2493 91.8085 18.6962C91.8085 16.6353 93.792 16.2561 95.4674 15.9358Z\",\n fill: \"white\"\n })), _path14 || (_path14 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M108.035 9.79645C109.796 9.79645 111.315 10.3145 111.918 10.8815C111.7 11.3735 111.506 11.9166 111.386 12.5086H111.193C110.736 11.6705 109.626 10.5865 108.108 10.5865C105.191 10.5865 104.009 12.8786 104.009 15.9108C104.009 19.287 105.504 21.0371 108.178 21.0371C109.458 21.0371 110.951 20.273 111.797 19.287L111.918 19.362C111.845 19.755 111.797 20.176 111.772 20.569C110.808 21.3591 109.238 22.0731 107.746 22.0731C104.949 22.0731 101.886 20.348 101.886 15.9348C101.886 11.6705 104.949 9.79645 108.035 9.79645Z\",\n fill: \"white\"\n })), _path15 || (_path15 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M114.326 3.16528C114.474 4.81737 114.521 7.99655 114.521 10.2657V14.7269C114.521 16.995 114.474 20.1752 114.326 21.8263C114.69 21.7513 115.052 21.7033 115.413 21.7033C115.775 21.7033 116.138 21.7513 116.499 21.8263C116.352 20.3722 116.306 18.9421 116.306 17.4871V16.008C116.306 15.812 116.401 15.714 116.546 15.714C116.666 15.714 116.812 15.836 116.909 15.959C118.043 17.191 120.355 19.9532 121.754 21.8263C122.164 21.7513 122.573 21.7033 122.984 21.7033C123.394 21.7033 123.804 21.7513 124.359 21.8263C122.381 19.5592 120.381 17.266 118.547 14.9979C120.21 13.3468 122.091 11.6947 124.094 10.0437L123.89 10.0709C123.456 10.1295 123.18 10.1667 122.887 10.1667C122.548 10.1667 122.236 10.1177 121.969 10.0437C120.476 11.7938 118.112 14.2089 117.535 14.6519C117.489 14.6868 117.445 14.7214 117.402 14.7552C117.077 15.0087 116.807 15.2199 116.596 15.2199C116.401 15.2199 116.306 15.0479 116.306 14.7519V10.2657C116.306 7.99655 116.352 4.81737 116.499 3.16528C116.138 3.23929 115.775 3.28929 115.413 3.28929C115.052 3.28929 114.69 3.23929 114.326 3.16528Z\",\n fill: \"white\"\n })), _path16 || (_path16 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M130.917 9.79615C134.289 9.79615 135.906 12.0893 135.906 14.8254C135.906 15.1328 135.883 15.4411 135.861 15.7495V15.7502L135.858 15.7875C135.258 15.7792 134.66 15.7677 134.065 15.7564C132.939 15.7349 131.82 15.7135 130.7 15.7135C130.005 15.7135 129.321 15.7349 128.633 15.7564C128.27 15.7678 127.906 15.7792 127.539 15.7875C127.517 16.0325 127.517 16.2565 127.517 16.4765C127.517 19.0416 129.012 21.0368 131.688 21.0368C132.966 21.0368 134.458 20.2737 135.303 19.2877L135.426 19.3627L135.278 20.5687C134.316 21.3588 132.747 22.0728 131.253 22.0728C127.781 22.0728 125.395 19.5597 125.395 16.2805C125.395 12.2863 127.371 9.79615 130.917 9.79615ZM127.587 14.8504C127.901 14.858 128.23 14.8683 128.565 14.8787C129.285 14.9011 130.032 14.9244 130.724 14.9244C131.446 14.9244 132.203 14.9012 132.933 14.8788L132.933 14.8788L132.934 14.8788L132.935 14.8787C133.275 14.8683 133.609 14.858 133.93 14.8504C133.93 13.0993 133.47 10.5862 130.965 10.5862C128.601 10.5862 127.709 13.0753 127.587 14.8504Z\",\n fill: \"white\"\n })), _path17 || (_path17 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M140.633 6.73958H140.511L138.512 7.60362C138.543 8.29355 138.563 8.98391 138.58 9.55856L138.58 9.56017L138.58 9.56236L138.58 9.56588C138.589 9.87037 138.596 10.1421 138.605 10.3638C138.27 10.3638 137.741 10.3398 137.017 10.2898C137.021 10.3171 137.024 10.3438 137.028 10.3701L137.028 10.3715C137.047 10.511 137.064 10.6386 137.064 10.7838C137.064 10.9504 137.046 11.1004 137.027 11.2626C137.024 11.2912 137.02 11.3203 137.017 11.3498C137.641 11.3018 138.172 11.3018 138.655 11.3018C138.642 13.3622 138.591 14.9644 138.548 16.292V16.2927C138.514 17.3308 138.486 18.2014 138.486 18.9912C138.486 20.9143 139.451 22.0734 141.454 22.0734C142.055 22.0734 142.755 21.9004 143.306 21.7034V21.1124C142.995 21.2104 142.488 21.2834 142.224 21.2834C140.319 21.2834 140.271 19.4103 140.271 17.5612C140.271 15.417 140.391 11.5468 140.44 11.3018C141.019 11.3018 142.15 11.3018 142.995 11.3498C142.971 11.1778 142.971 11.0048 142.971 10.8328C142.971 10.6598 142.971 10.4868 142.995 10.3138C141.885 10.3638 140.776 10.3888 140.44 10.3888C140.486 9.18071 140.535 7.97364 140.633 6.73958Z\",\n fill: \"white\"\n })), _path18 || (_path18 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M147.214 6.73958H147.335C147.244 7.88606 147.198 9.00924 147.152 10.1316L147.141 10.3888C147.48 10.3888 148.587 10.3638 149.698 10.3138C149.673 10.4868 149.673 10.6598 149.673 10.8328C149.673 11.0048 149.673 11.1778 149.698 11.3498C148.853 11.3018 147.72 11.3018 147.141 11.3018C147.093 11.5468 146.973 15.417 146.973 17.5612C146.973 19.4103 147.021 21.2834 148.927 21.2834C149.191 21.2834 149.698 21.2104 150.009 21.1124V21.7034C149.455 21.9004 148.756 22.0734 148.154 22.0734C146.152 22.0734 145.19 20.9143 145.19 18.9912C145.19 18.2006 145.217 17.3296 145.251 16.2902L145.251 16.2894C145.293 14.9624 145.344 13.3606 145.357 11.3018C144.874 11.3018 144.345 11.3018 143.719 11.3498L143.727 11.2769C143.748 11.1092 143.767 10.9552 143.767 10.7838C143.767 10.6346 143.748 10.504 143.728 10.3599L143.719 10.2898C144.441 10.3398 144.972 10.3638 145.31 10.3638C145.301 10.1265 145.292 9.83185 145.281 9.50107C145.264 8.93817 145.243 8.2707 145.212 7.60362L147.214 6.73958Z\",\n fill: \"white\"\n })), _path19 || (_path19 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M167.586 5.40851C170.021 5.40851 171.902 6.61757 172.89 7.82464H173.181C173.251 7.20961 173.493 6.37056 173.733 5.92554C172.601 5.3105 170.84 4.49846 167.586 4.49846C161.873 4.49846 158.16 7.72663 158.16 13.3219C158.16 19.0903 161.729 22.1464 167.467 22.1464C169.346 22.1464 172.238 21.4554 173.614 20.9624C173.614 20.6269 173.608 20.2851 173.602 19.9466L173.602 19.9458V19.9441C173.596 19.6123 173.591 19.2837 173.591 18.9672C173.591 16.3051 173.638 14.703 173.685 13.962C173.371 14.062 173.011 14.086 172.65 14.086C172.263 14.086 171.806 14.037 171.491 13.962C171.5 14.146 171.51 14.3346 171.519 14.527C171.564 15.4176 171.612 16.3871 171.612 17.3412C171.612 18.3512 171.589 19.3373 171.565 20.3233C170.745 20.8403 169.081 21.1124 167.707 21.1124C163.175 21.1124 160.521 18.1532 160.521 13.3219C160.521 7.84964 163.584 5.40851 167.586 5.40851Z\",\n fill: \"white\"\n })), _path20 || (_path20 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M182.824 12.0636C182.654 11.8666 182.124 11.6705 181.642 11.6705C180.1 11.6705 179.182 13.1746 179.182 15.0967C179.182 19.385 179.182 20.693 179.278 21.8261C178.967 21.7511 178.628 21.7031 178.316 21.7031C177.978 21.7031 177.665 21.7511 177.302 21.8261C177.399 20.617 177.399 18.6959 177.399 15.9338V15.1447C177.399 13.8647 177.399 12.1636 177.302 10.0435C177.665 10.1175 177.978 10.1665 178.316 10.1665C178.628 10.1665 178.967 10.1175 179.278 10.0435C179.159 11.2255 179.159 11.8196 179.159 12.4336L179.207 12.4586C180.124 10.6845 181.281 9.79645 182.39 9.79645C182.679 9.79645 182.847 9.82145 183.163 9.94445C182.994 10.3395 182.994 11.2765 182.994 11.9406L182.824 12.0636Z\",\n fill: \"white\"\n })), _path21 || (_path21 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M196.059 15.9346C196.059 11.4493 192.997 9.79624 190.2 9.79624C187.405 9.79624 184.342 11.4493 184.342 15.9346C184.342 20.4218 187.405 22.0729 190.2 22.0729C192.997 22.0729 196.059 20.4218 196.059 15.9346ZM193.938 15.9346C193.938 18.6957 193.046 21.2829 190.2 21.2829C187.356 21.2829 186.464 18.6957 186.464 15.9346C186.464 13.1744 187.356 10.5863 190.2 10.5863C193.046 10.5863 193.938 13.1744 193.938 15.9346Z\",\n fill: \"white\"\n })), _path22 || (_path22 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M198.809 13.9622C198.809 12.8031 198.785 11.423 198.76 10.044C199.097 10.117 199.461 10.167 199.773 10.167C200.086 10.167 200.422 10.117 200.761 10.044C200.617 11.9641 200.522 14.4802 200.522 16.8963C200.522 18.5964 200.857 19.4105 201.268 19.8785C201.724 20.3955 202.4 20.7905 203.34 20.7905C204.692 20.7905 205.606 20.1005 206.017 19.2125C206.5 18.1524 206.523 17.9564 206.523 14.0862C206.523 12.7551 206.523 11.226 206.477 10.044C206.813 10.117 207.127 10.167 207.488 10.167C207.849 10.167 208.162 10.117 208.476 10.044C208.332 12.6061 208.307 14.9242 208.307 17.5364C208.307 18.9914 208.332 20.4445 208.404 21.8266C208.092 21.7516 207.777 21.7036 207.466 21.7036C207.152 21.7036 206.837 21.7516 206.523 21.8266C206.57 21.1116 206.57 20.3955 206.57 19.7065H206.523C205.704 21.2346 204.28 22.0726 202.761 22.0726C200.255 22.0726 198.737 20.5945 198.737 18.0294C198.737 17.0909 198.758 16.3269 198.778 15.6307C198.794 15.0479 198.809 14.5126 198.809 13.9622Z\",\n fill: \"white\"\n })), _path23 || (_path23 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M211.682 10.0436C211.827 11.7696 211.875 14.9488 211.875 17.2159V21.2102C211.875 23.4773 211.827 26.6575 211.682 28.3085C212.045 28.2345 212.406 28.1875 212.768 28.1875C213.13 28.1875 213.492 28.2345 213.853 28.3085C213.708 26.6575 213.661 23.4773 213.661 21.2102V19.6561H213.708C214.454 21.2102 215.708 22.0732 217.493 22.0732C220.024 22.0732 222.701 20.0511 222.701 15.8609C222.701 11.6206 220.243 9.79654 217.783 9.79654C215.347 9.79654 214.192 11.4236 213.708 12.4587H213.661C213.661 11.6706 213.73 10.9046 213.853 10.0436C213.492 10.1176 213.13 10.1666 212.768 10.1666C212.406 10.1666 212.045 10.1176 211.682 10.0436ZM213.661 16.0329C213.661 13.1987 214.648 10.8316 217.252 10.8316C218.817 10.8316 220.579 11.8917 220.579 15.8359C220.579 18.819 219.493 21.1622 217.181 21.1622C214.887 21.1622 213.661 19.4101 213.661 16.0329Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogoHackettWhite);\nexport default __webpack_public_path__ + \"static/media/logo-hackett-white.97bbfc98.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Badge } from 'react-bootstrap';\nimport HTMLEllipsis from 'react-lines-ellipsis/lib/html';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { AspectRatioLockedImage } from './aspect-ratio-locked-image';\n\ninterface UseStylesProps {\n\tborder?: boolean;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tfeaturedContentTile: {\n\t\theight: '100%',\n\t\tdisplay: 'block',\n\t\tborder: ({ border }: UseStylesProps) => (border ? `1px solid ${theme.colors.gray300}` : ''),\n\t\tpadding: ({ border }: UseStylesProps) => (border ? 20 : 0),\n\t\t'& .html-content, & .bottom-text': {\n\t\t\tcolor: theme.colors.gray900,\n\t\t},\n\t\t'&:hover': {\n\t\t\ttextDecoration: 'none',\n\t\t\t'& h4': {\n\t\t\t\ttextDecoration: 'underline',\n\t\t\t},\n\t\t},\n\t},\n}));\n\ninterface FeaturedContentTileProps {\n\tto: string;\n\timageUrl?: string;\n\tcontentType?: string;\n\ttitle: string;\n\tdescription?: string;\n\tbottomText?: string;\n\tborder?: boolean;\n}\n\nconst ResponsiveEllipsis = responsiveHOC()(HTMLEllipsis);\n\nexport const FeaturedContentTile = ({\n\tto,\n\timageUrl,\n\tcontentType,\n\ttitle,\n\tdescription,\n\tbottomText,\n\tborder,\n}: FeaturedContentTileProps) => {\n\tconst classes = useStyles({ border });\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{imageUrl && }\n\t\t\t\t\t{contentType && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{contentType}\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\t{title}\n\t\t\t\t\t\n\t\t\t\t\t{description && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t\t{bottomText &&

    {bottomText}

    }\n\t\t\t
    \n\t\t\n\t);\n};\n","import React from 'react';\nimport { Accept, DropEvent, FileRejection, useDropzone } from 'react-dropzone';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { focus } from '@/jss';\n\nimport { ReactComponent as DownloadIcon } from '@/assets/icons/icon-download.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tfileDropzone: {\n\t\tpadding: 20,\n\t\twidth: '100%',\n\t\tborderRadius: 2,\n\t\tcursor: 'pointer',\n\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t'&:hover': {\n\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t.alpha(0.16)\n\t\t\t\t.string(),\n\t\t},\n\t\t'&:focus-within': {\n\t\t\t...focus(theme.colors.primary),\n\t\t},\n\t},\n}));\n\ninterface FileDropzoneProps {\n\taccept?: Accept;\n\tmaxSize?: number;\n\tdisabled?: boolean;\n\tonChange: (acceptedFiles: T[], fileRejections: FileRejection[], event: DropEvent) => void;\n}\n\nexport const FileDropzone = ({ accept, maxSize, disabled, onChange }: FileDropzoneProps) => {\n\tconst classes = useStyles();\n\n\tconst { getRootProps, getInputProps, isDragActive } = useDropzone({\n\t\tonDrop: onChange,\n\t\taccept,\n\t\tmaxSize,\n\t\tdisabled,\n\t});\n\n\treturn (\n\t\t
    \n\t\t\t\n\n\t\t\t{isDragActive ? (\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t

    Drop files...

    \n\t\t\t\t
    \n\t\t\t) : (\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t

    \n\t\t\t\t\t\tDrag and drop multiple files here, or{' '}\n\t\t\t\t\t\tclick to select files\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t)}\n\t\t
    \n\t);\n};\n","import React, { FC, useRef } from 'react';\nimport classNames from 'classnames';\nimport { createUseThemedStyles } from '@/hooks';\nimport { focus } from '@/jss';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tfileInputButton: {\n\t\tmargin: 0,\n\t\tcursor: 'pointer',\n\t\toverflow: 'hidden',\n\t\tposition: 'relative',\n\t\t'&:focus-within': {\n\t\t\t...focus(theme.colors.primary),\n\t\t},\n\t},\n\tdisabled: {\n\t\tcursor: 'default',\n\t\t'&:hover': {\n\t\t\tcursor: 'default',\n\t\t},\n\t},\n\tfileInput: {\n\t\ttop: 0,\n\t\tleft: 0,\n\t\twidth: 0,\n\t\theight: 0,\n\t\topacity: 0,\n\t\tposition: 'absolute',\n\t\tpointerEvents: 'none',\n\t},\n}));\n\ninterface FileInputButtonProps {\n\taccept: string;\n\tonClick?(event: React.MouseEvent): void;\n\tonChange(file: File): void;\n\tclassName?: string;\n\tdisabled?: boolean;\n}\n\nexport const FileInputButton: FC = ({\n\taccept,\n\tonClick,\n\tonChange,\n\tclassName,\n\tdisabled,\n\tchildren,\n}) => {\n\tconst classes = useStyles();\n\tconst inputRef = useRef(null);\n\n\tfunction handleFileClick(event: React.MouseEvent) {\n\t\tif (onClick) {\n\t\t\tonClick(event);\n\t\t}\n\n\t\tif (inputRef.current) {\n\t\t\tinputRef.current.value = '';\n\t\t}\n\t}\n\n\tfunction handleFileChange(event: React.ChangeEvent) {\n\t\tif (disabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { files } = event.target;\n\n\t\tif (!files || (files && files.length > 1)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = files[0];\n\n\t\tonChange(file);\n\t}\n\n\treturn (\n\t\t\n\t);\n};\n","import React from 'react';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tfilterTabs: {\n\t\tdisplay: 'flex',\n\t\tjustifyContent: 'space-between',\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t},\n\ttab: {\n\t\tborder: 0,\n\t\tmarginRight: 32,\n\t\t...theme.fonts.s,\n\t\tpadding: '20px 0',\n\t\tappearance: 'none',\n\t\tposition: 'relative',\n\t\tbackgroundColor: 'transparent',\n\t\t'&:last-child': {\n\t\t\tmarginRight: 0,\n\t\t},\n\t},\n\tactiveTab: {\n\t\t...theme.fonts.openSansBold,\n\t\t'&:after': {\n\t\t\tcontent: '\"\"',\n\t\t\tdisplay: 'block',\n\t\t\tposition: 'absolute',\n\t\t\tleft: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\theight: 2,\n\t\t\tbackgroundColor: theme.colors.primary,\n\t\t},\n\t},\n}));\n\ninterface FilterTab {\n\ttitle: string;\n\tvalue: string;\n}\n\ninterface FilterTabProps {\n\tclassName?: string;\n\ttabs: FilterTab[];\n\tvalue: string;\n\tonChange(value: string): void;\n\taside?: JSX.Element;\n}\n\nexport const FilterTabs = ({ className, tabs, value, onChange, aside }: FilterTabProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{tabs.map((tab, index) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tonChange(tab.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{tab.title}\n\t\t\t\t\t\t\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t
    \n\t\t\t{aside}\n\t\t
    \n\t);\n};\n","var _circle, _g, _defs;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconQuestion(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 64,\n height: 64,\n viewBox: \"0 0 64 64\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 32,\n cy: 32,\n r: 30.5896,\n fill: \"white\",\n stroke: \"currentColor\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0_1104_1062)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M47.2837 32.4777C47.2837 40.6566 40.6543 47.2837 32.4777 47.2837C24.3012 47.2837 17.6718 40.6566 17.6718 32.4777C17.6718 24.3036 24.3012 17.6718 32.4777 17.6718C40.6543 17.6718 47.2837 24.3036 47.2837 32.4777ZM32.875 22.5673C29.6215 22.5673 27.5464 23.9378 25.9169 26.3737C25.7058 26.6893 25.7764 27.1149 26.079 27.3443L28.1506 28.9151C28.4613 29.1507 28.9041 29.0947 29.1455 28.7884C30.212 27.4357 30.9433 26.6513 32.5666 26.6513C33.7862 26.6513 35.2948 27.4362 35.2948 28.6189C35.2948 29.513 34.5567 29.9722 33.3525 30.6473C31.9481 31.4346 30.0897 32.4145 30.0897 34.8658V35.1046C30.0897 35.5002 30.4104 35.821 30.8061 35.821H34.1494C34.545 35.821 34.8658 35.5002 34.8658 35.1046V35.025C34.8658 33.3258 39.8321 33.255 39.8321 28.6568C39.8321 25.194 36.2402 22.5673 32.875 22.5673V22.5673ZM32.4777 37.3732C30.9634 37.3732 29.7315 38.6052 29.7315 40.1195C29.7315 41.6338 30.9634 42.8658 32.4777 42.8658C33.9921 42.8658 35.224 41.6338 35.224 40.1195C35.224 38.6052 33.9921 37.3732 32.4777 37.3732Z\",\n fill: \"currentColor\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_1104_1062\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n width: 30.5672,\n height: 30.5672,\n fill: \"white\",\n transform: \"translate(17.1941 17.1941)\"\n })))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconQuestion);\nexport default __webpack_public_path__ + \"static/media/icon-question.6347b078.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC, useRef, useEffect, useCallback } from 'react';\nimport { Col, Container, Row } from 'react-bootstrap';\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as HackettLogo } from '@/assets/logos/logo-hackett-white.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tfooter: {\n\t\tleft: 0,\n\t\tbottom: 0,\n\t\twidth: '100%',\n\t\tpadding: '32px 0',\n\t\tposition: 'absolute',\n\t\talignItems: 'center',\n\t\tbackgroundColor: theme.colors.primary,\n\t\t'& p a': {\n\t\t\ttextDecoration: 'underline',\n\t\t},\n\t},\n}));\n\nexport const Footer: FC = () => {\n\tconst classes = useStyles();\n\tconst footerRef = useRef(null);\n\tconst year = useRef(new Date().getFullYear());\n\n\tconst handleWindowResize = useCallback(() => {\n\t\tsetBodyPadding();\n\t}, []);\n\n\tuseEffect(() => {\n\t\tsetBodyPadding();\n\t\twindow.addEventListener('resize', handleWindowResize);\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('resize', handleWindowResize);\n\t\t};\n\t}, [handleWindowResize]);\n\n\tfunction setBodyPadding() {\n\t\tif (!footerRef.current) return;\n\n\t\tconst footerHeight = footerRef.current.clientHeight;\n\t\tdocument.body.style.paddingBottom = `${footerHeight}px`;\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    Notice of Processing
    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tAny personal data that you provide us, which is collected or processed in connection\n\t\t\t\t\t\t\t\twith your use of our services or site, will be processed in accordance with our Privacy\n\t\t\t\t\t\t\t\tPolicy located at{' '}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\twww.thehackettgroup.com/privacy-statement\n\t\t\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t\t\tand, if you provide us with personal data from persons located in the European Economic\n\t\t\t\t\t\t\t\tArea (“EEA”), we may require your data to be processed outside of the EEA (including our\n\t\t\t\t\t\t\t\tdesignated third party sub-processors who assist us in our operations). We may aggregate\n\t\t\t\t\t\t\t\tand de-identify the responses we receive and place them into reports that we distribute\n\t\t\t\t\t\t\t\tto one or more of our current and prospective clients.\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tCopyright © {year.current} The Hackett Group, Inc. All Rights Reserved.\n\t\t\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { PropsWithChildren, useCallback, useState } from 'react';\n\nimport { accountService } from '@/lib/services';\nimport { LoadingButton } from '@/components';\nimport { useHandleError, useAnalytics } from '@/hooks';\n\ninterface FreshDeskLinkProps {\n\tclassName?: string;\n\tforTickets?: boolean\n}\n\nexport const FreshDeskLink = ({ className, forTickets = false, children }: PropsWithChildren) => {\n\tconst handleError = useHandleError();\n\tconst [isLoading, setIsLoading] = useState(false);\n const analytics = useAnalytics();\n\n\tconst handleButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\t\t\tconst serviceAction = forTickets ? accountService.getFreshdeskTicketsUrl : accountService.getFreshdeskSupportUrl;\n\t\t\tconst response = await serviceAction().fetch();\n\n\t\t\tanalytics.handleAnalyticOutbound(response.freshdeskSupportUrl);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [handleError, forTickets]);\n\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12, _path13, _path14, _path15, _path16;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgLogoHackettConnect(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 588,\n height: 54,\n viewBox: \"0 0 588 54\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0 4.46051V51.8487H5.63283V29.6701H27.2587V51.8487H32.8915V4.46051H27.2587V24.0372H5.63283V4.46051H0Z\",\n fill: \"white\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M61.5078 52.6541C65.4182 52.6541 68.6762 51.3666 71.1437 49.0823V51.8487H76.5287V17.0986H71.1437V19.5502C68.7274 17.3763 65.4255 16.0455 61.1361 16.0455C51.7455 16.0455 43.0176 23.4586 43.0176 34.5356C43.0176 43.9263 50.4308 52.6541 61.5078 52.6541ZM61.1981 21.4305C65.3923 21.4305 68.8679 23.2338 71.1437 25.9018V42.8006C68.7583 45.6216 65.1837 47.2691 61.4459 47.2691C53.6294 47.2691 48.4027 41.1303 48.4027 34.4737C48.4027 26.6572 54.5415 21.4305 61.1981 21.4305Z\",\n fill: \"white\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M119.014 46.2103L115.148 42.4515L114.351 43.2865C111.961 45.7909 108.603 47.2691 105.081 47.2691C97.2641 47.2691 92.0374 41.1303 92.0374 34.4737C92.0374 26.6572 98.1762 21.4305 104.833 21.4305C108.784 21.4305 112.075 23.0284 114.341 25.4643L115.149 26.3326L119.01 22.4711L118.234 21.6627C114.991 18.2872 110.36 16.0455 104.771 16.0455C95.3802 16.0455 86.6524 23.4586 86.6524 34.5356C86.6524 43.9263 94.0655 52.6541 105.143 52.6541C110.037 52.6541 114.862 50.607 118.24 47.0298L119.014 46.2103Z\",\n fill: \"white\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M128.061 51.8487H133.446V36.1817L150.578 53.3137L154.364 49.5279L139.185 34.3498L154.302 19.2336L150.516 15.4478L133.446 32.5179V0H128.061V51.8487Z\",\n fill: \"white\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M197.115 30.0483L166.335 35.4286C166.808 41.703 171.902 47.2691 179.405 47.2691C181.678 47.2691 183.956 46.6424 185.887 45.5065L186.878 44.9236L189.574 49.56L188.601 50.139C185.819 51.7949 182.643 52.6541 179.405 52.6541C168.328 52.6541 160.914 43.9263 160.914 34.5356C160.914 23.4534 169.71 16.0455 179.095 16.0455C187.922 16.0455 194.48 21.5997 196.728 28.8053L197.115 30.0483ZM189.174 25.9832L167.118 29.8724C168.966 24.6549 173.886 21.4305 179.095 21.4305C183.379 21.4305 186.872 23.2416 189.174 25.9832Z\",\n fill: \"white\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M210.733 40.0493V22.4837H225.353V17.0986H210.733V7.9298H205.348V17.0986H202.25V22.4837H205.348V40.1113C205.348 46.2571 210.199 52.5302 218.138 52.5302C220.327 52.5302 222.577 51.9167 224.493 50.7534L225.453 50.171L222.769 45.5556L221.784 46.1188C220.637 46.7739 219.344 47.1452 218.076 47.1452C213.502 47.1452 210.733 43.5683 210.733 40.0493Z\",\n fill: \"white\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M240.211 40.0493V22.4837H254.831V17.0986H240.211V7.9298H234.826V17.0986H231.728V22.4837H234.826V40.1113C234.826 46.2571 239.676 52.5302 247.616 52.5302C249.805 52.5302 252.055 51.9167 253.971 50.7534L254.93 50.171L252.247 45.5556L251.261 46.1188C250.115 46.7739 248.822 47.1452 247.554 47.1452C242.98 47.1452 240.211 43.5683 240.211 40.0493Z\",\n fill: \"white\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M328.922 45.0112L324.958 41.047L324.15 41.8294C320.517 45.3443 315.659 47.331 310.696 47.331C299.513 47.331 291.334 38.4447 291.334 28.2166C291.334 17.0313 300.222 8.85432 310.386 8.85432C316.147 8.85432 320.934 11.0826 324.315 14.5217L325.124 15.3443L329.096 11.3716L328.3 10.5629C323.875 6.07372 317.636 3.22148 310.386 3.22148C297.46 3.22148 285.701 13.489 285.701 28.2785C285.701 41.2051 295.968 52.9639 310.758 52.9639C317.258 52.9639 323.493 50.3644 328.102 45.8199L328.922 45.0112Z\",\n fill: \"white\"\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M355.28 16.0455C345.89 16.0455 337.162 23.4586 337.162 34.5356C337.162 43.9263 344.575 52.6541 355.652 52.6541C365.043 52.6541 373.771 45.241 373.771 34.1639C373.771 24.7733 366.357 16.0455 355.28 16.0455ZM355.342 21.4305C363.159 21.4305 368.385 27.5693 368.385 34.2259C368.385 42.0424 362.247 47.2691 355.59 47.2691C347.774 47.2691 342.547 41.1303 342.547 34.4737C342.547 26.6572 348.686 21.4305 355.342 21.4305Z\",\n fill: \"white\"\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M409.728 51.8487H415.113V28.4644C415.113 22.3359 410.402 16.0455 402.446 16.0455C399.021 16.0455 395.439 17.4901 392.627 19.403C391.35 20.2709 390.204 21.2544 389.279 22.2808V17.0986H383.894V51.8487H389.279V34.2259C389.279 27.5727 394.503 21.4305 402.384 21.4305C407.015 21.4305 409.728 25.0015 409.728 28.5263V51.8487Z\",\n fill: \"white\"\n })), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M454.149 51.8487H459.534V28.4644C459.534 22.3359 454.824 16.0455 446.868 16.0455C443.443 16.0455 439.86 17.4901 437.048 19.403C435.772 20.2709 434.625 21.2544 433.7 22.2808V17.0986H428.315V51.8487H433.7V34.2259C433.7 27.5727 438.924 21.4305 446.806 21.4305C451.436 21.4305 454.149 25.0015 454.149 28.5263V51.8487Z\",\n fill: \"white\"\n })), _path12 || (_path12 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M505.84 30.0483L475.06 35.4286C475.532 41.703 480.626 47.2691 488.129 47.2691C490.403 47.2691 492.681 46.6424 494.612 45.5065L495.603 44.9236L498.298 49.56L497.326 50.139C494.544 51.7949 491.367 52.6541 488.129 52.6541C477.052 52.6541 469.639 43.9263 469.639 34.5356C469.639 23.4534 478.434 16.0455 487.819 16.0455C496.647 16.0455 503.205 21.5997 505.452 28.8053L505.84 30.0483ZM497.899 25.9832L475.842 29.8724C477.691 24.6549 482.611 21.4305 487.819 21.4305C492.104 21.4305 495.597 23.2416 497.899 25.9832Z\",\n fill: \"white\"\n })), _path13 || (_path13 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M543.337 46.2103L539.471 42.4515L538.674 43.2865C536.283 45.7909 532.925 47.2691 529.403 47.2691C521.587 47.2691 516.36 41.1303 516.36 34.4737C516.36 26.6572 522.499 21.4305 529.155 21.4305C533.106 21.4305 536.398 23.0284 538.664 25.4643L539.471 26.3326L543.333 22.4711L542.556 21.6627C539.313 18.2872 534.682 16.0455 529.093 16.0455C519.703 16.0455 510.975 23.4586 510.975 34.5356C510.975 43.9263 518.388 52.6541 529.465 52.6541C534.36 52.6541 539.184 50.607 542.563 47.0298L543.337 46.2103Z\",\n fill: \"white\"\n })), _path14 || (_path14 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M557.768 40.0493V22.4837H572.389V17.0986H557.768V7.9298H552.383V17.0986H549.286V22.4837H552.383V40.1113C552.383 46.2571 557.234 52.5302 565.174 52.5302C567.363 52.5302 569.613 51.9167 571.529 50.7534L572.488 50.171L569.805 45.5556L568.819 46.1188C567.673 46.7739 566.38 47.1452 565.112 47.1452C560.538 47.1452 557.768 43.5683 557.768 40.0493Z\",\n fill: \"white\"\n })), _path15 || (_path15 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M577.705 13.9505H579.112V9.15892H580.779V7.91076H576.055V9.15892H577.705V13.9505Z\",\n fill: \"white\"\n })), _path16 || (_path16 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M582.547 9.51912L583.929 13.9505H585.118L586.576 9.51912H586.626L586.593 10.5327V13.9505H588V7.91076H585.99L584.565 12.183L583.225 7.91076H581.156V13.9505H582.522V10.449L582.488 9.51912H582.547Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogoHackettConnect);\nexport default __webpack_public_path__ + \"static/media/logo-hackett-connect.4ef2cac5.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { useHistory } from 'react-router-dom';\nimport { Button } from 'react-bootstrap';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as QuestionIcon } from '@/assets/icons/icon-question.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tsupportOuter: {\n\t\tborderRadius: 4,\n\t\tpadding: '48px 48px 38px',\n\t\tbackgroundColor: theme.colors.gray200,\n\t\tborder: `1px solid ${theme.colors.gray400}`,\n\t},\n}));\n\nexport const GetHelp = () => {\n\tconst classes = useStyles();\n\tconst history = useHistory();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t\t

    \n\t\t\t\tYour Advisory Team is here to help.\n\t\t\t

    \n\t\t\t

    Reach out to us for knowledge, insight, or assistance.

    \n\n\t\t\t {\n\t\t\t\t\thistory.push('/advisory-team');\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\tMeet Your Team\n\t\t\t\n\t\t
    \n\t);\n};\n","var _g, _defs;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgAvatar(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 20,\n height: 20,\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0_2418_2127)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10 0.3125C4.64844 0.3125 0.3125 4.64844 0.3125 10C0.3125 15.3516 4.64844 19.6875 10 19.6875C15.3516 19.6875 19.6875 15.3516 19.6875 10C19.6875 4.64844 15.3516 0.3125 10 0.3125Z\",\n fill: \"#00A1DE\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.4375 7.5C13.4375 5.60156 11.8984 4.0625 10 4.0625C8.10156 4.0625 6.5625 5.60156 6.5625 7.5C6.5625 9.39844 8.10156 10.9375 10 10.9375C11.8984 10.9375 13.4375 9.39844 13.4375 7.5Z\",\n fill: \"white\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.27734 14.8359C5.65234 16.4609 7.70703 17.5 10 17.5C12.293 17.5 14.3477 16.4609 15.7227 14.8359C14.9883 13.4531 13.5508 12.5 11.875 12.5C11.7812 12.5 11.6875 12.5156 11.5977 12.543C11.0938 12.707 10.5586 12.8125 10 12.8125C9.44141 12.8125 8.91016 12.707 8.40234 12.543C8.3125 12.5156 8.21875 12.5 8.125 12.5C6.44922 12.5 5.01172 13.4531 4.27734 14.8359Z\",\n fill: \"white\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_2418_2127\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n width: 20,\n height: 20,\n fill: \"white\"\n })))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgAvatar);\nexport default __webpack_public_path__ + \"static/media/avatar.6a72a286.svg\";\nexport { ForwardRef as ReactComponent };","var _polygon;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconX(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n fillRule: \"evenodd\",\n points: \"9 1 8.999 6.999 15 7 15 9 8.999 8.999 9 15 7 15 6.999 8.999 1 9 1 7 6.999 6.999 7 1\",\n transform: \"rotate(-45 8 8)\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconX);\nexport default __webpack_public_path__ + \"static/media/icon-x.39c873d4.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Button, Collapse, Dropdown as ReactBootstrapDropdown } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { SCROLL_DIRECTION, createUseThemedStyles, useScrollDirection, useSignOut } from '@/hooks';\nimport { Dropdown, DropdownMenu, DropdownToggle, HeaderMenuButton, HeaderSearch } from '@/components';\n\nimport { ReactComponent as HackettLogo } from '@/assets/logos/logo-hackett-connect.svg';\nimport { ReactComponent as AvatarIcon } from '@/assets/icons/avatar.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdesktopHeader: {\n\t\tdisplay: 'flex',\n\t\tpadding: '30px 50px',\n\t\talignItems: 'center',\n\t\ttransition: '300ms padding',\n\t\tjustifyContent: 'space-between',\n\t\t'& .hackett-logo': {\n\t\t\tmarginBottom: 15,\n\t\t\ttransition: '300ms margin, 300ms width',\n\t\t},\n\t\t'& a': {\n\t\t\tdisplay: 'block',\n\t\t\t'&:hover': {\n\t\t\t\ttextDecoration: 'none',\n\t\t\t},\n\t\t},\n\t\t'&.minified': {\n\t\t\tpadding: '10px 50px',\n\t\t\t'& .hackett-logo': {\n\t\t\t\twidth: 345,\n\t\t\t\tmarginBottom: 0,\n\t\t\t},\n\t\t},\n\t},\n\tadvisorsIconButton: {\n\t\tcolor: `${theme.colors.white} !important`,\n\t\tmarginRight: 15,\n\t\t'& svg': {\n\t\t\tfill: theme.colors.white,\n\t\t},\n\t},\n\theaderSearch: {\n\t\twidth: '100%',\n\t},\n}));\n\ninterface HeaderDesktopProps {\n\tmenuOpen: boolean;\n\tonMenuButtonClick(menuOpen: boolean): void;\n\tnavigationLinks: Record;\n\tclassName?: string;\n}\n\nexport const HeaderDesktop = ({ menuOpen, onMenuButtonClick, navigationLinks, className }: HeaderDesktopProps) => {\n\tconst classes = useStyles();\n\tconst { signOut } = useSignOut();\n\tconst scrollDirection = useScrollDirection();\n\tconst headerRef = useRef(null);\n\tconst [isMinified, setIsMinified] = useState(false);\n\tconst utilityNavRef = useRef(null);\n\tconst searchBarRef = useRef(null);\n\n\tfunction setSearchBarWidth() {\n\t\tconst utilityWidth = utilityNavRef.current?.clientWidth ?? 0;\n\n\t\tif (!searchBarRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tsearchBarRef.current.style.width = utilityWidth > 0 ? `${utilityWidth}px` : '100%';\n\t}\n\n\tconst minifyHeader = useCallback(() => {\n\t\theaderRef.current?.classList.add('minified');\n\t\tsetIsMinified(true);\n\t\tsetSearchBarWidth();\n\t}, []);\n\n\tfunction expandHeader() {\n\t\theaderRef.current?.classList.remove('minified');\n\t\tsetIsMinified(false);\n\t}\n\n\tconst handleWindowResize = useCallback(() => {\n\t\texpandHeader();\n\t}, []);\n\n\tuseEffect(() => {\n\t\twindow.addEventListener('resize', handleWindowResize);\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('resize', handleWindowResize);\n\t\t};\n\t}, [handleWindowResize]);\n\n\tuseEffect(() => {\n\t\tif (scrollDirection === SCROLL_DIRECTION.DOWN) {\n\t\t\tminifyHeader();\n\t\t} else {\n\t\t\texpandHeader();\n\t\t}\n\t}, [minifyHeader, scrollDirection]);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tTap into the collective knowledge of the world's best businesses and our experts.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{navigationLinks.ACCOUNT.map((link, linkIndex) => {\n\t\t\t\t\t\t\t\t\t\treturn link.external ? (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{link.title}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{link.title}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tSign Out\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tonMenuButtonClick(open);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useState } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Button, Collapse } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { NaviationSectionLink } from '@/components';\nimport { ReactComponent as DownChevron } from '@/assets/icons/icon-chevron-down.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tnavigationList: {\n\t\tmargin: 0,\n\t\tpadding: 0,\n\t\tlistStyle: 'none',\n\t\t'& li': {\n\t\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\t\t'& a, & button': {\n\t\t\t\twidth: '100%',\n\t\t\t\tdisplay: 'block',\n\t\t\t\ttextAlign: 'left',\n\t\t\t\tpadding: '16px 24px',\n\t\t\t},\n\t\t\t'&:last-of-type': {\n\t\t\t\tmargin: 0,\n\t\t\t},\n\t\t},\n\t},\n\tnavigationCollapseList: {\n\t\tmargin: 0,\n\t\tlistStyle: 'none',\n\t\tpadding: '16px 24px',\n\t\tbackgroundColor: theme.colors.gray100,\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\t'& li': {\n\t\t\tmarginBottom: 8,\n\t\t\t'& a': {\n\t\t\t\tdisplay: 'block',\n\t\t\t},\n\t\t\t'&:last-of-type': {\n\t\t\t\tmargin: 0,\n\t\t\t},\n\t\t},\n\t},\n\tchevron: {\n\t\ttransition: '200ms transform',\n\t},\n\tflip: {\n\t\ttransform: 'rotate(180deg)',\n\t},\n}));\n\ninterface HeaderMenuAccordionProps {\n\ttitle: string;\n\tlinks: NaviationSectionLink[];\n\taside?: JSX.Element;\n}\n\nexport const HeaderMenuAccordion = ({ title, links, aside }: HeaderMenuAccordionProps) => {\n\tconst classes = useStyles();\n\tconst [show, setShow] = useState(false);\n\n\treturn (\n\t\t<>\n\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShow(!show);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{title}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    • \n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
      \n\t\t\t\t\t\t{links.map((link, linkIndex) => {\n\t\t\t\t\t\t\tif (link.external) {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t{aside}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React from 'react';\nimport { Button } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tmenuButton: {\n\t\twidth: 44,\n\t\theight: 44,\n\t\tpadding: 0,\n\t\talignItems: 'center',\n\t\tjustifyContent: 'center',\n\t\t'& span': {\n\t\t\twidth: 30,\n\t\t\theight: 4,\n\t\t\tflexShrink: 0,\n\t\t\tborderRadius: 1,\n\t\t\tposition: 'relative',\n\t\t\tbackgroundColor: theme.colors.white,\n\t\t\ttransition: 'background-color 200ms',\n\t\t\t'&:before, &:after': {\n\t\t\t\ttop: 0,\n\t\t\t\tleft: 0,\n\t\t\t\tright: 0,\n\t\t\t\tbottom: 0,\n\t\t\t\tcontent: '\"\"',\n\t\t\t\tborderRadius: 1,\n\t\t\t\tposition: 'absolute',\n\t\t\t\ttransition: 'transform 200ms',\n\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t},\n\t\t\t'&:before': {\n\t\t\t\ttransform: 'translateY(-8px)',\n\t\t\t},\n\t\t\t'&:after': {\n\t\t\t\ttransform: 'translateY(8px)',\n\t\t\t},\n\t\t},\n\t\t'&.active span': {\n\t\t\tbackgroundColor: 'transparent',\n\t\t\t'&:before': {\n\t\t\t\ttransform: 'translateY(0) rotate(45deg)',\n\t\t\t},\n\t\t\t'&:after': {\n\t\t\t\ttransform: 'translateY(0) rotate(-45deg)',\n\t\t\t},\n\t\t},\n\t},\n}));\n\ninterface HeaderMenuButtonProps {\n\topen: boolean;\n\tonClick(open: boolean): void;\n}\n\nexport const HeaderMenuButton = ({ open, onClick }: HeaderMenuButtonProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t {\n\t\t\t\tonClick(!open);\n\t\t\t}}\n\t\t>\n\t\t\t\n\t\t\n\t);\n};\n","var _g, _defs;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgLogoHackettR(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 234,\n height: 29,\n viewBox: \"0 0 234 29\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0_1109_221)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M9.3137 5.1879L1.8117 11.9639H5.4727L9.3137 7.6539V5.1879Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M0.0270004 2.6765V11.9635H1.76L9.314 2.7755V2.6765H0.0270004Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M9.3137 9.64551L6.5847 11.9635H9.3137V9.64551Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M5.58 12.8186L1.996 15.8656L4.712 12.8186H0V22.1046H9.286V17.9356L6.492 20.3616L9.286 17.2226V13.6046L3.547 18.6606L8.754 12.8186H5.58Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.1897 12.8188L10.2587 17.0938V20.9108L17.4637 12.8188H15.1897Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.259 16.1328L13.212 12.8188H10.259V16.1328Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.259 22.1054H19.545V13.0074L10.259 20.9234V22.1054Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.2105 20.9627L10.2595 20.9227V20.9117L10.2105 20.9627Z\",\n fill: \"#5D87A1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M11.408 10.975H22.379V0H11.408V10.975Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M31.9934 11.2016C31.9934 9.5006 31.9684 7.8006 31.9194 6.0996C30.2184 6.0996 28.0254 6.1976 26.6444 6.3706C26.7184 6.1246 26.7674 5.8536 26.7674 5.5816C26.7674 5.3346 26.7184 5.0876 26.6444 4.8176C28.7644 4.8906 30.8844 4.9396 33.0034 4.9396C35.1234 4.9396 37.2434 4.8906 39.3624 4.8176C39.2884 5.0876 39.2394 5.3346 39.2394 5.6056C39.2394 5.8536 39.2884 6.1246 39.3624 6.3706C37.9824 6.1976 35.7894 6.0996 34.0884 6.0996C34.0404 7.8006 34.0144 9.5006 34.0144 11.2016V15.4416C34.0144 17.5606 34.1124 19.7056 34.2114 21.8256C33.7924 21.7506 33.3984 21.7026 33.0034 21.7026C32.6104 21.7026 32.2154 21.7506 31.7964 21.8256C31.8954 19.7056 31.9934 17.5606 31.9934 15.4416V11.2016Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M40.8176 10.2651C40.8176 7.9961 40.7686 4.8171 40.6206 3.1651C40.9906 3.2391 41.3596 3.2891 41.7306 3.2891C42.1006 3.2891 42.4696 3.2391 42.8386 3.1651C42.6916 4.8171 42.6426 7.9961 42.6426 10.1411V12.0151H42.6916C43.6026 10.6101 44.8606 9.7951 46.6356 9.7951C48.4586 9.7951 50.5796 10.6841 50.5796 14.0851C50.5796 15.4901 50.4806 16.9681 50.4806 18.6451C50.4806 19.7291 50.4806 20.7641 50.5286 21.8251C50.1596 21.7501 49.8386 21.7021 49.4946 21.7021C49.1496 21.7021 48.8276 21.7501 48.4836 21.8251C48.5336 20.0261 48.6566 18.2271 48.6566 16.3281V14.8241C48.6566 12.4091 47.5966 11.0771 45.9696 11.0771C43.6786 11.0771 42.6426 12.5561 42.6426 15.1201C42.6426 16.9941 42.6916 20.1741 42.8386 21.8251C42.4696 21.7501 42.1006 21.7021 41.7306 21.7021C41.3596 21.7021 40.9906 21.7501 40.6206 21.8251C40.7686 20.1741 40.8176 16.9941 40.8176 14.7261V10.2651Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M55.5579 14.8496C56.5689 14.8736 57.7269 14.9236 58.7609 14.9236C59.8459 14.9236 61.0049 14.8736 62.0399 14.8496C62.0399 13.0986 61.5719 10.5856 59.0099 10.5856C56.5929 10.5856 55.6819 13.0746 55.5579 14.8496ZM58.9599 9.79559C62.4109 9.79559 64.0619 12.0886 64.0619 14.8246C64.0619 15.1446 64.0369 15.4656 64.0129 15.7866C62.2369 15.7626 60.4869 15.7126 58.7369 15.7126C57.6519 15.7126 56.5929 15.7626 55.5079 15.7866C55.4849 16.0316 55.4849 16.2556 55.4849 16.4756C55.4849 19.0406 57.0119 21.0356 59.7469 21.0356C61.0549 21.0356 62.5809 20.2726 63.4459 19.2866L63.5689 19.3616L63.4209 20.5676C62.4339 21.3576 60.8329 22.0716 59.3049 22.0716C55.7559 22.0716 53.3149 19.5586 53.3149 16.2796C53.3149 12.2856 55.3349 9.79559 58.9599 9.79559Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M86.3684 11.2016C86.3684 9.0816 86.2704 6.9376 86.1714 4.8176C86.5924 4.8906 86.9854 4.9396 87.3794 4.9396C87.7744 4.9396 88.1684 4.8906 88.5874 4.8176C88.4894 6.9376 88.3904 9.0816 88.3904 11.2016V15.4416C88.3904 17.5606 88.4894 19.7056 88.5874 21.8256C88.1684 21.7506 87.7744 21.7026 87.3794 21.7026C86.9854 21.7026 86.5924 21.7506 86.1714 21.8256C86.2704 19.7056 86.3684 17.5606 86.3684 15.4416V13.2236C84.6444 13.1976 82.9424 13.1736 81.2184 13.1736C79.4924 13.1736 77.7914 13.1976 76.0664 13.2236V15.4416C76.0664 17.5606 76.1644 19.7056 76.2634 21.8256C75.8454 21.7506 75.4494 21.7026 75.0554 21.7026C74.6624 21.7026 74.2664 21.7506 73.8474 21.8256C73.9454 19.7056 74.0444 17.5606 74.0444 15.4416V11.2016C74.0444 9.0816 73.9454 6.9376 73.8474 4.8176C74.2664 4.8906 74.6624 4.9396 75.0554 4.9396C75.4494 4.9396 75.8454 4.8906 76.2634 4.8176C76.1644 6.9376 76.0664 9.0816 76.0664 11.2016V12.0636C77.7914 12.0886 79.4924 12.1386 81.2184 12.1386C82.9424 12.1386 84.6444 12.0886 86.3684 12.0636V11.2016Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M99.0129 15.6132C97.3119 16.1802 93.8619 16.0072 93.8619 18.6952C93.8619 20.2482 94.9219 21.0352 96.0069 21.0352C97.2639 21.0352 98.3479 20.2242 98.9149 19.3112L99.0129 15.6132ZM92.9249 11.2252C94.4049 10.1172 95.5879 9.7952 96.8939 9.7952C99.2599 9.7952 100.887 11.2502 100.887 13.4442C100.887 15.2932 100.789 17.1172 100.789 19.1882C100.789 20.0002 100.789 21.0122 101.749 21.0122C101.9 21.0122 102.095 21.0122 102.266 20.9132V21.4542C101.922 21.6032 101.33 21.8002 100.69 21.8002C99.6299 21.8002 99.0879 21.1102 98.9899 20.2722C97.8059 21.4542 96.7949 22.0722 95.1189 22.0722C93.4679 22.0722 91.8409 20.9132 91.8409 19.0402C91.8409 17.0672 93.1719 16.0072 95.3179 15.6632C98.8909 15.0962 99.0129 14.8992 99.0129 13.9372C99.0129 12.2852 98.2749 10.8312 96.3019 10.8312C94.9949 10.8312 93.7629 11.4482 93.1979 12.5082H92.9249V11.2252Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M110.451 9.7959C112.251 9.7959 113.804 10.3139 114.421 10.8809C114.198 11.3729 114 11.9159 113.877 12.5079H113.68C113.212 11.6699 112.078 10.5859 110.526 10.5859C107.543 10.5859 106.335 12.8779 106.335 15.9099C106.335 19.2859 107.863 21.0359 110.597 21.0359C111.906 21.0359 113.432 20.2719 114.297 19.2859L114.421 19.3609C114.346 19.7539 114.297 20.1749 114.272 20.5679C113.286 21.3579 111.681 22.0719 110.155 22.0719C107.296 22.0719 104.164 20.3469 104.164 15.9339C104.164 11.6699 107.296 9.7959 110.451 9.7959Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M117.082 10.2651C117.082 7.9961 117.034 4.8171 116.883 3.1651C117.255 3.2391 117.625 3.2891 117.994 3.2891C118.364 3.2891 118.735 3.2391 119.104 3.1651C118.954 4.8171 118.907 7.9961 118.907 10.2651V14.7511C118.907 15.0471 119.004 15.2191 119.203 15.2191C119.448 15.2191 119.77 14.9481 120.163 14.6511C120.753 14.2081 123.17 11.7931 124.697 10.0431C124.97 10.1171 125.289 10.1661 125.635 10.1661C125.979 10.1661 126.3 10.1171 126.869 10.0431C124.821 11.6941 122.898 13.3461 121.198 14.9971C123.073 17.2651 125.118 19.5581 127.14 21.8251C126.573 21.7501 126.154 21.7021 125.734 21.7021C125.314 21.7021 124.896 21.7501 124.477 21.8251C123.047 19.9521 120.683 17.1901 119.523 15.9581C119.424 15.8351 119.275 15.7131 119.152 15.7131C119.004 15.7131 118.907 15.8111 118.907 16.0071V17.4861C118.907 18.9411 118.954 20.3711 119.104 21.8251C118.735 21.7501 118.364 21.7021 117.994 21.7021C117.625 21.7021 117.255 21.7501 116.883 21.8251C117.034 20.1741 117.082 16.9941 117.082 14.7261V10.2651Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M130.441 14.8496C131.453 14.8736 132.612 14.9236 133.648 14.9236C134.731 14.9236 135.891 14.8736 136.926 14.8496C136.926 13.0986 136.456 10.5856 133.895 10.5856C131.478 10.5856 130.566 13.0746 130.441 14.8496ZM133.845 9.79559C137.293 9.79559 138.946 12.0886 138.946 14.8246C138.946 15.1446 138.921 15.4656 138.897 15.7866C137.123 15.7626 135.374 15.7126 133.624 15.7126C132.538 15.7126 131.478 15.7626 130.392 15.7866C130.369 16.0316 130.369 16.2556 130.369 16.4756C130.369 19.0406 131.898 21.0356 134.634 21.0356C135.94 21.0356 137.466 20.2726 138.33 19.2866L138.455 19.3616L138.304 20.5676C137.32 21.3576 135.716 22.0716 134.189 22.0716C130.639 22.0716 128.2 19.5586 128.2 16.2796C128.2 12.2856 130.22 9.79559 133.845 9.79559Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M143.654 6.7392H143.779C143.679 7.9732 143.629 9.1802 143.582 10.3882C143.925 10.3882 145.059 10.3632 146.194 10.3132C146.169 10.4862 146.169 10.6592 146.169 10.8322C146.169 11.0042 146.169 11.1772 146.194 11.3492C145.33 11.3012 144.173 11.3012 143.582 11.3012C143.531 11.5462 143.409 15.4162 143.409 17.5602C143.409 19.4092 143.458 21.2822 145.405 21.2822C145.675 21.2822 146.194 21.2092 146.512 21.1112V21.7022C145.948 21.8992 145.233 22.0722 144.618 22.0722C142.57 22.0722 141.584 20.9132 141.584 18.9902C141.584 17.1902 141.733 14.9732 141.757 11.3012C141.263 11.3012 140.72 11.3012 140.082 11.3492C140.105 11.1522 140.13 10.9792 140.13 10.7832C140.13 10.6102 140.105 10.4622 140.082 10.2892C140.822 10.3392 141.363 10.3632 141.705 10.3632C141.681 9.7222 141.659 8.6622 141.61 7.6032L143.654 6.7392Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M150.507 6.7392H150.63C150.53 7.9732 150.483 9.1802 150.432 10.3882C150.778 10.3882 151.91 10.3632 153.046 10.3132C153.021 10.4862 153.021 10.6592 153.021 10.8322C153.021 11.0042 153.021 11.1772 153.046 11.3492C152.182 11.3012 151.024 11.3012 150.432 11.3012C150.383 11.5462 150.26 15.4162 150.26 17.5602C150.26 19.4092 150.309 21.2822 152.258 21.2822C152.528 21.2822 153.046 21.2092 153.364 21.1112V21.7022C152.798 21.8992 152.083 22.0722 151.468 22.0722C149.421 22.0722 148.437 20.9132 148.437 18.9902C148.437 17.1902 148.584 14.9732 148.608 11.3012C148.114 11.3012 147.573 11.3012 146.933 11.3492C146.957 11.1522 146.982 10.9792 146.982 10.7832C146.982 10.6102 146.957 10.4622 146.933 10.2892C147.672 10.3392 148.214 10.3632 148.56 10.3632C148.534 9.7222 148.51 8.6622 148.46 7.6032L150.507 6.7392Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M176.757 7.8242C175.747 6.6172 173.824 5.4082 171.334 5.4082C167.243 5.4082 164.111 7.8492 164.111 13.3212C164.111 18.1522 166.824 21.1112 171.458 21.1112C172.863 21.1112 174.564 20.8392 175.402 20.3222C175.427 19.3362 175.45 18.3502 175.45 17.3402C175.45 16.1802 175.377 14.9972 175.327 13.9612C175.649 14.0362 176.116 14.0852 176.511 14.0852C176.88 14.0852 177.249 14.0612 177.57 13.9612C177.522 14.7022 177.473 16.3042 177.473 18.9662C177.473 19.6062 177.497 20.2962 177.497 20.9612C176.09 21.4542 173.134 22.1452 171.212 22.1452C165.346 22.1452 161.697 19.0892 161.697 13.3212C161.697 7.7262 165.493 4.4982 171.334 4.4982C174.661 4.4982 176.461 5.3102 177.619 5.9252C177.373 6.3702 177.126 7.2092 177.054 7.8242H176.757Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M186.913 12.0629C186.739 11.8659 186.197 11.6699 185.704 11.6699C184.128 11.6699 183.189 13.1739 183.189 15.0959C183.189 19.3839 183.189 20.6919 183.287 21.8249C182.97 21.7499 182.623 21.7019 182.304 21.7019C181.958 21.7019 181.638 21.7499 181.267 21.8249C181.366 20.6159 181.366 18.6949 181.366 15.9329V15.1439C181.366 13.8639 181.366 12.1629 181.267 10.0429C181.638 10.1169 181.958 10.1659 182.304 10.1659C182.623 10.1659 182.97 10.1169 183.287 10.0429C183.166 11.2249 183.166 11.8189 183.166 12.4329L183.215 12.4579C184.152 10.6839 185.335 9.7959 186.469 9.7959C186.765 9.7959 186.936 9.8209 187.259 9.9439C187.087 10.3389 187.087 11.2759 187.087 11.9399L186.913 12.0629Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M194.454 21.2817C197.363 21.2817 198.275 18.6947 198.275 15.9337C198.275 13.1737 197.363 10.5857 194.454 10.5857C191.546 10.5857 190.634 13.1737 190.634 15.9337C190.634 18.6947 191.546 21.2817 194.454 21.2817ZM194.454 9.7957C197.313 9.7957 200.444 11.4487 200.444 15.9337C200.444 20.4207 197.313 22.0717 194.454 22.0717C191.596 22.0717 188.465 20.4207 188.465 15.9337C188.465 11.4487 191.596 9.7957 194.454 9.7957Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M203.255 13.9614C203.255 12.8024 203.231 11.4224 203.205 10.0434C203.55 10.1164 203.922 10.1664 204.241 10.1664C204.561 10.1664 204.905 10.1164 205.251 10.0434C205.104 11.9634 205.007 14.4794 205.007 16.8954C205.007 18.5954 205.349 19.4094 205.77 19.8774C206.236 20.3944 206.927 20.7894 207.888 20.7894C209.27 20.7894 210.205 20.0994 210.625 19.2114C211.119 18.1514 211.142 17.9554 211.142 14.0854C211.142 12.7544 211.142 11.2254 211.095 10.0434C211.438 10.1164 211.76 10.1664 212.129 10.1664C212.498 10.1664 212.818 10.1164 213.139 10.0434C212.991 12.6054 212.966 14.9234 212.966 17.5354C212.966 18.9904 212.991 20.4434 213.065 21.8254C212.746 21.7504 212.424 21.7024 212.106 21.7024C211.785 21.7024 211.463 21.7504 211.142 21.8254C211.19 21.1104 211.19 20.3944 211.19 19.7054H211.142C210.305 21.2334 208.849 22.0714 207.296 22.0714C204.734 22.0714 203.182 20.5934 203.182 18.0284C203.182 16.3044 203.255 15.1694 203.255 13.9614Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M222.111 10.831C219.449 10.831 218.44 13.198 218.44 16.032C218.44 19.409 219.694 21.161 222.039 21.161C224.403 21.161 225.513 18.818 225.513 15.835C225.513 11.891 223.712 10.831 222.111 10.831ZM216.614 17.215C216.614 14.948 216.565 11.769 216.417 10.043C216.788 10.117 217.157 10.166 217.527 10.166C217.897 10.166 218.267 10.117 218.636 10.043C218.511 10.904 218.44 11.67 218.44 12.458H218.488C218.983 11.423 220.164 9.79601 222.654 9.79601C225.169 9.79601 227.682 11.62 227.682 15.86C227.682 20.05 224.946 22.072 222.358 22.072C220.533 22.072 219.251 21.209 218.488 19.655H218.44V21.209C218.44 23.476 218.488 26.656 218.636 28.307C218.267 28.233 217.897 28.186 217.527 28.186C217.157 28.186 216.788 28.233 216.417 28.307C216.565 26.656 216.614 23.476 216.614 21.209V17.215Z\",\n fill: \"#002A5B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M228.413 6.62C228.413 6.928 228.469 7.21967 228.581 7.495C228.698 7.76567 228.854 8.00367 229.05 8.209C229.251 8.40967 229.486 8.57067 229.757 8.692C230.028 8.80867 230.317 8.867 230.625 8.867C230.933 8.867 231.222 8.80867 231.493 8.692C231.764 8.57067 231.997 8.40967 232.193 8.209C232.394 8.00367 232.55 7.76567 232.662 7.495C232.779 7.21967 232.837 6.928 232.837 6.62C232.837 6.312 232.779 6.02267 232.662 5.752C232.55 5.47667 232.394 5.23867 232.193 5.038C231.997 4.83267 231.764 4.67166 231.493 4.555C231.222 4.43366 230.933 4.373 230.625 4.373C230.317 4.373 230.028 4.43366 229.757 4.555C229.486 4.67166 229.251 4.83267 229.05 5.038C228.854 5.23867 228.698 5.47667 228.581 5.752C228.469 6.02267 228.413 6.312 228.413 6.62ZM228.119 6.62C228.119 6.27466 228.184 5.95033 228.315 5.647C228.446 5.339 228.623 5.073 228.847 4.849C229.076 4.62033 229.342 4.44067 229.645 4.31C229.953 4.17933 230.28 4.114 230.625 4.114C230.97 4.114 231.295 4.17933 231.598 4.31C231.906 4.44067 232.172 4.62033 232.396 4.849C232.625 5.073 232.804 5.339 232.935 5.647C233.066 5.95033 233.131 6.27466 233.131 6.62C233.131 6.97 233.066 7.29667 232.935 7.6C232.804 7.90333 232.625 8.167 232.396 8.391C232.172 8.615 231.906 8.79 231.598 8.916C231.295 9.042 230.97 9.105 230.625 9.105C230.28 9.105 229.953 9.042 229.645 8.916C229.342 8.79 229.076 8.615 228.847 8.391C228.623 8.167 228.446 7.90333 228.315 7.6C228.184 7.29667 228.119 6.97 228.119 6.62ZM230.058 6.445C230.081 6.45433 230.119 6.46133 230.17 6.466C230.226 6.47067 230.287 6.473 230.352 6.473C230.473 6.473 230.585 6.46133 230.688 6.438C230.795 6.41 230.889 6.368 230.968 6.312C231.052 6.256 231.117 6.18366 231.164 6.095C231.211 6.00166 231.234 5.892 231.234 5.766C231.234 5.584 231.173 5.44167 231.052 5.339C230.935 5.23633 230.779 5.185 230.583 5.185C230.494 5.185 230.408 5.18966 230.324 5.199C230.245 5.20366 230.17 5.21066 230.1 5.22C230.091 5.32733 230.081 5.437 230.072 5.549C230.063 5.661 230.058 5.77067 230.058 5.878V6.445ZM229.694 5.962C229.694 5.80333 229.689 5.64 229.68 5.472C229.671 5.29933 229.659 5.14767 229.645 5.017C229.738 5.02633 229.832 5.03567 229.925 5.045C230.023 5.04967 230.121 5.052 230.219 5.052C230.312 5.052 230.406 5.04733 230.499 5.038C230.597 5.024 230.693 5.017 230.786 5.017C230.907 5.017 231.022 5.031 231.129 5.059C231.236 5.087 231.33 5.13133 231.409 5.192C231.488 5.248 231.551 5.32033 231.598 5.409C231.645 5.493 231.668 5.59567 231.668 5.717C231.668 5.857 231.633 5.98067 231.563 6.088C231.498 6.19533 231.416 6.28633 231.318 6.361C231.22 6.431 231.115 6.48467 231.003 6.522C230.896 6.55933 230.798 6.58033 230.709 6.585C230.802 6.697 230.905 6.82767 231.017 6.977C231.129 7.12633 231.243 7.27567 231.36 7.425C231.477 7.56966 231.586 7.705 231.689 7.831C231.792 7.95233 231.878 8.04333 231.948 8.104V8.139C231.897 8.12967 231.848 8.12267 231.801 8.118C231.759 8.10867 231.719 8.104 231.682 8.104C231.617 8.104 231.526 8.11567 231.409 8.139C231.236 7.887 231.057 7.63733 230.87 7.39C230.688 7.14267 230.492 6.893 230.282 6.641H230.058V7.131C230.058 7.467 230.072 7.803 230.1 8.139C230.007 8.11567 229.932 8.104 229.876 8.104C229.815 8.104 229.738 8.11567 229.645 8.139C229.654 7.97567 229.664 7.81233 229.673 7.649C229.687 7.48567 229.694 7.32233 229.694 7.159V5.962Z\",\n fill: \"#002F5F\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_1109_221\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n width: 234,\n height: 29,\n fill: \"white\"\n })))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogoHackettR);\nexport default __webpack_public_path__ + \"static/media/logo-hackett-r.ae12c48a.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Button, Offcanvas } from 'react-bootstrap';\nimport { createUseThemedStyles, useAccount, useSignOut } from '@/hooks';\nimport { HeaderMenuAccordion, HeaderSearch, NavigationLinks } from '@/components';\nimport { ReactComponent as HackettLogo } from '@/assets/logos/logo-hackett-connect.svg';\nimport { ReactComponent as XIcon } from '@/assets/icons/icon-x.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\theader: {\n\t\theight: 60,\n\t\tdisplay: 'flex',\n\t\tpadding: '0 20px',\n\t\talignItems: 'center',\n\t\tjustifyContent: 'space-between',\n\t\tbackgroundColor: theme.colors.info,\n\t\t'& .hackett-logo': {\n\t\t\twidth: 233,\n\t\t\tdisplay: 'block',\n\t\t},\n\t},\n\tbody: {\n\t\toverflowY: 'auto',\n\t\theight: 'calc(100% - 60px)',\n\t},\n\tmobileSearchBar: {\n\t\tdisplay: 'flex',\n\t\tpadding: '16px 20px',\n\t\tjustifyContent: 'center',\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t},\n\tnavigationList: {\n\t\tmargin: 0,\n\t\tpadding: 0,\n\t\tlistStyle: 'none',\n\t\t'& li': {\n\t\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\t\t'& a, & button': {\n\t\t\t\twidth: '100%',\n\t\t\t\tdisplay: 'block',\n\t\t\t\ttextAlign: 'left',\n\t\t\t\tpadding: '16px 24px',\n\t\t\t\t'&:last-of-type': {\n\t\t\t\t\tmargin: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tnavigationButtons: {\n\t\tpadding: 24,\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\t'& a': {\n\t\t\tmarginBottom: 8,\n\t\t\t'&:last-of-type': {\n\t\t\t\tmargin: 0,\n\t\t\t},\n\t\t},\n\t},\n\t'@global': {\n\t\t'.mobile-nav-enter': {\n\t\t\topacity: 0,\n\t\t\ttransform: 'translateY(50px)',\n\t\t},\n\t\t'.mobile-nav-enter-active': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translateY(0px)',\n\t\t},\n\t\t'.mobile-nav-enter-done': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translateY(0px)',\n\t\t},\n\t\t'.mobile-nav-exit': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translateY(0px)',\n\t\t},\n\t\t'.mobile-nav-exit-active': {\n\t\t\topacity: 0,\n\t\t\ttransform: 'translateY(50px)',\n\t\t},\n\t},\n}));\n\ninterface HeaderMenuProps {\n\tshow: boolean;\n\tonHide(): void;\n\tnavigationLinks: NavigationLinks;\n}\n\nexport const HeaderMenu = ({ show, onHide, navigationLinks }: HeaderMenuProps) => {\n\tconst classes = useStyles();\n\tconst { account } = useAccount();\n\tconst { signOut } = useSignOut();\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t{Object.entries(navigationLinks).map(([key, section]) => {\n\t\t\t\t\tif (section.length <= 0) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (key === 'CLIENT_MANAGEMENT') {\n\t\t\t\t\t\treturn ;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (key === 'ACCOUNT') {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tSign Out\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t{section.map((link, linkIndex) => {\n\t\t\t\t\t\t\t\t\tif (link.external) {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\tMy Advisors\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tContact Us\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useEffect, useRef } from 'react';\nimport { Link } from 'react-router-dom';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { HeaderMenuButton } from '@/components';\nimport { mediaQueries } from '@/jss';\n\nimport { ReactComponent as HackettLogo } from '@/assets/logos/logo-hackett-connect.svg';\n\nconst transitionDuration = 200;\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tmobileHeader: {\n\t\theight: 60,\n\t\tdisplay: 'flex',\n\t\tpadding: '0 15px',\n\t\talignItems: 'center',\n\t\tjustifyContent: 'space-between',\n\t\t'& svg': {\n\t\t\tmaxWidth: 240,\n\t\t\tmarginRight: 15,\n\t\t},\n\t},\n\tmobileNavigation: {\n\t\ttop: 60,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\tzIndex: 7,\n\t\topacity: 0,\n\t\tposition: 'fixed',\n\t\toverflowY: 'auto',\n\t\ttransform: 'translateY(50px)',\n\t\tbackgroundColor: theme.colors.white,\n\t\ttransition: `opacity ${transitionDuration}ms, transform ${transitionDuration}ms`,\n\t\t'& ul': {\n\t\t\tmargin: 0,\n\t\t\tpadding: '5px 0',\n\t\t\tlistStyle: 'none',\n\t\t\t'& li': {\n\t\t\t\t'& a': {\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\tpadding: '5px 10px',\n\t\t\t\t\ttextAlign: 'center',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t[mediaQueries.nav]: {\n\t\t\tdisplay: 'none',\n\t\t},\n\t},\n\tmobileSearchBar: {\n\t\tdisplay: 'flex',\n\t\tpadding: '15px 0 0',\n\t\tjustifyContent: 'center',\n\t},\n\t'@global': {\n\t\t'.mobile-nav-enter': {\n\t\t\topacity: 0,\n\t\t\ttransform: 'translateY(50px)',\n\t\t},\n\t\t'.mobile-nav-enter-active': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translateY(0px)',\n\t\t},\n\t\t'.mobile-nav-enter-done': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translateY(0px)',\n\t\t},\n\t\t'.mobile-nav-exit': {\n\t\t\topacity: 1,\n\t\t\ttransform: 'translateY(0px)',\n\t\t},\n\t\t'.mobile-nav-exit-active': {\n\t\t\topacity: 0,\n\t\t\ttransform: 'translateY(50px)',\n\t\t},\n\t},\n}));\n\ninterface HeaderMobileProps {\n\tmenuOpen: boolean;\n\tonMenuButtonClick(menuOpen: boolean): void;\n\tclassName?: string;\n}\n\nexport const HeaderMobile = ({ menuOpen, onMenuButtonClick, className }: HeaderMobileProps) => {\n\tconst classes = useStyles();\n\n\tconst headerRef = useRef(null);\n\tconst mobileNavRef = useRef(null);\n\n\tconst handleWindowResize = useCallback(() => {\n\t\tsetMobileNavTop();\n\t}, []);\n\n\t/* ----------------------------------------------------------- */\n\t/* Nav padding for fixed header */\n\t/* ----------------------------------------------------------- */\n\tfunction setMobileNavTop() {\n\t\tif (!mobileNavRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!headerRef.current) {\n\t\t\tmobileNavRef.current.style.top = '0px';\n\t\t\treturn;\n\t\t}\n\n\t\tconst headerBottom = headerRef.current.getBoundingClientRect().bottom;\n\t\tmobileNavRef.current.style.top = `${headerBottom}px`;\n\t}\n\n\t/* ----------------------------------------------------------- */\n\t/* Set padding on window resize */\n\t/* ----------------------------------------------------------- */\n\tuseEffect(() => {\n\t\tsetMobileNavTop();\n\n\t\twindow.addEventListener('resize', handleWindowResize);\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener('resize', handleWindowResize);\n\t\t};\n\t}, [handleWindowResize]);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t {\n\t\t\t\t\tonMenuButtonClick(open);\n\t\t\t\t}}\n\t\t\t/>\n\t\t
    \n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconMagnifyingGlass(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-search\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconMagnifyingGlass);\nexport default __webpack_public_path__ + \"static/media/icon-magnifying-glass.b1f781b9.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { Link } from 'react-router-dom';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { boxShadow } from '@/jss';\nimport { ReactComponent as HackettLogo } from '@/assets/logos/logo-hackett-r.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\theaderNoAuth: {\n\t\t...boxShadow,\n\t\tpadding: '20px 40px',\n\t\tbackgroundColor: theme.colors.white,\n\t},\n\tbrandLink: {\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\ttextDecoration: 'none',\n\t\tcolor: theme.colors.gray700,\n\t\t'&:hover': {\n\t\t\ttextDecoration: 'none',\n\t\t},\n\t},\n\tbrand: {\n\t\t...theme.fonts.m,\n\t\t...theme.fonts.openSansSemiBold,\n\t},\n\tvr: {\n\t\twidth: 2,\n\t\theight: 28,\n\t\tflexShrink: 0,\n\t\tmargin: '0 16px',\n\t\tdisplay: 'inline-flex',\n\t\tbackgroundColor: theme.colors.gray400,\n\t},\n}));\n\nexport const HeaderNoAuth = () => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tHackett Connect\n\t\t\t\n\t\t
    \n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport Color from 'color';\n\nimport { accountService } from '@/lib/services';\nimport { createUseThemedStyles, useHandleError, useNavigationConfig } from '@/hooks';\nimport { HeaderDesktop, HeaderMenu, HeaderMobile, NavigationMain, WelcomeBanner } from '@/components';\nimport { BannerMessage } from '@/lib/models';\nimport { mediaQueries } from '@/jss';\nimport { useLocation } from 'react-router-dom';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\theader: {\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tzIndex: 10,\n\t\tposition: 'fixed',\n\t\tbackgroundColor: theme.colors.primary,\n\t\tbackgroundImage: `linear-gradient(-45deg, ${Color(theme.colors.primary)\n\t\t\t.darken(0.4)\n\t\t\t.hex()} 0%, ${Color(theme.colors.primary)\n\t\t\t.lighten(0.2)\n\t\t\t.desaturate(0.2)\n\t\t\t.hex()} 100%)`,\n\t},\n\theaderDesktop: {\n\t\tdisplay: 'none',\n\t\t[mediaQueries.nav]: {\n\t\t\tdisplay: 'flex',\n\t\t},\n\t},\n\theaderMobile: {\n\t\t[mediaQueries.nav]: {\n\t\t\tdisplay: 'none',\n\t\t},\n\t},\n}));\n\nexport type NavigationLinks = Record;\n\nenum NAVIGATION_SECTION {\n\tMAIN = 'MAIN',\n\tCLIENT_MANAGEMENT = 'CLIENT_MANAGEMENT',\n\tACCOUNT = 'ACCOUNT',\n}\n\nexport interface NaviationSectionLink {\n\tto: string;\n\ttitle: string;\n\tmobileTitle?: string;\n\texternal?: boolean;\n}\n\nexport const Header = () => {\n\tconst handleError = useHandleError();\n\tconst classes = useStyles();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst headerRef = useRef(null);\n\tconst [menuOpen, setMenuOpen] = useState(false);\n\tconst { pathname } = useLocation();\n\n\tconst navigationLinks: NavigationLinks = useMemo(() => {\n\t\treturn {\n\t\t\tMAIN: [\n\t\t\t\t...(!navigationConfig?.inquiriesDisabled && !navigationConfig?.allowClientManagement\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tto: navigationConfig?.allowAccessToInquiries ? '/inquiries' : '/inquiries/learn-more',\n\t\t\t\t\t\t\t\ttitle: 'Expert
    Inquiries',\n\t\t\t\t\t\t\t\tmobileTitle: 'Expert Inquiries',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: []),\n\t\t\t\t...(navigationConfig?.allowResearch ? [{ to: '/research', title: 'Research' }] : []),\n\t\t\t\t...(navigationConfig?.allowPerformanceMetrics\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tto: '/performance-metrics',\n\t\t\t\t\t\t\t\ttitle: 'Benchmark
    Metrics',\n\t\t\t\t\t\t\t\tmobileTitle: 'Benchmark Metrics',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: []),\n\t\t\t\t...(navigationConfig?.allowBestPractices\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tto: '/best-practices',\n\t\t\t\t\t\t\t\ttitle:\n\t\t\t\t\t\t\t\t\t'Hackett-Certified®Best Practices',\n\t\t\t\t\t\t\t\tmobileTitle: 'Benchmark Hackett-Certified® Best Practices',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: []),\n\t\t\t\t...(navigationConfig?.allowPerformanceStudies\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tto: '/events/performance-studies',\n\t\t\t\t\t\t\t\ttitle: 'Performance
    Studies',\n\t\t\t\t\t\t\t\tmobileTitle: 'Performance Studies',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: []),\n\t\t\t\t...(navigationConfig?.allowBrowseEvents ? [{ to: '/events/browse-events', title: 'Events' }] : []),\n\t\t\t\t...(navigationConfig?.allowUseCases\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tto: '/use-cases',\n\t\t\t\t\t\t\t\ttitle: 'AI Use Cases',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: []),\n\t\t\t],\n\t\t\tCLIENT_MANAGEMENT: navigationConfig?.allowClientManagement\n\t\t\t\t? [\n\t\t\t\t\t\t...(navigationConfig?.allowAccessToInquiries\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tto: '/client-management/inquiries-dashboard',\n\t\t\t\t\t\t\t\t\t\ttitle: 'Inquiries',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: []),\n\t\t\t\t\t\t...(navigationConfig?.allowDeliverables\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tto: '/client-management/deliverables',\n\t\t\t\t\t\t\t\t\t\ttitle: 'Deliverables',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: []),\n\t\t\t\t\t\t...(navigationConfig?.allowReports\n\t\t\t\t\t\t\t? [{ to: '/client-management/reports', title: 'Reports' }]\n\t\t\t\t\t\t\t: []),\n\t\t\t\t\t\t...(navigationConfig?.allowHackettAi\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tto: '/client-management/ask-hackett-ai',\n\t\t\t\t\t\t\t\t\t\ttitle: 'AskHackett.ai',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: []),\n\t\t\t\t ]\n\t\t\t\t: [],\n\t\t\tACCOUNT: [\n\t\t\t\t...(navigationConfig?.allowAdminAccess\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tto: navigationConfig?.adminUrl ?? '',\n\t\t\t\t\t\t\t\ttitle: 'Admin',\n\t\t\t\t\t\t\t\texternal: true,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: []),\n\t\t\t\t{ to: '/account', title: 'Account' },\n\t\t\t\t{ to: '/bookmarks', title: 'Bookmarks' },\n\t\t\t],\n\t\t};\n\t}, [navigationConfig]);\n\n\t/* ----------------------------------------------------------- */\n\t/* Banner messages */\n\t/* ----------------------------------------------------------- */\n\tconst [bannerMessages, setBannerMessages] = useState([]);\n\tconst bannerMessagesFetched = useRef(false);\n\n\tconst fetchBannerMessages = useCallback(async () => {\n\t\ttry {\n\t\t\tif (bannerMessagesFetched.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst [bannerMessagesResponse] = await Promise.all([accountService.getBannerMessages().fetch()]);\n\n\t\t\tsetBannerMessages(bannerMessagesResponse.bannerMessages);\n\t\t\tbannerMessagesFetched.current = true;\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError]);\n\n\tuseEffect(() => {\n\t\tfetchBannerMessages();\n\t}, [fetchBannerMessages]);\n\n\t/* ----------------------------------------------------------- */\n\t/* Resize Handler */\n\t/* ----------------------------------------------------------- */\n\tconst handleWindowResize = useCallback(() => {\n\t\tsetBodyPadding();\n\t}, []);\n\n\t/* ----------------------------------------------------------- */\n\t/* Body padding for fixed header */\n\t/* ----------------------------------------------------------- */\n\tfunction setBodyPadding() {\n\t\tif (!headerRef.current) {\n\t\t\tdocument.body.style.paddingTop = '0px';\n\t\t\treturn;\n\t\t}\n\n\t\tconst headerHeight = headerRef.current.clientHeight;\n\t\tdocument.body.style.paddingTop = `${headerHeight}px`;\n\t}\n\n\t/* ----------------------------------------------------------- */\n\t/* Set padding on window resize, bind handler */\n\t/* ----------------------------------------------------------- */\n\tuseEffect(() => {\n\t\tsetBodyPadding();\n\n\t\twindow.addEventListener('resize', handleWindowResize);\n\t\treturn () => {\n\t\t\twindow.removeEventListener('resize', handleWindowResize);\n\t\t\tdocument.body.style.paddingTop = '0px';\n\t\t};\n\t}, [handleWindowResize]);\n\n\t/* ----------------------------------------------------------- */\n\t/* Set padding if bannerMessages changes */\n\t/* ----------------------------------------------------------- */\n\tuseEffect(() => {\n\t\tsetBodyPadding();\n\t}, [bannerMessages]);\n\n\t/* ----------------------------------------------------------- */\n\t/* Disable scrolling when menu is open */\n\t/* ----------------------------------------------------------- */\n\tuseEffect(() => {\n\t\tif (menuOpen) {\n\t\t\tdocument.body.style.overflow = 'hidden';\n\t\t\treturn;\n\t\t}\n\n\t\tdocument.body.style.overflow = 'visible';\n\n\t\treturn () => {\n\t\t\tdocument.body.style.overflow = 'visible';\n\t\t};\n\t}, [menuOpen]);\n\n\t/* ----------------------------------------------------------- */\n\t/* Close menu if pathname changes */\n\t/* ----------------------------------------------------------- */\n\tuseEffect(() => {\n\t\tsetMenuOpen((previousValue) => {\n\t\t\tif (previousValue) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn previousValue;\n\t\t});\n\n\t\tdocument.body.style.overflow = 'visible';\n\t}, [pathname]);\n\n\treturn (\n\t\t<>\n\t\t\t setMenuOpen(!menuOpen)} navigationLinks={navigationLinks} />\n\n\t\t\t
    \n\t\t\t\t{bannerMessages.length > 0 && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t setMenuOpen(!menuOpen)}\n\t\t\t\t\tnavigationLinks={navigationLinks}\n\t\t\t\t\tclassName={classes.headerDesktop}\n\t\t\t\t/>\n\t\t\t\t setMenuOpen(!menuOpen)}\n\t\t\t\t\tclassName={classes.headerMobile}\n\t\t\t\t/>\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { RefObject } from 'react';\nimport { Form } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as MagnifyingGlassIcon } from '@/assets/icons/icon-magnifying-glass.svg';\nimport { BsPrefixProps } from 'react-bootstrap/esm/helpers';\n\ninterface UseStyleProps {\n\thideIcon?: boolean;\n}\n\nconst useStyles = createUseThemedStyles(\n\t(theme) => ({\n\t\tsearchInputOuter: {\n\t\t\tminWidth: 300,\n\t\t\tposition: 'relative',\n\t\t},\n\t\ticon: {\n\t\t\tleft: 14,\n\t\t\ttop: '50%',\n\t\t\tposition: 'absolute',\n\t\t\tpointerEvents: 'none',\n\t\t\ttransform: 'translateY(-50%)',\n\t\t\tfill: theme.colors.primary,\n\t\t},\n\t\tsearchInput: {\n\t\t\twidth: '100%',\n\t\t\ttextIndent: 0,\n\t\t\tpaddingLeft: ({ hideIcon }: UseStyleProps) => (hideIcon ? 15 : 40),\n\t\t\tpaddingRight: 15,\n\t\t},\n\t}),\n\t{ index: 2 }\n);\n\n// Copy of FormControlProps from react-bootstrap with custom element types\n// Allows for use with react-boostrap-typeahead\ninterface SearchInputProps extends BsPrefixProps, React.HTMLAttributes {\n\thtmlSize?: number;\n\tsize?: 'sm' | 'lg';\n\tplaintext?: boolean;\n\treadOnly?: boolean;\n\tdisabled?: boolean;\n\tvalue?: string | string[] | number;\n\tonChange?: React.ChangeEventHandler;\n\ttype?: string;\n\tisValid?: boolean;\n\tisInvalid?: boolean;\n\thideIcon?: boolean;\n}\n\nexport const SearchInput = React.forwardRef(\n\t(\n\t\t{ className, hideIcon, ...props }: SearchInputProps,\n\t\tref: ((instance: HTMLInputElement | null) => void) | RefObject | null | undefined\n\t) => {\n\t\tconst classes = useStyles({\n\t\t\thideIcon,\n\t\t});\n\n\t\treturn (\n\t\t\t
    \n\t\t\t\t{!hideIcon && }\n\t\t\t\t\n\t\t\t
    \n\t\t);\n\t}\n);\n","import React, { RefObject, useCallback, useState } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport classNames from 'classnames';\n\nimport { constructUrl } from '@/lib/utils';\nimport { createUseThemedStyles } from '@/hooks';\nimport { SearchInput } from './search-input';\n\nimport { ReactComponent as MagnifyingGlassIcon } from '@/assets/icons/icon-magnifying-glass.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tglobalSearchOuter: {\n\t\tposition: 'relative',\n\t\talignItems: 'center',\n\t},\n\tsearchButton: {\n\t\ttop: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\tpadding: '0 12px',\n\t\tposition: 'absolute',\n\t\tborderTopRightRadius: 2,\n\t\tborderBottomRightRadius: 2,\n\t\tbackgroundColor: theme.colors.white,\n\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t},\n}));\n\ninterface HeaderSearchProps {\n\tclassName?: string;\n}\n\nexport const HeaderSearch = React.forwardRef(\n\t(\n\t\t{ className }: HeaderSearchProps,\n\t\tref: ((instance: HTMLDivElement | null) => void) | RefObject | null | undefined\n\t) => {\n\t\tconst classes = useStyles();\n\t\tconst history = useHistory();\n\t\tconst [inputValue, setInputValue] = useState('');\n\n\t\tconst handleSearchSubmit = useCallback(\n\t\t\t(query: string) => {\n\t\t\t\thistory.push(constructUrl('/search', { query }));\n\t\t\t},\n\t\t\t[history]\n\t\t);\n\n\t\treturn (\n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tsetInputValue(currentTarget.value);\n\t\t\t\t\t}}\n\t\t\t\t\tonKeyDown={({ key }) => {\n\t\t\t\t\t\tif (key === 'Enter') {\n\t\t\t\t\t\t\thandleSearchSubmit(inputValue);\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t\t {\n\t\t\t\t\t\thandleSearchSubmit(inputValue);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t);\n\t}\n);\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconPlus(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-plus\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconPlus);\nexport default __webpack_public_path__ + \"static/media/icon-plus.5e21677f.svg\";\nexport { ForwardRef as ReactComponent };","var _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconCheckmarkCircle(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 14,\n height: 14,\n viewBox: \"0 0 14 14\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"circle\", {\n cx: 7,\n cy: 7,\n r: 7,\n fill: \"#000\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#FFF\",\n d: \"M9.24974747,11 L4.24974747,11 L4.24974747,9 L7.24974747,9 L7.24974747,2 L9.24974747,2 L9.24974747,11 Z\",\n transform: \"rotate(45 6.75 6.5)\"\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconCheckmarkCircle);\nexport default __webpack_public_path__ + \"static/media/icon-checkmark-circle.ea4bd68e.svg\";\nexport { ForwardRef as ReactComponent };","import { v4 as uuid } from 'uuid';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport { Form, Modal, Button } from 'react-bootstrap';\nimport { Typeahead } from 'react-bootstrap-typeahead';\nimport classNames from 'classnames';\n\nimport { DOCUMENT_UPLOAD_STATUS_ID, FormOption, PresignedUploadModel, inquiryAttachment } from '@/lib/models';\nimport { documentUploader, inquiryService } from '@/lib/services';\nimport { useAccount, useAlert, useHandleError, useNavigationConfig } from '@/hooks';\nimport {\n\tAttachmentDropdown,\n\tFadeTransition,\n\tFileInputButton,\n\tLoadingButton,\n\tMeter,\n\tSelect,\n\tWysiwyg,\n} from '@/components';\n\nimport { ReactComponent as PaperclipIcon } from '@/assets/icons/icon-paperclip.svg';\nimport { ReactComponent as PlusIcon } from '@/assets/icons/icon-plus.svg';\nimport { isErrorConfig } from '@/lib/utils';\n\nexport const InquiryForm = React.memo(() => {\n\tconst history = useHistory();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst { account } = useAccount();\n\tconst { navigationConfig } = useNavigationConfig();\n\n\tconst [formOptionsLoading, setFormOptionsLoading] = useState(false);\n\tconst [clientOptions, setClientOptions] = useState([]);\n\tconst [requesterOptions, setRequesterOptions] = useState([]);\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [typeOptions, setTypeOptions] = useState([]);\n\tconst [topicsOptions, setTopicsOptions] = useState([]);\n\tconst [accountUrl, setAccountUrl] = useState('');\n\tconst [shouldShowNotes, setShouldShowNotes] = useState(false);\n\tconst [reachedInquiryLimit, setReachedInquiryLimit] = useState(false);\n\tconst [showLimitInquiryModal, setShowLimitInquiryModal] = useState(false);\n\tconst [showMarketIntelligenceLimitModal, setShowMarketIntelligenceLimitModal] = useState(false);\n\n\tconst [clientValue, setClientValue] = useState('');\n\tconst [requesterValue, setRequesterValue] = useState('');\n\tconst [programValue, setProgramValue] = useState('');\n\tconst [typeValue, setTypeValue] = useState('');\n\tconst [topicsValue, setTopicsValue] = useState([]);\n\tconst [titleValue, setTitleValue] = useState('');\n\tconst [inquiryText, setInquiryText] = useState('');\n\tconst [notes, setNotes] = useState('');\n\tconst [inquiryDocuments, setInquiryDocuments] = useState<{ file: File; fileId: string }[]>([]);\n\tconst [isUploading, setIsUpoading] = useState(false);\n\tconst [uploadProgress, setUploadProgress] = useState(0);\n\tconst [isSubmitting, setIsSubmitting] = useState(false);\n\n\tconst fetchInquiryFormOptions = useCallback(async () => {\n\t\ttry {\n\t\t\tsetFormOptionsLoading(true);\n\n\t\t\tconst {\n\t\t\t\tclients,\n\t\t\t\taccounts,\n\t\t\t\tinquiryType,\n\t\t\t\tprograms,\n\t\t\t\ttopics,\n\t\t\t\tcreateAccountUrl,\n\t\t\t\tshouldShowNotes,\n\t\t\t\treachedInquiryLimit,\n\t\t\t} = await inquiryService\n\t\t\t\t.getInquiryFormOptions({\n\t\t\t\t\t...(clientValue && { clientId: clientValue }),\n\t\t\t\t\t...(requesterValue && { accountId: requesterValue }),\n\t\t\t\t\t...(programValue && { programId: programValue }),\n\t\t\t\t\t...(typeValue && { inquiryTypeId: typeValue }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetClientOptions(clients ?? []);\n\t\t\tsetRequesterOptions(accounts ?? []);\n\t\t\tsetProgramOptions(programs ?? []);\n\t\t\tsetTypeOptions(inquiryType ?? []);\n\t\t\tsetTopicsOptions(topics ?? []);\n\t\t\tsetAccountUrl(createAccountUrl);\n\t\t\tsetShouldShowNotes(shouldShowNotes);\n\t\t\tsetReachedInquiryLimit(reachedInquiryLimit);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetFormOptionsLoading(false);\n\t\t}\n\t}, [clientValue, handleError, programValue, requesterValue, typeValue]);\n\n\tuseEffect(() => {\n\t\tfetchInquiryFormOptions();\n\t}, [fetchInquiryFormOptions]);\n\n\tconst handleAttachButtonChange = useCallback(\n\t\t(file: File) => {\n\t\t\tif (file.size > inquiryAttachment.maxFileSize_bytes) {\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tAttachment size cannot exceed 100MB. Please try again.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet fileExtension = (/\\.[^.]+$/.exec(file.name) ?? []).pop();\n\t\t\tif (fileExtension === undefined || !inquiryAttachment.validExtensions.includes(fileExtension)) {\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tIncorrect file type. Choose a file with valid format: any office type, pdf or zip.\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetInquiryDocuments((previousValue) => [...previousValue, { file, fileId: uuid() }]);\n\t\t},\n\t\t[showAlert]\n\t);\n\n\tconst handleDocumentRemove = useCallback((document: { file: File; fileId: string }) => {\n\t\tsetInquiryDocuments((previousValue) => {\n\t\t\tconst indexToRemove = previousValue.findIndex((v) => v.fileId === document.fileId);\n\n\t\t\tif (indexToRemove > -1) {\n\t\t\t\tpreviousValue.splice(indexToRemove, 1);\n\t\t\t}\n\n\t\t\treturn [...previousValue];\n\t\t});\n\t}, []);\n\n\tconst handleContactFormSubmit = (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\t\tsetShowLimitInquiryModal(reachedInquiryLimit);\n\n\t\tif (!reachedInquiryLimit) {\n\t\t\thandleContactSubmitRequest();\n\t\t}\n\t};\n\n\tconst createInquiryFetch = async (confirmMarketIntelInquiryLimitExceeded?: boolean) => {\n\t\tconst requestingAccountId = navigationConfig?.allowClientManagement ? requesterValue : account?.accountId;\n\n\t\ttry {\n\t\t\tconst { inquiry } = await inquiryService\n\t\t\t\t.createInquiry({\n\t\t\t\t\t...(clientValue && { clientId: clientValue }),\n\t\t\t\t\trequestingAccountId: requestingAccountId,\n\t\t\t\t\tprogramId: programValue,\n\t\t\t\t\tinquiryTypeId: typeValue,\n\t\t\t\t\t...(topicsValue.length > 0 && { topicIds: topicsValue.map((topic) => topic.id) }),\n\t\t\t\t\tinquiryTitle: titleValue,\n\t\t\t\t\tinquiryText,\n\t\t\t\t\tnotes,\n\t\t\t\t\t...(confirmMarketIntelInquiryLimitExceeded && { confirmMarketIntelInquiryLimitExceeded }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\treturn inquiry;\n\t\t} catch (error) {\n\t\t\tif (isErrorConfig(error) && error.code === 'INQUIRY_LIMIT') {\n\t\t\t\tsetShowMarketIntelligenceLimitModal(true);\n\t\t\t\treturn null;\n\t\t\t} else {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\t};\n\n\tconst handleContactSubmitRequest = async (confirmMarketIntelInquiryLimitExceeded?: boolean) => {\n\t\tsetIsSubmitting(true);\n\n\t\ttry {\n\t\t\tsetShowLimitInquiryModal(reachedInquiryLimit);\n\n\t\t\tconst requestingAccountId = navigationConfig?.allowClientManagement ? requesterValue : account?.accountId;\n\t\t\tconst inquiry = await createInquiryFetch(confirmMarketIntelInquiryLimitExceeded);\n\n\t\t\tif (!inquiry) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst presignedUploadPromises = inquiryDocuments.map(({ file }) => {\n\t\t\t\treturn new Promise((resolve: (presignedUpload: PresignedUploadModel) => void, reject) => {\n\t\t\t\t\tlet newDocumentName = nameWithoutComma(file.name);\n\t\t\t\t\tdocumentUploader(\n\t\t\t\t\t\tfile,\n\t\t\t\t\t\tinquiryService.getPresignedDocumentUpload({\n\t\t\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\t\t\tcontentType: file.type,\n\t\t\t\t\t\t\ttitle: newDocumentName,\n\t\t\t\t\t\t}).fetch\n\t\t\t\t\t)\n\t\t\t\t\t\t.onBeforeUpload(() => {\n\t\t\t\t\t\t\tsetUploadProgress(0);\n\t\t\t\t\t\t\tsetIsUpoading(true);\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.onPresignedUploadObtained(() => {})\n\t\t\t\t\t\t.onProgress((percentage) => {\n\t\t\t\t\t\t\tsetUploadProgress(percentage);\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.onComplete(async (presignedUpload) => {\n\t\t\t\t\t\t\tsetUploadProgress(100);\n\t\t\t\t\t\t\tsetIsUpoading(false);\n\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tawait inquiryService\n\t\t\t\t\t\t\t\t\t.updateInquiryDocumentStatus({\n\t\t\t\t\t\t\t\t\t\tdocumentUploadStatusId: DOCUMENT_UPLOAD_STATUS_ID.COMPLETE,\n\t\t\t\t\t\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\t\t\t\t\t\tinquiryDocumentId: presignedUpload.documentId,\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t.fetch();\n\n\t\t\t\t\t\t\t\treturn resolve(presignedUpload);\n\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\treturn reject(error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.onError((error) => {\n\t\t\t\t\t\t\tsetIsUpoading(false);\n\t\t\t\t\t\t\thandleError(error);\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.start();\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tconst presignedUploadResponse = await Promise.all(presignedUploadPromises);\n\n\t\t\tawait inquiryService\n\t\t\t\t.updateInquiry({\n\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\tuploadedDocumentIds: presignedUploadResponse.map((u) => u.documentId),\n\t\t\t\t\ttopicIds: inquiry.topicsList.map((t) => t.id),\n\t\t\t\t\tnotes: inquiry.notes,\n\t\t\t\t\tinquiryAccountIds: requestingAccountId ? [requestingAccountId] : [],\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tif (navigationConfig?.allowClientManagement) {\n\t\t\t\thistory.push(`/client-management/inquiries/${inquiry.inquiryId}/edit`);\n\t\t\t} else {\n\t\t\t\thistory.push(`/inquiries/${inquiry.inquiryId}`);\n\t\t\t}\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tThank you for your Inquiry!\n\t\t\t\t\t\t

    \n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t\tsetIsSubmitting(false);\n\t\t}\n\t};\n\n\tconst nameWithoutComma = (filename: string) => {\n\t\treturn filename.split(',').join('');\n\t};\n\n\tconst resetForm = () => {\n\t\tsetClientValue('');\n\t\tsetRequesterValue('');\n\t\tsetProgramValue('');\n\t\tsetTypeValue('');\n\t\tsetTopicsValue([]);\n\t\tsetTitleValue('');\n\t\tsetInquiryText('');\n\t\tsetNotes('');\n\t\tsetInquiryDocuments([]);\n\t\tsetIsSubmitting(false);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t{navigationConfig?.allowClientManagement && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tWho is your client?\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetClientValue(currentTarget.value);\n\t\t\t\t\t\t\t\t\tsetRequesterValue('');\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tdisabled={formOptionsLoading || isSubmitting}\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{clientOptions.map((option) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tWho is requesting this?\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetRequesterValue(currentTarget.value);\n\t\t\t\t\t\t\t\t\tsetProgramValue('');\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\tformOptionsLoading || isSubmitting || !clientValue || requesterOptions.length <= 0\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{requesterOptions.map((option) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{navigationConfig?.allowAdminAccess && (\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\tCan't find the user?{' '}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tClick here to add them\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t.\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t\n\t\t\t\t\tWhat area does your question fall under?\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetProgramValue(currentTarget.value);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\tformOptionsLoading || navigationConfig?.allowClientManagement\n\t\t\t\t\t\t\t\t? isSubmitting || !clientValue || programOptions.length <= 0\n\t\t\t\t\t\t\t\t: isSubmitting || programOptions.length <= 0\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t>\n\t\t\t\t\t\t\n\t\t\t\t\t\t{programOptions.map((programOption) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\tWhat type of question do you have?\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetTypeValue(currentTarget.value);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tdisabled={formOptionsLoading || isSubmitting}\n\t\t\t\t\t\trequired\n\t\t\t\t\t>\n\t\t\t\t\t\t\n\t\t\t\t\t\t{typeOptions.map((typeOption) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{navigationConfig?.allowClientManagement && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tWhat are the topics related to this issue?{' '}\n\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetTopicsValue(selected as FormOption[]);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\toptions={topicsOptions}\n\t\t\t\t\t\t\tplaceholder=\"Select topics...\"\n\t\t\t\t\t\t\tdisabled={formOptionsLoading || isSubmitting || !programValue}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t\n\t\t\t\t\tInquiry Subject\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetTitleValue(currentTarget.value);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tdisabled={formOptionsLoading || isSubmitting}\n\t\t\t\t\t\trequired\n\t\t\t\t\t>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tInquiry Details\n\t\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t{shouldShowNotes && (\n\t\t\t\t\t\n\t\t\t\t\t\tNotes (For Internal Use)\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\n\t\t\t\t{inquiryDocuments.length > 0 || isUploading ? (\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\tAttachment\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t{inquiryDocuments.map((document) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\thandleDocumentRemove(document);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t
    \n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tAttach\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\tSubmit\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tInquiry Limit Reached\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tThis client has reached the inquiry limit for this program. Would you like to bypass this limit?\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowLimitInquiryModal(false);\n\t\t\t\t\t\t\thandleContactSubmitRequest();\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tYes\n\t\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowLimitInquiryModal(false);\n\t\t\t\t\t\t\tresetForm();\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tNo\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMarket Intelligence Inquiry Limit Reached\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tThis client has exceeded the number of Market Intelligence inquiries. Would you like to\n\t\t\t\t\t\tcontinue?\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowMarketIntelligenceLimitModal(false);\n\t\t\t\t\t\t\thandleContactSubmitRequest(true);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tYes\n\t\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowMarketIntelligenceLimitModal(false);\n\t\t\t\t\t\t\tresetForm();\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tNo\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n});\n","import React, { Fragment } from 'react';\nimport { Link } from 'react-router-dom';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as ChevronIcon } from '@/assets/icons/icon-chevron-right.svg';\nimport { boxShadow } from '@/jss';\n\ninterface LinkBoxProps {\n\tsections: {\n\t\ttitle: string;\n\t\tlinks: {\n\t\t\tcategory?: string;\n\t\t\tto: string;\n\t\t\ttitle: string;\n\t\t\tshowIcon?: boolean;\n\t\t}[];\n\t}[];\n\tcallToAction?: {\n\t\tto: string;\n\t\ttitle: string;\n\t};\n\tclassName?: string;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tlinkBox: {\n\t\t...boxShadow,\n\t\tbackgroundColor: theme.colors.white,\n\t},\n\tsectionsOuter: {\n\t\tpadding: '2.4rem 3.2rem',\n\t},\n\tlink: {\n\t\tdisplay: 'block',\n\t\t...theme.fonts.openSansSemiBold,\n\t},\n\tarrowIcon: {\n\t\tmarginTop: -3,\n\t\tmarginLeft: 8,\n\t},\n\tcallToActionOuter: {\n\t\tpadding: '1.8rem 3.2rem',\n\t\tbackgroundColor: theme.colors.primary,\n\t},\n\tcallToAction: {\n\t\tcolor: theme.colors.white,\n\t\t'&:hover': {\n\t\t\tcolor: theme.colors.white,\n\t\t},\n\t},\n}));\n\nexport const LinkBox = ({ sections, callToAction, className }: LinkBoxProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{sections.map((section, sectionIndex) => {\n\t\t\t\t\tconst isLastSection = sectionIndex === sections.length - 1;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {section.title}

    \n\t\t\t\t\t\t\t{section.links.map((link, linkIndex) => {\n\t\t\t\t\t\t\t\tconst isLastLink = linkIndex === section.links.length - 1;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{link.category &&

    {link.category}

    }\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{link.title}\n\t\t\t\t\t\t\t\t\t\t\t{link.showIcon && }\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t
    \n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t
    \n\t\t\t{callToAction && (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{callToAction.title} \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t)}\n\t\t
    \n\t);\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tintroductionItem: {\n\t\tpadding: 10,\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\tbackgroundColor: theme.colors.white,\n\t},\n\ticonOuter: {\n\t\twidth: 60,\n\t\theight: 60,\n\t\tflexShrink: 0,\n\t\tdisplay: 'flex',\n\t\tmarginRight: 10,\n\t\tborderRadius: '50%',\n\t\talignItems: 'center',\n\t\tjustifyContent: 'center',\n\t\tcolor: theme.colors.white,\n\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t.desaturate(0.6)\n\t\t\t.lighten(0.7)\n\t\t\t.hex(),\n\t},\n\tmessage: {\n\t\tflex: 1,\n\t\tmargin: 0,\n\t\t...theme.fonts.openSansBold,\n\t},\n}));\n\ninterface IntroductionItemProps {\n\ticonElement: JSX.Element;\n\tmessage: string;\n\tclassName?: string;\n}\n\nexport const IntroductionItem = ({ iconElement, message, className }: IntroductionItemProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    {iconElement}
    \n\t\t\t

    {message}

    \n\t\t
    \n\t);\n};\n","import React, { FC } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Col, Row } from 'react-bootstrap';\nimport HTMLEllipsis from 'react-lines-ellipsis/lib/html';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { TagList, TagListItem } from '@/components';\nimport { ReactComponent as StarIcon } from '@/assets/icons/icon-star.svg';\nimport { ReactComponent as CheckmarkIcon } from '@/assets/icons/icon-checkmark-circle.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tlistResult: {\n\t\tmarginBottom: 40,\n\t},\n\tcheckmarkIcon: {\n\t\tdisplay: 'inline-flex',\n\t\twidth: 14,\n\t\theight: 14,\n\t\tmarginRight: 8,\n\t},\n\tstarIcon: {\n\t\tdisplay: 'flex',\n\t\twidth: 16,\n\t\theight: 16,\n\t\tmarginRight: 8,\n\t},\n\timageOuter: {\n\t\twidth: '100%',\n\t\tpaddingBottom: '66.66%',\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundRepeat: 'no-repeat',\n\t\tbackgroundColor: theme.colors.gray300,\n\t},\n}));\n\ninterface ListResultProps {\n\tisRegistered?: boolean;\n\thasAttended?: boolean;\n\tcategory: string;\n\tdate?: string;\n\tto: string;\n\ttitle: string;\n\tisBookmarked?: boolean;\n\tdescription: string;\n\ttags?: TagListItem[];\n\timageSrc?: string;\n\tclassName?: string;\n}\n\nconst ResponsiveEllipsis = responsiveHOC()(HTMLEllipsis);\n\nexport const ListResult: FC = ({\n\tisRegistered,\n\thasAttended,\n\tcategory,\n\tdate,\n\tto,\n\ttitle,\n\tisBookmarked,\n\tdescription,\n\ttags,\n\timageSrc,\n\tclassName,\n\tchildren,\n}) => {\n\tconst classes = useStyles();\n\tconst parser = new DOMParser();\n\tconst descriptionParsed = parser.parseFromString(description, 'text/html');\n\tconst descriptionParsedString = descriptionParsed.body?.innerHTML.replace('&', '&');\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\t{isRegistered && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t Registered •{' '}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{hasAttended && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t Attended •{' '}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{category}\n\t\t\t\t\t\t{date && <> • {date}}\n\t\t\t\t\t

    \n\t\t\t\t\t

    \n\t\t\t\t\t\t{title}\n\t\t\t\t\t

    \n\t\t\t\t\t{isBookmarked && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Your bookmark

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t{!!tags?.length && }\n\t\t\t\t\t{children}\n\t\t\t\t\n\t\t\t\t{imageSrc && (\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useLoaderStyles = createUseThemedStyles((theme) => ({\n\tloader: ({ size }: { size: number }) => ({\n\t\twidth: size,\n\t\theight: size,\n\t\tborderRadius: '50%',\n\t\tborder: `${size * 0.14}px solid ${theme.colors.gray200}`,\n\t\tborderTopColor: theme.colors.primary,\n\t\tanimation: `$rotate 1000ms linear 0ms infinite normal`,\n\t}),\n\t'@keyframes rotate': {\n\t\t'0%': {\n\t\t\ttransform: 'rotate(0deg)',\n\t\t},\n\t\t'100%': {\n\t\t\ttransform: 'rotate(360deg)',\n\t\t},\n\t},\n}));\n\ninterface LoadingProps {\n\tsize?: number;\n\tclassName?: string;\n}\n\nexport const Loader = React.memo(({ size = 56, className }: LoadingProps) => {\n\tconst classes = useLoaderStyles({ size });\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n});\n\nLoader.displayName = 'Loader';\n","import React, { FC } from 'react';\nimport { Button, ButtonProps } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { Loader } from '@/components';\n\nconst useStyles = createUseThemedStyles({\n\tloader: {\n\t\ttop: '50%',\n\t\tleft: '50%',\n\t\tposition: 'absolute',\n\t\ttransform: 'translate(-50%, -50%)',\n\t},\n\tchildren: ({ isLoading }: { isLoading?: boolean }) => ({\n\t\topacity: isLoading ? 0 : 1,\n\t}),\n});\n\ninterface LoadingButtonProps extends ButtonProps {\n\tisLoading?: boolean;\n}\n\nexport const LoadingButton: FC = ({ isLoading, className, onClick, children, ...props }) => {\n\tconst classes = useStyles({ isLoading });\n\n\treturn (\n\t\t {\n\t\t\t\tif (isLoading) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (onClick) {\n\t\t\t\t\tonClick(event);\n\t\t\t\t}\n\t\t\t}}\n\t\t\t{...props}\n\t\t>\n\t\t\t{isLoading && }\n\t\t\t{children}\n\t\t\n\t);\n};\n","import React, { useState } from 'react';\nimport { Link, useHistory } from 'react-router-dom';\nimport { Nav, Dropdown as ReactBootstrapDropdown, Tab } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { constructUrl } from '@/lib/utils';\nimport { createUseThemedStyles, useNavigationConfig } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tnavOuter: {\n\t\tpadding: '10px 50px',\n\t\talignItems: 'center',\n\t\tjustifyContent: 'space-between',\n\t\tbackgroundColor: theme.colors.info,\n\t\t'& nav ul': {\n\t\t\tmargin: 0,\n\t\t\tpadding: 0,\n\t\t\theight: '100%',\n\t\t\tdisplay: 'flex',\n\t\t\tlistStyle: 'none',\n\t\t\tborderLeft: `1px solid rgba(255,255,255,0.4)`,\n\t\t\t'& li': {\n\t\t\t\tborderRight: `1px solid rgba(255,255,255,0.4)`,\n\t\t\t\t'& a': {\n\t\t\t\t\theight: '100%',\n\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\tpadding: '0 30px',\n\t\t\t\t\ttextAlign: 'center',\n\t\t\t\t\talignItems: 'center',\n\t\t\t\t\tflexDirection: 'column',\n\t\t\t\t\tjustifyContent: 'center',\n\t\t\t\t\tcolor: theme.colors.white,\n\t\t\t\t\t...theme.fonts.openSansSemiBold,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdropdownToggle: {\n\t\tborderRadius: `0 !important`,\n\t\tcolor: `${theme.colors.white} !important`,\n\t\tborderRight: `1px solid rgba(255,255,255,0.4) !important`,\n\t},\n\tdropdownMenuOuter: {\n\t\tpadding: 0,\n\t},\n\tdropdownMenu: {\n\t\theight: 470,\n\t\tdisplay: 'flex',\n\t\t'& .dropdown-item': {\n\t\t\tpadding: '24px 50px !important',\n\t\t},\n\t},\n\tdropdownTabs: {\n\t\twidth: 300,\n\t\tdisplay: 'flex',\n\t\tflexDirection: 'column',\n\t\tjustifyContent: 'space-between',\n\t\tborderRight: `1px solid ${theme.colors.gray300}`,\n\t},\n\tcontactCallout: {\n\t\tpadding: '32px 50px',\n\t\tborderTop: `1px solid ${theme.colors.gray300}`,\n\t},\n\tdropdownContent: {\n\t\twidth: 570,\n\t\toverflowY: 'auto',\n\t\tpadding: '24px 50px',\n\t},\n\tfilterLink: {\n\t\tdisplay: 'block',\n\t\t...theme.fonts.s,\n\t\t...theme.fonts.openSansSemiBold,\n\t},\n}));\n\nenum EVENT_KEYS {\n\tTOPICS = 'TOPICS',\n\tBUSNIESS_PROCESSES = 'BUSNIESS_PROCESSES',\n\tCONTENT_TYPES = 'CONTENT_TYPES',\n\tALL_RESEARCH = 'ALL_RESEARCH',\n}\n\ninterface NavigationResearchDropdownMenuProps {\n\tonCloseDropdown(): void;\n}\n\nexport const NavigationResearchDropdownMenu = ({ onCloseDropdown }: NavigationResearchDropdownMenuProps) => {\n\tconst classes = useStyles();\n\tconst history = useHistory();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst [tabKey, setTabKey] = useState(EVENT_KEYS.TOPICS);\n\n\tconst closeDropdown = () => {\n\t\tonCloseDropdown();\n\t};\n\n\tconst handleTabSelect = (eventKey: string | null) => {\n\t\tif (!eventKey) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (eventKey === EVENT_KEYS.ALL_RESEARCH) {\n\t\t\thistory.push('/research');\n\t\t\tonCloseDropdown();\n\t\t}\n\n\t\tsetTabKey(eventKey as EVENT_KEYS);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Can't find what you're looking for?

    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tContact Hackett\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t

    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{navigationConfig?.topics && navigationConfig.topics.length > 0 ? (\n\t\t\t\t\t\t\t\tnavigationConfig.topics.map((section, sectionIndex) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{section.navigationHeader && (\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{section.navigationHeader.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{section.navigationItems.map((item, itemIndex) => {\n\t\t\t\t\t\t\t\t\t\t\t\tconst isLast = itemIndex === section.navigationItems.length - 1;\n\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t

    Sorry, no Topics found.

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{navigationConfig?.taxonomy && navigationConfig.taxonomy.length > 0 ? (\n\t\t\t\t\t\t\t\tnavigationConfig.taxonomy.map((section, sectionIndex) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{section.navigationHeader && (\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{section.navigationHeader.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{section.navigationItems.map((item, itemIndex) => {\n\t\t\t\t\t\t\t\t\t\t\t\tconst isLast = itemIndex === section.navigationItems.length - 1;\n\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t

    Sorry, no Business Processes found.

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{navigationConfig?.contentTypes && navigationConfig.contentTypes.length > 0 ? (\n\t\t\t\t\t\t\t\tnavigationConfig.contentTypes.map((section, sectionIndex) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{section.navigationHeader && (\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{section.navigationHeader.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{section.navigationItems.map((item, itemIndex) => {\n\t\t\t\t\t\t\t\t\t\t\t\tconst isLast = itemIndex === section.navigationItems.length - 1;\n\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t

    Sorry, no Content Types found.

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\ninterface MeterUseStyleProps {\n\tvalue: number;\n\tmax: number;\n\tpill?: boolean;\n\tsize?: 'sm' | 'md' | 'lg';\n\tshowBackground?: boolean;\n\tvariant?: 'primary' | 'secondary' | 'tertiary' | 'success' | 'warning' | 'info' | 'danger';\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\ttitle: {\n\t\tdisplay: 'block',\n\t\tmarginBottom: 15,\n\t\ttextTransform: 'uppercase',\n\t\tcolor: theme.colors.gray600,\n\t\t...theme.fonts.openSansSemiBold,\n\t},\n\tlabel: {\n\t\tmarginLeft: 20,\n\t\tmarginBottom: 0,\n\t\t...theme.fonts.openSansBold,\n\t},\n\tmeter: ({ pill, size, showBackground }: MeterUseStyleProps) => ({\n\t\theight: 12,\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\tborderRadius: pill ? 500 : 0,\n\t\t...(size === 'sm' ? { height: 12 } : {}),\n\t\t...(size === 'md' ? { height: 24 } : {}),\n\t\t...(size === 'lg' ? { height: 44 } : {}),\n\t\tbackgroundColor: showBackground ? theme.colors.gray500 : 'transparent',\n\t}),\n\tfill: ({ value, max, pill, variant }: MeterUseStyleProps) => ({\n\t\theight: '100%',\n\t\ttransition: '0.2s width',\n\t\tborderRadius: pill ? 500 : 0,\n\t\twidth: `${(value / max) * 100}%`,\n\t\tbackgroundColor: theme.colors.primary,\n\t\t...(variant === 'primary' ? { backgroundColor: theme.colors.primary } : {}),\n\t\t...(variant === 'secondary' ? { backgroundColor: theme.colors.secondary } : {}),\n\t\t...(variant === 'tertiary' ? { backgroundColor: theme.colors.tertiary } : {}),\n\t\t...(variant === 'success' ? { backgroundColor: theme.colors.success } : {}),\n\t\t...(variant === 'warning' ? { backgroundColor: theme.colors.warning } : {}),\n\t\t...(variant === 'info' ? { backgroundColor: theme.colors.info } : {}),\n\t\t...(variant === 'danger' ? { backgroundColor: theme.colors.danger } : {}),\n\t}),\n}));\n\ninterface MeterProps extends MeterUseStyleProps {\n\ttitle?: string;\n\tlabel?: string;\n\tclassName?: string;\n}\n\nexport const Meter = ({ value, max, pill, size, showBackground, variant, title, label, className }: MeterProps) => {\n\tconst classes = useStyles({\n\t\tvalue,\n\t\tmax,\n\t\tpill,\n\t\tsize,\n\t\tshowBackground,\n\t\tvariant,\n\t});\n\n\treturn (\n\t\t<>\n\t\t\t{title && {title}}\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{label &&

    {label}

    }\n\t\t\t
    \n\t\t\n\t);\n};\n","import { cloneDeep } from 'lodash';\nimport React, { FC, useEffect, useState } from 'react';\nimport { Button, Collapse, Form } from 'react-bootstrap';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { Dropdown, DropdownMenu, DropdownToggle, FadeTransition } from '@/components';\n\nimport { ReactComponent as DownChevron } from '@/assets/icons/icon-chevron-down.svg';\n\nexport interface MultiSelectOption {\n\tid: string;\n\ttitle: string;\n\tvalue: string;\n\toptions?: MultiSelectOption[];\n\tdisabled?: boolean;\n}\n\nconst useMultiSelectStyles = createUseThemedStyles(\n\t(theme) => ({\n\t\tdropdown: {\n\t\t\twidth: '100%',\n\t\t},\n\t\tdropdownToggle: {\n\t\t\twidth: '100%',\n\t\t\tborderRadius: 2,\n\t\t\tdisplay: 'flex',\n\t\t\tpadding: '8px 14px',\n\t\t\tcolor: theme.colors.black,\n\t\t\tjustifyContent: 'space-between',\n\t\t\tbackgroundColor: theme.colors.white,\n\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\tboxShadow: '0 1px 4px 0 rgba(0, 0, 0, 0.16)',\n\t\t\t'&:hover': {\n\t\t\t\ttextDecoration: 'none',\n\t\t\t\tcolor: theme.colors.black,\n\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t\tborder: `1px solid ${theme.colors.gray600}`,\n\t\t\t},\n\t\t\t'&:focus': {\n\t\t\t\toutline: 'none',\n\t\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t\t},\n\t\t},\n\t\tselectedLength: {\n\t\t\theight: 22,\n\t\t\tminWidth: 22,\n\t\t\tpadding: '0 6px',\n\t\t\tborderRadius: 11,\n\t\t\tcolor: theme.colors.white,\n\t\t\tfontSize: '1.4rem !important',\n\t\t\tlineHeight: '2.2rem !important',\n\t\t\tbackgroundColor: theme.colors.primary,\n\t\t},\n\t\tdropdownMenu: {\n\t\t\twidth: '100%',\n\t\t\tmaxHeight: 226,\n\t\t\toverflowY: 'auto',\n\t\t\tpadding: '18px 12px',\n\t\t},\n\t}),\n\t{ index: 3 }\n);\n\ninterface MultiSelectProps {\n\toptions: MultiSelectOption[];\n\tselected: string[];\n\tonChange(selectedValues: string[]): void;\n\tdisabled?: boolean;\n}\n\ninterface FlattenedMultiSelectOption {\n\tid: string;\n\ttitle: string;\n\tvalue: string;\n\tparentId: string;\n\tchildIds: string[];\n}\n\nexport const MultiSelect: FC = ({ options, selected, onChange, disabled, children }) => {\n\tconst classes = useMultiSelectStyles();\n\tconst [flattendOptions, setFlattenedOptions] = useState>({});\n\n\tuseEffect(() => {\n\t\tconst flatten = (array: MultiSelectOption[], parentId: string = 'root'): FlattenedMultiSelectOption[] => {\n\t\t\treturn array.flatMap(({ options = [], id, ...rest }) => [\n\t\t\t\t{ id, ...rest, parentId, childIds: options.map((o) => o.id) },\n\t\t\t\t...flatten(options ?? [], id),\n\t\t\t]);\n\t\t};\n\n\t\tconst flattenedOps = flatten(options);\n\t\tconst flattenedOptionsAsObject = flattenedOps.reduce((previous, current) => {\n\t\t\treturn {\n\t\t\t\t...previous,\n\t\t\t\t[current.id]: current,\n\t\t\t};\n\t\t}, {} as Record);\n\n\t\tsetFlattenedOptions(flattenedOptionsAsObject);\n\t}, [options]);\n\n\tconst getAllDescendantValues = (option?: FlattenedMultiSelectOption): string[] => {\n\t\tif (!option) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [...option.childIds, ...option.childIds.flatMap((cid) => getAllDescendantValues(flattendOptions[cid]))];\n\t};\n\n\tconst getAllAncestorValues = (option?: FlattenedMultiSelectOption): string[] => {\n\t\tif (!option) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [option.parentId, ...getAllAncestorValues(flattendOptions[option.parentId])];\n\t};\n\n\tconst handleOnChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tconst selectionsClone = cloneDeep(selected);\n\n\t\tconst currentOption = flattendOptions[currentTarget.value];\n\t\tconst childValues = getAllDescendantValues(currentOption);\n\t\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\t\tconst parentValues = getAllAncestorValues(currentOption);\n\n\t\tconst valuesToUpdate = [currentTarget.value, ...childValues];\n\n\t\t// child selection logic\n\t\tif (selectionsClone.includes(currentTarget.value)) {\n\t\t\tfor (const value of valuesToUpdate) {\n\t\t\t\tconst indexToRemove = selectionsClone.indexOf(value);\n\t\t\t\tif (indexToRemove > -1) {\n\t\t\t\t\tselectionsClone.splice(indexToRemove, 1);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor (const value of valuesToUpdate) {\n\t\t\t\tif (!selectionsClone.includes(value)) {\n\t\t\t\t\tselectionsClone.push(value);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// parent selection logic\n\t\tconst parentId = flattendOptions[currentTarget.value]?.parentId;\n\t\tconst currentParent = flattendOptions[parentId];\n\n\t\tif (currentParent) {\n\t\t\tconst allChildrenValues = getAllDescendantValues(currentParent);\n\t\t\tconst allValuesExist = allChildrenValues.every((v) => {\n\t\t\t\treturn selectionsClone.includes(v);\n\t\t\t});\n\n\t\t\tif (allValuesExist) {\n\t\t\t\tif (!selectionsClone.includes(currentParent.value)) {\n\t\t\t\t\tselectionsClone.push(currentParent.value);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (selectionsClone.includes(currentParent.value)) {\n\t\t\t\t\tconst indexToRemove = selectionsClone.indexOf(currentParent.value);\n\t\t\t\t\tif (indexToRemove > -1) {\n\t\t\t\t\t\tselectionsClone.splice(indexToRemove, 1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tonChange(selectionsClone);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{children}\n\t\t\t\t\t 0}>\n\t\t\t\t\t\t
    {selected.length}
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t{options.length <= 0 ? (\n\t\t\t\t\t

    \n\t\t\t\t\t\tNo options found\n\t\t\t\t\t

    \n\t\t\t\t) : (\n\t\t\t\t\toptions.map((option) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\t})\n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n\ninterface useMultiSelectItemStylesProps {\n\tisOpen: boolean;\n\thasOptions: boolean;\n}\n\nconst useMultiSelectItemStyles = createUseThemedStyles((theme) => ({\n\tcollapseButtonOuter: ({ hasOptions }: useMultiSelectItemStylesProps) => ({\n\t\tpaddingTop: 4,\n\t\tdisplay: 'flex',\n\t\tpaddingBottom: 4,\n\t\talignItems: 'center',\n\t\tpaddingLeft: hasOptions ? 0 : 24,\n\t\t'& label': {\n\t\t\tfontSize: `${theme.fonts.xs.fontSize} !important`,\n\t\t\tlineHeight: `${theme.fonts.xs.lineHeight} !important`,\n\t\t},\n\t}),\n\tcollapseButton: {\n\t\twidth: 24,\n\t\theight: 24,\n\t},\n\tchevronIcon: ({ isOpen }: useMultiSelectItemStylesProps) => ({\n\t\ttransition: '0.2s all',\n\t\ttransform: isOpen ? 'rotate(0deg)' : 'rotate(-90deg)',\n\t}),\n\tcollapseInner: {\n\t\tpaddingLeft: 28,\n\t},\n}));\n\ninterface MultiSelectItemProps extends MultiSelectOption {\n\tselected: string[];\n\tonChange(event: React.ChangeEvent): void;\n}\n\nconst MultiSelectItem = ({ id, title, value, options = [], selected, disabled, onChange }: MultiSelectItemProps) => {\n\tconst hasOptions = options.length > 0;\n\tconst [isOpen, setIsOpen] = useState(false);\n\n\tconst classes = useMultiSelectItemStyles({\n\t\tisOpen,\n\t\thasOptions,\n\t});\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{hasOptions && (\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetIsOpen(!isOpen);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t\n\t\t\t
    \n\t\t\t{React.createElement(hasOptions ? Collapse : 'div', {\n\t\t\t\tin: hasOptions ? isOpen : undefined,\n\t\t\t\tchildren: (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{options.map((option) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\t})}\n\t\t
    \n\t);\n};\n\nexport const getTopLevelParentAndChildrenIds = (options: MultiSelectOption[], selectedIds: string[]) => {\n\tconst optionsClone = cloneDeep(options);\n\tconst selectedIdsClone = cloneDeep(selectedIds);\n\n\tconst selectedParents = optionsClone.filter((bpf) => {\n\t\treturn selectedIdsClone.includes(bpf.id);\n\t});\n\tconst selectedParentIds = selectedParents.map((sp) => sp.id);\n\tconst childrenIdsToExclude = selectedParents\n\t\t.reduce((previous, current) => {\n\t\t\treturn [...previous, ...(current.options ?? [])];\n\t\t}, [] as MultiSelectOption[])\n\t\t.map((i) => i.id);\n\n\tselectedParentIds.forEach((pid) => {\n\t\tconst targetIndex = selectedIdsClone.findIndex((id) => id === pid);\n\t\tif (targetIndex > -1) {\n\t\t\tselectedIdsClone.splice(targetIndex, 1);\n\t\t}\n\t});\n\n\tchildrenIdsToExclude.forEach((pid) => {\n\t\tconst targetIndex = selectedIdsClone.findIndex((id) => id === pid);\n\t\tif (targetIndex > -1) {\n\t\t\tselectedIdsClone.splice(targetIndex, 1);\n\t\t}\n\t});\n\n\treturn {\n\t\tparentIds: selectedParentIds,\n\t\tremainingChildrenIds: selectedIdsClone,\n\t};\n};\n\nexport const flattenParentAndChildIdsForSelection = (\n\toptions: MultiSelectOption[],\n\tparentIds?: string[],\n\tremainingChildrenIds?: string[]\n) => {\n\tconst optionsClone = cloneDeep(options);\n\tconst parentIdsClone = cloneDeep(parentIds) ?? [];\n\tconst idsForSelection = cloneDeep(remainingChildrenIds) ?? [];\n\n\tparentIdsClone.forEach((pid) => {\n\t\tconst targetOption = optionsClone.find((o) => o.id === pid);\n\n\t\tif (!targetOption) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!idsForSelection.includes(targetOption.id)) {\n\t\t\tidsForSelection.push(targetOption.id);\n\t\t}\n\n\t\ttargetOption.options?.forEach((o) => {\n\t\t\tif (!idsForSelection.includes(o.id)) {\n\t\t\t\tidsForSelection.push(o.id);\n\t\t\t}\n\t\t});\n\t});\n\n\treturn idsForSelection;\n};\n","import React, { FC } from 'react';\nimport { Link, useRouteMatch } from 'react-router-dom';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport classNames from 'classnames';\n\ninterface UseNavigationLinkStylesProps {\n\tisActive: boolean;\n}\n\nconst useNavigationLinkStyles = createUseThemedStyles((theme) => ({\n\tnavigationLink: ({ isActive }: UseNavigationLinkStylesProps) => ({\n\t\tborderRadius: 2,\n\t\tbackgroundColor: isActive\n\t\t\t? Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t.string()\n\t\t\t: 'transparent',\n\t\t'& a': {\n\t\t\t...theme.fonts.s,\n\t\t\tdisplay: 'block',\n\t\t\tpadding: '12px 16px',\n\t\t\tcolor: isActive ? theme.colors.primary : theme.colors.black,\n\t\t\t...(isActive ? theme.fonts.openSansSemiBold : theme.fonts.openSansRegular),\n\t\t},\n\t}),\n}));\n\ninterface NavigationLinkProps {\n\tto: string;\n\tmatch?: string;\n\tclassName?: string;\n\tonClick?(event: React.MouseEvent): void;\n}\n\nexport const NavigationLink: FC = ({ to, match, className, onClick, children }) => {\n\tconst classes = useNavigationLinkStyles({\n\t\tisActive: !!useRouteMatch(match ? match : to),\n\t});\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t{children}\n\t\t\t\n\t\t
    \n\t);\n};\n","import React, { useState } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Dropdown as ReactBootstrapDropdown } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { Dropdown, DropdownMenu, DropdownToggle, NavigationResearchDropdownMenu } from '@/components';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tnavOuter: {\n\t\tpadding: '10px 50px',\n\t\talignItems: 'center',\n\t\tjustifyContent: 'space-between',\n\t\tbackgroundColor: theme.colors.info,\n\t\t'& nav ul': {\n\t\t\tmargin: 0,\n\t\t\tpadding: 0,\n\t\t\theight: '100%',\n\t\t\tdisplay: 'flex',\n\t\t\tlistStyle: 'none',\n\t\t\tborderLeft: `1px solid rgba(255,255,255,0.4)`,\n\t\t\t'& li': {\n\t\t\t\tborderRight: `1px solid rgba(255,255,255,0.4)`,\n\t\t\t\t'& a': {\n\t\t\t\t\theight: '100%',\n\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\tpadding: '0 30px',\n\t\t\t\t\ttextAlign: 'center',\n\t\t\t\t\talignItems: 'center',\n\t\t\t\t\tflexDirection: 'column',\n\t\t\t\t\tjustifyContent: 'center',\n\t\t\t\t\tcolor: theme.colors.white,\n\t\t\t\t\t...theme.fonts.openSansSemiBold,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdropdownToggle: {\n\t\tfontFamily: `${theme.fonts.openSansSemiBold.fontFamily} !important`,\n\t\tfontWeight: `${theme.fonts.openSansSemiBold.fontWeight} !important`,\n\t\tborderRadius: `0 !important`,\n\t\tcolor: `${theme.colors.white} !important`,\n\t\tborderRight: `1px solid rgba(255,255,255,0.4) !important`,\n\t},\n\tdropdownMenuOuter: {\n\t\tpadding: 0,\n\t},\n\tdropdownMenu: {\n\t\theight: 470,\n\t\tdisplay: 'flex',\n\t\t'& .dropdown-item': {\n\t\t\tpadding: '24px 50px !important',\n\t\t},\n\t},\n\tdropdownTabs: {\n\t\twidth: 300,\n\t\tdisplay: 'flex',\n\t\tflexDirection: 'column',\n\t\tjustifyContent: 'space-between',\n\t\tborderRight: `1px solid ${theme.colors.gray300}`,\n\t},\n\tcontactCallout: {\n\t\tpadding: '32px 50px',\n\t\tborderTop: `1px solid ${theme.colors.gray300}`,\n\t},\n\tdropdownContent: {\n\t\twidth: 570,\n\t\toverflowY: 'auto',\n\t\tpadding: '24px 50px',\n\t},\n\tfilterLink: {\n\t\tdisplay: 'block',\n\t\t...theme.fonts.s,\n\t\t...theme.fonts.openSansSemiBold,\n\t},\n}));\n\ninterface NavigationMainProps {\n\tnavigationLinks: Record;\n\tclassName?: string;\n}\n\nexport const NavigationMain = ({ navigationLinks, className }: NavigationMainProps) => {\n\tconst classes = useStyles();\n\tconst [showDropdown, setShowDropdown] = useState(false);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgBookmark(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 17,\n height: 17,\n viewBox: \"0 0 17 17\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.2812 0H3.71875C2.83854 0 2.125 0.713535 2.125 1.59375V17L8.5 13.2812L14.875 17V1.59375C14.875 0.713535 14.1615 0 13.2812 0ZM13.2812 14.2252L8.5 11.4362L3.71875 14.2252V1.79297C3.71875 1.74013 3.73974 1.68946 3.7771 1.6521C3.81446 1.61474 3.86513 1.59375 3.91797 1.59375H13.082C13.1921 1.59375 13.2812 1.68283 13.2812 1.79284V14.2252Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgBookmark);\nexport default __webpack_public_path__ + \"static/media/bookmark.9447decc.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC, useMemo } from 'react';\n\nimport { NavigationLink } from '@/components';\nimport { createUseThemedStyles } from '@/hooks';\nimport { boxShadow } from '@/jss';\nimport { Col, Container, Row } from 'react-bootstrap';\n\nconst useNavigationSubStyles = createUseThemedStyles((theme) => ({\n\tnavigationSubBar: {\n\t\t...boxShadow,\n\t\tbackgroundColor: theme.colors.white,\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t},\n\tnavigationSub: {\n\t\theight: 60,\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t},\n\tchildrenOuter: {\n\t\tflexShrink: 0,\n\t\tpadding: '0 6px 0 0',\n\t},\n\tverticalRule: {\n\t\twidth: 1,\n\t\tflexShrink: 0,\n\t\theight: '100%',\n\t\tmarginRight: 6,\n\t\tbackgroundColor: theme.colors.gray300,\n\t},\n\tsubNavItem: {\n\t\twhiteSpace: 'nowrap',\n\t},\n}));\n\ninterface NavigationSubProps {\n\tnavigationItems: NavigationItem[];\n}\n\ntype NavigationItem = {\n\tto: string;\n\tmatch?: string;\n\ttitle: string;\n};\n\nexport const NavigationSub: FC = ({ navigationItems, children }) => {\n\tconst classes = useNavigationSubStyles();\n\n\tconst hasValidChildren = useMemo(() => {\n\t\tconst validChildren = React.Children.toArray(children).filter((child) => {\n\t\t\treturn React.isValidElement(child);\n\t\t});\n\n\t\treturn React.Children.count(validChildren) > 0;\n\t}, [children]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React, { FC, useCallback, useRef } from 'react';\nimport { Route, RouteProps } from 'react-router-dom';\n\nimport { AsyncPage } from '@/components';\n\nconst PrivateView: FC = ({ children }) => {\n\tconst routeIsInitialized = useRef(false);\n\n\tconst fetchData = useCallback(async () => {\n\t\tif (routeIsInitialized.current) {\n\t\t\treturn;\n\t\t}\n\n\t\t// on route checks go here\n\n\t\trouteIsInitialized.current = true;\n\t}, []);\n\n\treturn {children};\n};\n\nexport const PrivateRoute: FC = ({ children, ...routeProps }) => {\n\treturn (\n\t\t {\n\t\t\t\treturn {children};\n\t\t\t}}\n\t\t/>\n\t);\n};\n","import React from 'react';\nimport { Button, Dropdown } from 'react-bootstrap';\nimport { DropdownItemProps } from 'react-bootstrap/esm/DropdownItem';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { ReactComponent as XIcon } from '@/assets/icons/icon-x.svg';\nimport { ReactComponent as ChevronIcon } from '@/assets/icons/icon-chevron-right.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tnotificationItem: ({ isNew }: { isNew?: boolean }) => ({\n\t\tdisplay: 'flex',\n\t\talignItems: 'center',\n\t\twhiteSpace: 'normal',\n\t\tpadding: '10px 16px 10px 10px',\n\t\tborderTop: `1px solid ${theme.colors.gray300}`,\n\t\tbackgroundColor: isNew\n\t\t\t? Color(theme.colors.warning)\n\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t.string()\n\t\t\t: theme.colors.white,\n\t\t'&:hover, &:focus': {\n\t\t\tbackgroundColor: isNew\n\t\t\t\t? Color(theme.colors.warning)\n\t\t\t\t\t\t.alpha(0.32)\n\t\t\t\t\t\t.string()\n\t\t\t\t: theme.colors.gray100,\n\t\t},\n\t\t'&:active': {\n\t\t\tcolor: theme.colors.black,\n\t\t\tbackgroundColor: isNew\n\t\t\t\t? Color(theme.colors.warning)\n\t\t\t\t\t\t.alpha(0.56)\n\t\t\t\t\t\t.string()\n\t\t\t\t: Color(theme.colors.primary)\n\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t.string(),\n\t\t},\n\t}),\n\tmessageOuter: {\n\t\tflex: 1,\n\t},\n\tdismissButtonOuter: {\n\t\tmarginRight: 10,\n\t\tdisplay: 'flex',\n\t\talignSelf: 'flex-start',\n\t},\n\txIcon: {\n\t\twidth: 16,\n\t\theight: 16,\n\t\tdisplay: 'flex',\n\t\tfill: theme.colors.primary,\n\t},\n\tchevronIcon: {\n\t\twidth: 14,\n\t\theight: 14,\n\t\tdisplay: 'flex',\n\t\tmarginLeft: 16,\n\t\tfill: theme.colors.primary,\n\t},\n}));\n\ninterface NotificationItemProps extends DropdownItemProps {\n\tmessage: string;\n\tdate: string;\n\tisNew?: boolean;\n\tonDismiss?(event: React.MouseEvent): void;\n}\n\nexport const NotificationItem = ({ message, date, isNew, onDismiss, ...props }: NotificationItemProps) => {\n\tconst classes = useStyles({\n\t\tisNew,\n\t});\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\tif (onDismiss) {\n\t\t\t\t\t\t\tonDismiss(event);\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t\t\t

    \n\t\t\t\t\t{message} {date}\n\t\t\t\t

    \n\t\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n","import { v4 as uuid } from 'uuid';\nimport React, { FC, useMemo } from 'react';\nimport { Col, Row, Card, Form } from 'react-bootstrap';\n\nexport interface PropgramToggleItemProps {\n\ttitle: string;\n\tisChecked: boolean;\n\tonChange(event: React.ChangeEvent): void;\n}\n\nexport const ProgramToggleItem: FC = ({ title, isChecked, onChange }) => {\n\tconst switchId = useMemo(uuid, []);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    {title}

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n","import React, { Fragment, useCallback, useState } from 'react';\nimport { Link } from 'react-router-dom';\nimport classNames from 'classnames';\n\nimport { activityService } from '@/lib/services';\nimport { createUseThemedStyles } from '@/hooks';\nimport { boxShadow } from '@/jss';\nimport { AsyncPage } from './async-page';\nimport { ACTIVITY_TYPE_ID, RecentActivityModel } from '@/lib/models';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tlinkBox: {\n\t\t...boxShadow,\n\t\tbackgroundColor: theme.colors.white,\n\t},\n\tsectionsOuter: {\n\t\tpadding: '2.4rem 3.2rem',\n\t},\n\tlink: {\n\t\tdisplay: 'block',\n\t\t...theme.fonts.openSansSemiBold,\n\t},\n}));\n\ninterface RecentlyViewedProps {\n\tclassName?: string;\n}\n\nexport const RecentlyViewed = ({ className }: RecentlyViewedProps) => {\n\tconst classes = useStyles();\n\tconst [recentlyViewed, setRecentlyViewed] = useState([]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await activityService.getRecentlyViewed().fetch();\n\n\t\tsetRecentlyViewed(response.recentActivities);\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t{recentlyViewed.length > 0 && (\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Recently Viewed

    \n\n\t\t\t\t\t\t{recentlyViewed.map((link, linkIndex) => {\n\t\t\t\t\t\t\tconst isLastLink = linkIndex === recentlyViewed.length - 1;\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    {link.ipTypeDescription}

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{link.ipTitle}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t)}\n\t\t
    \n\t);\n};\n","import { format, parse } from 'date-fns';\nimport { cloneDeep } from 'lodash';\nimport React, { Fragment, useState, useEffect } from 'react';\nimport { Button, Form, Modal, Row, Col, ModalProps } from 'react-bootstrap';\nimport { Typeahead, Menu, MenuItem } from 'react-bootstrap-typeahead';\n\nimport { SourceModel, InputControlModel, OptionStateModel } from '@/lib/models';\nimport { createUseThemedStyles } from '@/hooks';\nimport { Select, DateInput } from '@/components';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tdialog: {\n\t\twidth: '40%',\n\t\tmaxWidth: 1240,\n\t\tmargin: '0 auto',\n\t\t'& .hackett-modal__body': {\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t},\n\t},\n}));\n\ninterface ReportInputControlsProps extends ModalProps {\n\tinputControls: InputControlModel[];\n\treportResources: SourceModel;\n\tonApply(reportResources: SourceModel): void;\n}\n\nexport const ReportInputControlsModal = ({\n\tinputControls,\n\tsetInputControls,\n\treportResources,\n\tonApply,\n\t...props\n}: ReportInputControlsProps) => {\n\tconst classes = useStyles();\n\tconst [multiSelectInputs, setMultiselectInputs] = useState>();\n\tconst SELECT_ALL_VALUE = 'all';\n\tconst inputTypes: Record = {\n\t\tcheckbox: ['bool'],\n\t\tsingleText: ['singleValueText', 'singleValueNumber'],\n\t\tdateText: ['singleValueDate'],\n\t\tsingleSelect: ['singleSelect', 'singleSelectRadio'],\n\t\tmultiSelect: ['multiSelect', 'multiSelectCheckbox'],\n\t};\n\n\tconst [inputControlsCopy, setInputControlsCopy] = useState([]);\n\n\tuseEffect(() => {\n\t\tsetMultiselectInputs(\n\t\t\tinputControls\n\t\t\t\t.filter((value) => value.type === 'multiSelect' || value.type === 'multiSelectCheckbox')\n\t\t\t\t.reduce((previous, current) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...previous,\n\t\t\t\t\t\t...{\n\t\t\t\t\t\t\t[current.id]: current.state.options?.filter((selectedItem) => selectedItem.selected),\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}, {})\n\t\t);\n\n\t\tsetInputControlsCopy(inputControls);\n\t}, [inputControls]);\n\n\tconst getInputControlStructure = (inputControl: InputControlModel, inputIndex: number) => {\n\t\tconst currentInputTarget = cloneDeep(inputControl);\n\n\t\tfor (const type in inputTypes) {\n\t\t\tif (\n\t\t\t\tinputControl &&\n\t\t\t\tinputControl.state &&\n\t\t\t\tinputControl.visible &&\n\t\t\t\tinputTypes[type].indexOf(inputControl.type) !== -1\n\t\t\t) {\n\t\t\t\tswitch (type) {\n\t\t\t\t\tcase 'checkbox':\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tconst inputControlList = cloneDeep(inputControlsCopy);\n\n\t\t\t\t\t\t\t\t\t\tcurrentInputTarget.state.value = [event.target.value];\n\t\t\t\t\t\t\t\t\t\tinputControlList[inputIndex] = currentInputTarget;\n\t\t\t\t\t\t\t\t\t\tsetInputControlsCopy(inputControlList);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{inputControl.label}\n\n\t\t\t\t\t\t\t\t\t{!inputControl.mandatory && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\n\t\t\t\t\tcase 'singleText':\n\t\t\t\t\t\tconst formType = inputControl.type === 'singleValueText' ? 'text' : 'number';\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{inputControl.label}\n\t\t\t\t\t\t\t\t{!inputControl.mandatory && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tlet inputControlList = cloneDeep(inputControlsCopy);\n\n\t\t\t\t\t\t\t\t\t\tcurrentInputTarget.state.value = [event.target.value];\n\t\t\t\t\t\t\t\t\t\tinputControlList[inputIndex] = currentInputTarget;\n\n\t\t\t\t\t\t\t\t\t\tsetInputControlsCopy(inputControlList);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\n\t\t\t\t\tcase 'dateText':\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{inputControl.label}{' '}\n\t\t\t\t\t\t\t\t\t\t\t{!inputControl.mandatory && (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t 0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? parse(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinputControl.state.value[0],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'yyyy-MM-dd',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tnew Date()\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: parse(inputControl.state.value, 'yyyy-MM-dd', new Date())\n\t\t\t\t\t\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdateFormat=\"MM/dd/yyyy\"\n\t\t\t\t\t\t\t\t\t\t\tonChange={(date) => {\n\t\t\t\t\t\t\t\t\t\t\t\tif (!date) {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\tconst formattedDate = format(date, 'yyyy-MM-dd');\n\t\t\t\t\t\t\t\t\t\t\t\tconst inputControlList = cloneDeep(inputControlsCopy);\n\n\t\t\t\t\t\t\t\t\t\t\t\tinputControlList[inputIndex].state.value = [formattedDate];\n\t\t\t\t\t\t\t\t\t\t\t\tsetInputControlsCopy(inputControlList);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired={inputControl.mandatory}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\tcase 'singleSelect':\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{inputControl.label}\n\t\t\t\t\t\t\t\t{!inputControl.mandatory && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tif (inputControl.state.options) {\n\t\t\t\t\t\t\t\t\t\t\tconst previousSelectedValueIndex = inputControl.state.options.findIndex(\n\t\t\t\t\t\t\t\t\t\t\t\t(value) => value.selected\n\t\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\t\tconst selectedValueIndex = inputControl.state.options.findIndex(\n\t\t\t\t\t\t\t\t\t\t\t\t(value) => value.value === event.target.value\n\t\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\t\tconst inputControlList = cloneDeep(inputControlsCopy);\n\n\t\t\t\t\t\t\t\t\t\t\tif (currentInputTarget.state.options) {\n\t\t\t\t\t\t\t\t\t\t\t\tcurrentInputTarget.state.options[\n\t\t\t\t\t\t\t\t\t\t\t\t\tpreviousSelectedValueIndex\n\t\t\t\t\t\t\t\t\t\t\t\t].selected = false;\n\n\t\t\t\t\t\t\t\t\t\t\t\tcurrentInputTarget.state.options[selectedValueIndex].selected = true;\n\n\t\t\t\t\t\t\t\t\t\t\t\tcurrentInputTarget.state.value =\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentInputTarget.state.options[selectedValueIndex].value;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tinputControlList[inputIndex] = currentInputTarget;\n\n\t\t\t\t\t\t\t\t\t\t\tsetInputControlsCopy(inputControlList);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{inputControl.state.options &&\n\t\t\t\t\t\t\t\t\t\tinputControl.state.options.map(\n\t\t\t\t\t\t\t\t\t\t\t(optionItem: OptionStateModel, index: number) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{optionItem.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\n\t\t\t\t\tdefault:\n\t\t\t\t\t\t//multiSelect case\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{inputControl.state.options && multiSelectInputs && multiSelectInputs[inputControl.id] && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{inputControl.label}\n\n\t\t\t\t\t\t\t\t\t\t\t{!inputControl.mandatory && (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetMultiselectInputs((prevState: any) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (currentSelection.length && currentSelection[currentSelection.length - 1].value === SELECT_ALL_VALUE && typeof inputControl.state.options !== 'undefined') {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn currentSelection.length > inputControl.state.options.length ? { ...prevState, [inputControl.id]: [] } : { ...prevState, [inputControl.id]: inputControl.state.options }\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn { ...prevState, [inputControl.id]: currentSelection };\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\toptions={(() => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tselected: multiSelectInputs[inputControl.id].length === inputControl.state.options.length,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlabel: 'Select All',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: SELECT_ALL_VALUE\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inputControl.state.options\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t})()}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"\"\n\t\t\t\t\t\t\t\t\t\t\trenderMenu={(results: any, { newSelectionPrefix, paginationText, renderMenuItemChildren, ...menuProps }) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{results.map((result: any, index: number) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t { }} /> {result.value === SELECT_ALL_VALUE ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{result.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : result.label === \"\" ? Load More : result.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\n\tconst handleSubmit = (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\t\tconst rawInputControlValues = inputControlsCopy.map((inputItem) => {\n\t\t\tconst inputItemCopy = cloneDeep(inputItem);\n\n\t\t\tif (\n\t\t\t\ttypeof inputItemCopy.state.options !== 'undefined' &&\n\t\t\t\t!inputTypes.multiSelect.includes(inputItemCopy.type)\n\t\t\t) {\n\t\t\t\tconst selectedValue = inputItemCopy.state.options.find((item) => item.selected);\n\n\t\t\t\treturn {\n\t\t\t\t\t[inputItemCopy.id]: selectedValue ? [selectedValue.value] : [],\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\treturn {\n\t\t\t\t\t[inputItemCopy.id]: Array.isArray(inputItemCopy.state.value)\n\t\t\t\t\t\t? inputItemCopy.state.value\n\t\t\t\t\t\t: [inputItemCopy.state.value],\n\t\t\t\t};\n\t\t\t}\n\t\t});\n\n\t\tconst inputControlValues = rawInputControlValues.reduce(\n\t\t\t(previous, current) => ({ ...previous, ...current }),\n\t\t\t{}\n\t\t);\n\n\t\tlet multiSelectInputValues: any = {};\n\n\t\tfor (const key in multiSelectInputs) {\n\t\t\tmultiSelectInputValues[key as string] = multiSelectInputs[key as string].map((input: any) => input.value);\n\t\t}\n\n\t\tlet chartParams = {\n\t\t\t...reportResources,\n\t\t\tchartParams: { ...inputControlValues, ...multiSelectInputValues },\n\t\t};\n\n\t\tonApply(chartParams);\n\t};\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\tFilters\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t{inputControlsCopy &&\n\t\t\t\t\t\tinputControlsCopy.map((inputControl: InputControlModel, inputIndex: number) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{getInputControlStructure(inputControl, inputIndex)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Form } from 'react-bootstrap';\n\nimport { ReportExtensionModel } from '@/lib/models';\nimport { Select } from '@/components';\n\ninterface ReportOptionsProps {\n\tdownloadOptions: ReportExtensionModel[] | undefined;\n\tisDownloadInProgress: boolean;\n\tcurrentReportOutput: string;\n\thandleDownloadReport: (e: React.ChangeEvent) => void;\n}\n\nexport const ReportOptions = ({\n\tdownloadOptions,\n\tisDownloadInProgress,\n\tcurrentReportOutput,\n\thandleDownloadReport,\n}: ReportOptionsProps) => {\n\treturn (\n\t\t<>\n\t\t\t{downloadOptions && (\n\t\t\t\t
    \n\t\t\t\t\t{isDownloadInProgress ? (\n\t\t\t\t\t\tDownloading report... \n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\tDownload format: \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{downloadOptions.map((extension, index) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t)}\n\t\t\n\t);\n};\n","import React from 'react';\nimport { Button, Col } from 'react-bootstrap';\nimport { JasperBookmarkModel } from '@/lib/models';\nimport { createUseThemedStyles } from '@/hooks';\n\ninterface ReportPaginationItemProps {\n\tbookmarks: JasperBookmarkModel[];\n\tcurrentBookmark: number;\n\tcurrentPage: number;\n\ttotalPages: number;\n\thandleBookmarkChange: (targetPage: number) => void;\n\thandlePageChange: (targetPage: number) => void;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tbtnBookmarkActive: {\n\t\tborderRadius: '25px !important',\n\t},\n\tbtnBookmark: {\n\t\tcolor: 'black !important',\n\t\tbackground: 'unset !important',\n\t},\n}));\n\nexport const ReportPagination = ({\n\tbookmarks,\n\tcurrentBookmark,\n\tcurrentPage,\n\ttotalPages,\n\thandleBookmarkChange,\n\thandlePageChange,\n}: ReportPaginationItemProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t{!!bookmarks.length && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{bookmarks.map((bookmark, index) =>\n\t\t\t\t\t\t\tbookmark.page === currentBookmark ? (\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\thandleBookmarkChange(bookmark.page);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{bookmark.name}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\thandleBookmarkChange(bookmark.page);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{bookmark.name}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\n\n\t\t\t{totalPages > 1 && (\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t handlePageChange(1)}\n\t\t\t\t\t\t\tdisabled={currentPage === 1}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tFirst\n\t\t\t\t\t\t\n\t\t\t\t\t\t handlePageChange(currentPage - 1)}\n\t\t\t\t\t\t\tdisabled={currentPage === 1}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tPrevious\n\t\t\t\t\t\t\n\t\t\t\t\t\t{`${currentPage} / ${totalPages}`}\n\t\t\t\t\t\t handlePageChange(currentPage + 1)}\n\t\t\t\t\t\t\tdisabled={currentPage === totalPages}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tNext\n\t\t\t\t\t\t\n\t\t\t\t\t\t handlePageChange(totalPages)}\n\t\t\t\t\t\t\tdisabled={currentPage === totalPages}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tLast\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t)}\n\t\t\n\t);\n};\n","import React, { useMemo } from 'react';\n\nimport config from '@/lib/config';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\trenderJson: {\n\t\tpadding: 16,\n\t\tmarginTop: 24,\n\t\tborderRadius: 4,\n\t\tcolor: 'rgb(205,205,205)',\n\t\t...theme.fonts.xs,\n\t\tbackgroundColor: 'rgb(29,29,29)',\n\t\tborder: `1px solid ${theme.colors.gray300}`,\n\t\twhiteSpace: 'pre-wrap',\n\t\t'& .string': {\n\t\t\tcolor: 'rgb(190, 136, 112)',\n\t\t},\n\t\t'& .number': {\n\t\t\tcolor: 'rgb(177, 198, 161)',\n\t\t},\n\t\t'& .boolean, & .null': {\n\t\t\tcolor: 'rgb(84, 132, 186)',\n\t\t},\n\t\t'& .key': {\n\t\t\tcolor: 'rgb(158, 213, 250)',\n\t\t},\n\t},\n}));\n\ninterface RenderJsonProps {\n\tjson: any;\n}\n\nexport const RenderJson = ({ json }: RenderJsonProps) => {\n\tconst classes = useStyles();\n\n\tconst syntaxHighlightedJson = useMemo(() => {\n\t\tif (!json) {\n\t\t\treturn '';\n\t\t}\n\n\t\tconst jsonWithoutHtmlTags = JSON.stringify(json, null, 4)\n\t\t\t.replace(/&/g, '&')\n\t\t\t.replace(//g, '>');\n\n\t\treturn jsonWithoutHtmlTags.replace(\n\t\t\t/(\"(\\\\u[a-zA-Z0-9]{4}|\\\\[^u]|[^\\\\\"])*\"(\\s*:)?|\\b(true|false|null)\\b|-?\\d+(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)/g,\n\t\t\t(match) => {\n\t\t\t\tvar className = 'number';\n\n\t\t\t\tif (/^\"/.test(match)) {\n\t\t\t\t\tif (/:$/.test(match)) {\n\t\t\t\t\t\tclassName = 'key';\n\t\t\t\t\t} else {\n\t\t\t\t\t\tclassName = 'string';\n\t\t\t\t\t}\n\t\t\t\t} else if (/true|false/.test(match)) {\n\t\t\t\t\tclassName = 'boolean';\n\t\t\t\t} else if (/null/.test(match)) {\n\t\t\t\t\tclassName = 'null';\n\t\t\t\t}\n\n\t\t\t\treturn `${match}`;\n\t\t\t}\n\t\t);\n\t}, [json]);\n\n\tif (config.HACKETT_ADVISORY_SHOW_DEBUG === 'true') {\n\t\treturn
    ;\n\t}\n\n\treturn null;\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgBookmarkFilled(_ref, svgRef) {\n  var title = _ref.title,\n      titleId = _ref.titleId,\n      props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n  return /*#__PURE__*/React.createElement(\"svg\", _extends({\n    width: 17,\n    height: 17,\n    viewBox: \"0 0 17 17\",\n    fill: \"currentColor\",\n    xmlns: \"http://www.w3.org/2000/svg\",\n    ref: svgRef,\n    \"aria-labelledby\": titleId\n  }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n    id: titleId\n  }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n    d: \"M3.71875 0H13.2812C14.1615 0 14.875 0.713535 14.875 1.59375V17L8.5 13.2812L2.125 17V1.59375C2.125 0.713535 2.83854 0 3.71875 0Z\"\n  })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgBookmarkFilled);\nexport default __webpack_public_path__ + \"static/media/bookmark-filled.5771419b.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconTags(_ref, svgRef) {\n  var title = _ref.title,\n      titleId = _ref.titleId,\n      props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n  return /*#__PURE__*/React.createElement(\"svg\", _extends({\n    xmlns: \"http://www.w3.org/2000/svg\",\n    width: 16,\n    height: 16,\n    fill: \"currentColor\",\n    className: \"bi bi-tags\",\n    viewBox: \"0 0 16 16\",\n    ref: svgRef,\n    \"aria-labelledby\": titleId\n  }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n    id: titleId\n  }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n    d: \"M3 2v4.586l7 7L14.586 9l-7-7H3zM2 2a1 1 0 0 1 1-1h4.586a1 1 0 0 1 .707.293l7 7a1 1 0 0 1 0 1.414l-4.586 4.586a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 2 6.586V2z\"\n  })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n    d: \"M5.5 5a.5.5 0 1 1 0-1 .5.5 0 0 1 0 1zm0 1a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM1 7.086a1 1 0 0 0 .293.707L8.75 15.25l-.043.043a1 1 0 0 1-1.414 0l-7-7A1 1 0 0 1 0 7.586V3a1 1 0 0 1 1-1v5.086z\"\n  })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconTags);\nexport default __webpack_public_path__ + \"static/media/icon-tags.47a9fffe.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useCallback, useState } from 'react';\nimport { Link, useHistory } from 'react-router-dom';\nimport { Button, Col, Row } from 'react-bootstrap';\nimport LinesEllipsis from 'react-lines-ellipsis';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport { DocumentModel } from '@/lib/models';\nimport { documentService } from '@/lib/services';\nimport {\n\tcreateUseThemedStyles,\n\tuseAlert,\n\tuseCopyTextToClipboard,\n\tuseHandleError,\n\tuseAnalytics,\n\tuseNavigationConfig,\n} from '@/hooks';\n\nimport { ReactComponent as ViewIcon } from '@/assets/icons/file.svg';\nimport { ReactComponent as DownloadIcon } from '@/assets/icons/download.svg';\nimport { ReactComponent as CopyIcon } from '@/assets/icons/copy.svg';\nimport { ReactComponent as BookmarkIcon } from '@/assets/icons/bookmark.svg';\nimport { ReactComponent as BookmarkFilledIcon } from '@/assets/icons/bookmark-filled.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\timageOuter: {\n\t\twidth: '100%',\n\t\tpaddingBottom: '66.66%',\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundRepeat: 'no-repeat',\n\t\tbackgroundColor: theme.colors.gray300,\n\t},\n}));\n\ninterface ResearchListItemProps {\n\tdocumentId: string;\n\tcategory: string;\n\tfileType?: string;\n\tfileName?: string;\n\tviewUrl: string;\n\tdownloadUrl: string;\n\tcanDownload: boolean;\n\tisBookmarked: boolean;\n\tto: string;\n\ttitle: string;\n\tdescription: string;\n\timageSrc: string;\n\tdate: string;\n\ttags: string[];\n\tonChange?(documents: DocumentModel): void;\n\tisPodcast?: boolean;\n}\n\nconst ResponsiveEllipsis = responsiveHOC()(LinesEllipsis);\n\nexport const ResearchListItem = ({\n\tdocumentId,\n\tcategory,\n\tfileName,\n\tviewUrl,\n\tdownloadUrl,\n\tcanDownload,\n\tisBookmarked,\n\tto,\n\ttitle,\n\tdescription,\n\timageSrc,\n\tdate,\n\ttags,\n\tonChange,\n\tisPodcast,\n}: ResearchListItemProps) => {\n\tconst classes = useStyles();\n\tconst history = useHistory();\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst [isBookmarking, setIsBookmarking] = useState(false);\n\tconst analytics = useAnalytics();\n\tconst handleShareButtonClick = () => {\n\t\tcopyTextToClipboard(`${window.location.origin}/research/${documentId}`, 'Link copied to clipboard.');\n\t};\n\n\tconst handleSaveBookmarkButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsBookmarking(true);\n\n\t\t\tconst response = await documentService.addBookmark(documentId).fetch();\n\t\t\tif (onChange) onChange(response);\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn 

    Bookmark saved.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsBookmarking(false);\n\t\t}\n\t}, [documentId, handleError, onChange, showAlert]);\n\n\tconst handleRemoveBookmarkButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsBookmarking(true);\n\n\t\t\tconst response = await documentService.removeBookmark(documentId).fetch();\n\t\t\tif (onChange) onChange(response);\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Bookmark removed.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsBookmarking(false);\n\t\t}\n\t}, [documentId, handleError, onChange, showAlert]);\n\n\tconst handleViewClick = useCallback(async () => {\n\t\ttry {\n\t\t\tif (!isPodcast) {\n\t\t\t\tawait documentService.trackDocumentView(documentId).fetch();\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// fail silently because we dont need to report a failed analytics call\n\t\t} finally {\n\t\t\tif (isPodcast) {\n\t\t\t\thistory.push(to);\n\t\t\t} else {\n\t\t\t\tanalytics.handleClickEvent(viewUrl);\n\t\t\t\twindow.open(viewUrl, '_blank', 'noopener');\n\t\t\t}\n\t\t}\n\t}, [documentId, analytics, viewUrl, isPodcast, history, to]);\n\n\tconst handleDownloadClick = useCallback(async () => {\n\t\ttry {\n\t\t\tawait documentService.trackDocumentDownload(documentId).fetch();\n\t\t} catch (error) {\n\t\t\t// fail silently because we dont need to report a failed analytics call\n\t\t} finally {\n\t\t\tanalytics.handleClickEvent(downloadUrl);\n\t\t\twindow.open(downloadUrl, '_blank', 'noopener');\n\t\t}\n\t}, [downloadUrl, documentId, analytics]);\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    {category}

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t{navigationConfig?.allowDownloads && canDownload && downloadUrl && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{isBookmarked ? (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t

    \n\t\t\t\t\t\t{title}\n\t\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t{date} {tags && tags.length > 0 && }\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t{tags &&\n\t\t\t\t\t\t\ttags.map((tag, index) => {\n\t\t\t\t\t\t\t\tconst isLastTag = index === tags.length - 1;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{tag}\n\t\t\t\t\t\t\t\t\t\t{isLastTag ? '' : ', '}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { PropsWithChildren } from 'react';\nimport { Col, Container, Row } from 'react-bootstrap';\nimport { createUseStyles } from 'react-jss';\nimport classNames from 'classnames';\nimport { mediaQueries } from '@/jss';\n\nconst useStyles = createUseStyles({\n\timageOuter: {\n\t\twidth: '100%',\n\t\theight: '250px',\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundRepeat: 'no-repeat',\n\t\t'& iframe': {\n\t\t\twidth: '100%',\n\t\t\theight: '100%',\n\t\t\tbackgroundColor: 'black',\n\t\t},\n\t\t[mediaQueries.lg]: {\n\t\t\ttop: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\twidth: '50vw',\n\t\t\theight: '100%',\n\t\t\tposition: 'absolute',\n\t\t\t'&.reverse': {\n\t\t\t\tleft: 0,\n\t\t\t\tright: 'auto',\n\t\t\t},\n\t\t},\n\t},\n\tchildrenOuter: {\n\t\tpadding: '50px 0',\n\t\t[mediaQueries.lg]: {\n\t\t\tminHeight: 500,\n\t\t\tdisplay: 'flex',\n\t\t\tflexDirection: 'column',\n\t\t\tjustifyContent: 'center',\n\t\t},\n\t},\n});\n\ninterface SalesLeadCtaProps {\n\treverse?: boolean;\n\timageUrl: string;\n\tclassName?: string;\n\timageOverlayContent?: React.ReactNode;\n}\n\nexport const SalesLeadCta = ({\n\treverse,\n\timageUrl,\n\tclassName,\n\timageOverlayContent,\n\tchildren,\n}: PropsWithChildren) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{imageOverlayContent}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{children}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconA(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"currentColor\",\n width: 16,\n height: 16,\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.45605469,8.05957031 L7.74316406,8.05957031 L6.12597656,2.96191406 L4.45605469,8.05957031 Z M4.62304688,0 L7.68164062,0 L12.2695312,12.9550781 L9.33398438,12.9550781 L8.49902344,10.2919922 L3.7265625,10.2919922 L2.83007812,12.9550781 L0,12.9550781 L4.62304688,0 Z\",\n transform: \"translate(1.958 1.545)\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconA);\nexport default __webpack_public_path__ + \"static/media/icon-a.54d9cd67.svg\";\nexport { ForwardRef as ReactComponent };","import React, { FC, useCallback, useState } from 'react';\nimport { Link, useHistory } from 'react-router-dom';\nimport { Button, Col, Row } from 'react-bootstrap';\nimport LinesEllipsis from 'react-lines-ellipsis';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\n\nimport { DocumentModel } from '@/lib/models';\nimport {\n\tcreateUseThemedStyles,\n\tuseAlert,\n\tuseAnalytics,\n\tuseCopyTextToClipboard,\n\tuseHandleError,\n\tuseNavigationConfig,\n} from '@/hooks';\n\nimport { ReactComponent as ViewIcon } from '@/assets/icons/file.svg';\nimport { ReactComponent as DownloadIcon } from '@/assets/icons/download.svg';\nimport { ReactComponent as CopyIcon } from '@/assets/icons/copy.svg';\nimport { ReactComponent as TagIcon } from '@/assets/icons/icon-tags.svg';\nimport { ReactComponent as ChevronIcon } from '@/assets/icons/icon-chevron-right.svg';\nimport { ReactComponent as BookmarkIcon } from '@/assets/icons/bookmark.svg';\nimport { ReactComponent as BookmarkFilledIcon } from '@/assets/icons/bookmark-filled.svg';\nimport { documentService } from '@/lib/services';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\titem: {\n\t\tpadding: '24px 0',\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t},\n\tchevronIcon: {\n\t\tmarginTop: -3,\n\t\tmarginLeft: 5,\n\t},\n}));\n\ninterface SearchListItemProps {\n\tid: string;\n\ttags?: string;\n\tcategory: string;\n\ttitle: string;\n\tdescription: string;\n\tdetailsUrl: string;\n\tdownloadUrl?: string;\n\tfileType?: string;\n\tfileName?: string;\n\tviewUrl?: string;\n\tcanDownload?: boolean;\n\ttype: string;\n\tisBookmarked: boolean;\n\tonChange(document: DocumentModel): void;\n\tisPodcast?: boolean;\n}\n\nconst ResponsiveEllipsis = responsiveHOC()(LinesEllipsis);\n\nexport const SearchListItem: FC = ({\n\tid,\n\ttags,\n\tcategory,\n\ttitle,\n\tdescription,\n\tdetailsUrl,\n\tdownloadUrl,\n\tviewUrl,\n\tcanDownload,\n\tfileType,\n\tfileName,\n\ttype,\n\tisBookmarked,\n\tonChange,\n\tisPodcast,\n}) => {\n\tconst classes = useStyles();\n\tconst history = useHistory();\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst [isBookmarking, setIsBookmarking] = useState(false);\n\tconst analytics = useAnalytics();\n\tconst handleShareButtonClick = () => {\n\t\tcopyTextToClipboard(`${window.location.origin}/${detailsUrl}`, 'Link copied to clipboard.');\n\t};\n\n\tconst handleSaveBookmarkButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsBookmarking(true);\n\n\t\t\tconst response = await documentService.addBookmark(id).fetch();\n\t\t\tif (onChange) {\n\t\t\t\tonChange(response);\n\t\t\t}\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Bookmark saved.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsBookmarking(false);\n\t\t}\n\t}, [id, handleError, onChange, showAlert]);\n\n\tconst handleRemoveBookmarkButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsBookmarking(true);\n\n\t\t\tconst response = await documentService.removeBookmark(id).fetch();\n\t\t\tif (onChange) {\n\t\t\t\tonChange(response);\n\t\t\t}\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Bookmark removed.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsBookmarking(false);\n\t\t}\n\t}, [id, handleError, onChange, showAlert]);\n\n\tconst handleViewClick = useCallback(async () => {\n\t\tif (!viewUrl) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tif (!isPodcast) {\n\t\t\t\tawait documentService.trackDocumentView(id).fetch();\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// fail silently because we dont need to report a failed analytics call\n\t\t} finally {\n\t\t\tif (isPodcast) {\n\t\t\t\thistory.push(detailsUrl);\n\t\t\t} else {\n\t\t\t\tanalytics.handleClickEvent(viewUrl);\n\t\t\t\twindow.open(viewUrl, '_blank', 'noopener');\n\t\t\t}\n\t\t}\n\t}, [analytics, detailsUrl, history, id, isPodcast, viewUrl]);\n\n\tconst handleDownloadClick = useCallback(async () => {\n\t\tif (downloadUrl) {\n\t\t\ttry {\n\t\t\t\tawait documentService.trackDocumentDownload(id).fetch();\n\t\t\t\tanalytics.handleClickEvent(downloadUrl);\n\t\t\t} catch (error) {\n\t\t\t\t// fail silently because we dont need to report a failed analytics call\n\t\t\t} finally {\n\t\t\t\twindow.open(downloadUrl, '_blank', 'noopener');\n\t\t\t}\n\t\t}\n\t}, [analytics, downloadUrl, id]);\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {category}

    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{viewUrl && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{navigationConfig?.allowDownloads && canDownload && downloadUrl && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{type === 'document' && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{isBookmarked ? (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{title ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
    \n\n\t\t\t\t{title && description && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{tags && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{tags}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{detailsUrl && (\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tView Details \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { FC } from 'react';\nimport { Form, FormControlProps } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as DownChevron } from '@/assets/icons/icon-chevron-down.svg';\n\nconst useSelectStyles = createUseThemedStyles((theme) => ({\n\tselect: {\n\t\tposition: 'relative',\n\t\t'& select': {\n\t\t\tzIndex: 0,\n\t\t\t...theme.fonts.s,\n\t\t\theight: 40,\n\t\t\twidth: '100%',\n\t\t\tborderRadius: 2,\n\t\t\tcursor: 'pointer',\n\t\t\tappearance: 'none',\n\t\t\tposition: 'relative',\n\t\t\tpadding: '0 40px 0 15px',\n\t\t\tcolor: theme.colors.black,\n\t\t\tbackgroundColor: theme.colors.white,\n\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\tboxShadow: '0 1px 4px 0 rgba(0, 0, 0, 0.16)',\n\t\t\t'&:hover': {\n\t\t\t\tborder: `1px solid ${theme.colors.gray600}`,\n\t\t\t},\n\t\t\t'&:focus': {\n\t\t\t\toutline: 'none',\n\t\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t\t},\n\t\t\t'&:disabled': {\n\t\t\t\tcursor: 'default',\n\t\t\t\tcolor: theme.colors.gray500,\n\t\t\t\tbackgroundColor: theme.colors.gray300,\n\t\t\t\t'&:hover': {\n\t\t\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\t\t},\n\t\t\t},\n\t\t\t'&:invalid': {\n\t\t\t\tfontStyle: 'italic',\n\t\t\t\tcolor: theme.colors.gray600,\n\t\t\t},\n\t\t\t'&::-ms-expand': {\n\t\t\t\tdisplay: 'none',\n\t\t\t},\n\t\t},\n\t\t'&--secondary': {\n\t\t\t'& select': {\n\t\t\t\tboxShadow: 'none',\n\t\t\t\tpadding: '0 35px 0 12px',\n\t\t\t\tborderColor: 'transparent',\n\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t\t...theme.fonts.openSansSemiBold,\n\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\t'&:hover': {\n\t\t\t\t\tborder: '1px solid transparent !important',\n\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t.string(),\n\t\t\t\t},\n\t\t\t\t'&:focus': {\n\t\t\t\t\toutline: 'none',\n\t\t\t\t\tborder: '1px solid transparent !important',\n\t\t\t\t\tboxShadow: `0 0 0 0.2rem ${Color(theme.colors.primary)\n\t\t\t\t\t\t.alpha(0.32)\n\t\t\t\t\t\t.rgb()}`,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tdownChevron: {\n\t\tzIndex: 1,\n\t\tright: 15,\n\t\ttop: '50%',\n\t\tposition: 'absolute',\n\t\tpointerEvents: 'none',\n\t\ttransform: 'translateY(-50%)',\n\t\tfill: theme.colors.primary,\n\t},\n}));\n\ninterface SelectProps extends FormControlProps {\n\tvariant?: 'primary' | 'secondary';\n\trequired?: boolean;\n\tclassName?: string;\n\tname?: string;\n}\n\nexport const Select: FC = ({ variant = 'primary', required, className, name, children, ...props }) => {\n\tconst classes = useSelectStyles();\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t{children}\n\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\n\nimport { ReactComponent as TagsIcon } from '@/assets/icons/icon-tags.svg';\n\nexport interface TagListItem {\n\ttitle: string;\n\tto: string;\n}\n\ninterface TagListProps {\n\tshowIcon?: boolean;\n\ttags: TagListItem[];\n}\n\nexport const TagList = ({ showIcon = true, tags }: TagListProps) => {\n\treturn (\n\t\t
    \n\t\t\t{showIcon && (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)}\n\t\t\t{tags.map((tag, index) => {\n\t\t\t\tconst isLastTag = index === tags.length - 1;\n\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{tag.title}\n\t\t\t\t\t\t\n\t\t\t\t\t\t{isLastTag ? '' : ', '}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t})}\n\t\t
    \n\t);\n};\n","import React, { FC } from 'react';\nimport { Badge, Button } from 'react-bootstrap';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { Select } from '@/components/select';\n\nimport { boxShadow } from '@/jss';\nimport { ReactComponent as XIcon } from '@/assets/icons/icon-x.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tselectedInterestsContainer: {\n\t\t...boxShadow,\n\t},\n\tselectedInterestRow: {\n\t\tdisplay: 'flex',\n\t\tpadding: '20px 30px',\n\t\talignItems: 'center',\n\t\tjustifyContent: 'space-between',\n\t\tbackgroundColor: theme.colors.white,\n\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\t'&:last-child': {\n\t\t\tborderBottom: 0,\n\t\t},\n\t},\n\txIcon: {\n\t\twidth: 24,\n\t\theight: 24,\n\t\tdisplay: 'flex',\n\t\tfill: theme.colors.white,\n\t},\n}));\n\nexport const SelectedInterestsContainer: FC = ({ children }) => {\n\tconst classes = useStyles();\n\n\treturn
    {children}
    ;\n};\n\ninterface SelectedInterestRowProps {\n\ttitle: string;\n\tonRemoveButtonClick(): void;\n\tcategory: string;\n\tpriority: string;\n\tonPriorityChange(): void;\n}\n\nexport const SelectedInterestsRow = ({\n\ttitle,\n\tonRemoveButtonClick,\n\tcategory,\n\tpriority,\n\tonPriorityChange,\n}: SelectedInterestRowProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{title}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{category}\n\t\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n","import { v4 as uuid } from 'uuid';\nimport React, { FC, useCallback, useEffect, useRef, useState } from 'react';\nimport { createUseThemedStyles } from '@/hooks';\n\nconst domParser = new DOMParser();\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\ttypewriter: {\n\t\t'& p': {\n\t\t\tmarginBottom: 18,\n\t\t},\n\t\t'& ol': {\n\t\t\tpadding: 0,\n\t\t\tmarginBottom: 18,\n\t\t\tcounterReset: 'item',\n\t\t\t'& > li': {\n\t\t\t\tpaddingLeft: 24,\n\t\t\t\tposition: 'relative',\n\t\t\t\tlistStyleType: 'none',\n\t\t\t\tcounterIncrement: 'item',\n\t\t\t\t'&:before': {\n\t\t\t\t\ttop: 0,\n\t\t\t\t\tleft: 0,\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t...theme.fonts.openSansBold,\n\t\t\t\t\tcontent: 'counter(item) \".\"',\n\t\t\t\t},\n\t\t\t\t'&:last-child': {\n\t\t\t\t\tmarginBottom: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\t'& ul': {\n\t\t\tpaddingLeft: 24,\n\t\t\tmarginBottom: 18,\n\t\t\tlistStyle: 'disc',\n\t\t\t'& > li': {\n\t\t\t\t'&:last-child': {\n\t\t\t\t\tmarginBottom: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n}));\n\ninterface TypewriterProps {\n\thtmlString: string;\n\tdelayBetweenCharacters?: number;\n\tonAnimationComplete?(): void;\n}\n\ninterface HtmlStructure {\n\tuuid: string;\n\tparentUuid?: string;\n\telement: ChildNode;\n\tchildStructures: HtmlStructure[];\n\ttext?: string;\n}\n\nexport const Typewriter: FC = ({\n\thtmlString,\n\tdelayBetweenCharacters = 10,\n\tonAnimationComplete,\n\tchildren,\n}) => {\n\tconst classes = useStyles();\n\tconst containerRef = useRef(null);\n\tconst characterTimeouts = useRef([]);\n\tconst animationCompleteTimeout = useRef();\n\tconst [animationComplete, setAnimationComplete] = useState(false);\n\n\tconst convertChildNodesToData = useCallback((elements: NodeListOf): HtmlStructure[] => {\n\t\treturn Array.from(elements).map((element) => {\n\t\t\tconst childStructures = convertChildNodesToData(element.childNodes);\n\n\t\t\treturn {\n\t\t\t\tuuid: uuid(),\n\t\t\t\telement,\n\t\t\t\tchildStructures,\n\t\t\t\t...(element.nodeType === Node.TEXT_NODE && { text: element.textContent ?? '' }),\n\t\t\t};\n\t\t});\n\t}, []);\n\n\tconst flattenHtmlStructures = useCallback(\n\t\t(htmlStructure: HtmlStructure[], parentUuid?: string): HtmlStructure[] => {\n\t\t\treturn htmlStructure.flatMap((hs) => [\n\t\t\t\t{ ...hs, parentUuid },\n\t\t\t\t...flattenHtmlStructures(hs.childStructures, hs.uuid),\n\t\t\t]);\n\t\t},\n\t\t[]\n\t);\n\n\tconst convertFlattenedHtmlStructureToSpans = useCallback((htmlStructures: HtmlStructure[]) => {\n\t\treturn htmlStructures.reduce((accumulator, currentValue) => {\n\t\t\treturn [\n\t\t\t\t...accumulator,\n\t\t\t\t...(currentValue.element.nodeType === Node.TEXT_NODE\n\t\t\t\t\t? (currentValue.text ?? '').split('').map((character) => {\n\t\t\t\t\t\t\tconst spanElement = document.createElement('span');\n\t\t\t\t\t\t\tspanElement.innerHTML = character;\n\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tuuid: uuid(),\n\t\t\t\t\t\t\t\tparentUuid: currentValue.parentUuid,\n\t\t\t\t\t\t\t\telement: spanElement,\n\t\t\t\t\t\t\t\tchildStructures: [],\n\t\t\t\t\t\t\t\ttext: character,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t })\n\t\t\t\t\t: [currentValue]),\n\t\t\t];\n\t\t}, [] as HtmlStructure[]);\n\t}, []);\n\n\tconst clearContainerHtml = () => {\n\t\tif (containerRef.current) {\n\t\t\tcontainerRef.current.innerHTML = '';\n\t\t}\n\t};\n\n\tconst clearCharacterTimeouts = () => {\n\t\tcharacterTimeouts.current.forEach((timeout) => {\n\t\t\tclearTimeout(timeout);\n\t\t});\n\n\t\tcharacterTimeouts.current = [];\n\t};\n\n\tconst clearAnimationCompleteTimeout = () => {\n\t\tif (animationCompleteTimeout.current) {\n\t\t\tclearTimeout(animationCompleteTimeout.current);\n\t\t\tanimationCompleteTimeout.current = undefined;\n\t\t}\n\t};\n\n\tconst appendHtmlStructureToDom = useCallback((htmlStructure: HtmlStructure) => {\n\t\tconst elementClone = htmlStructure.element.cloneNode(true);\n\t\t(elementClone as HTMLElement).setAttribute('data-typewriter-id', htmlStructure.uuid);\n\t\t(elementClone as HTMLElement).innerHTML = htmlStructure.text ?? '';\n\n\t\tconst parentElement = htmlStructure.parentUuid\n\t\t\t? document.querySelectorAll(`[data-typewriter-id=\"${htmlStructure.parentUuid}\"]`)[0]\n\t\t\t: containerRef.current;\n\n\t\tparentElement?.append(elementClone);\n\t}, []);\n\n\tuseEffect(() => {\n\t\tclearContainerHtml();\n\t\tclearCharacterTimeouts();\n\t\tclearAnimationCompleteTimeout();\n\n\t\tif (!htmlString) {\n\t\t\tsetAnimationComplete(true);\n\t\t\treturn;\n\t\t}\n\n\t\tconst htmlDocument = domParser.parseFromString(htmlString, 'text/html');\n\t\tconst htmlStructures = convertChildNodesToData(htmlDocument.body.childNodes);\n\n\t\tif (delayBetweenCharacters <= 0) {\n\t\t\thtmlStructures.forEach((hs) => {\n\t\t\t\tcontainerRef.current?.append(hs.element);\n\t\t\t});\n\n\t\t\tsetAnimationComplete(true);\n\t\t\treturn;\n\t\t}\n\n\t\tsetAnimationComplete(false);\n\t\tconst htmlStructuresFlat = flattenHtmlStructures(htmlStructures);\n\t\tconst htmlStructuresFlatWithSpans = convertFlattenedHtmlStructureToSpans(htmlStructuresFlat);\n\t\tconst animationDuration = htmlStructuresFlatWithSpans.length * delayBetweenCharacters;\n\n\t\thtmlStructuresFlatWithSpans.forEach((hs, index) => {\n\t\t\tconst characterTimeout = setTimeout(() => {\n\t\t\t\tappendHtmlStructureToDom(hs);\n\t\t\t}, delayBetweenCharacters * index);\n\t\t\tcharacterTimeouts.current.push(characterTimeout);\n\t\t});\n\n\t\tanimationCompleteTimeout.current = setTimeout(() => {\n\t\t\tanimationCompleteTimeout.current = undefined;\n\t\t\tsetAnimationComplete(true);\n\t\t}, animationDuration);\n\t}, [\n\t\tappendHtmlStructureToDom,\n\t\tconvertFlattenedHtmlStructureToSpans,\n\t\tconvertChildNodesToData,\n\t\tdelayBetweenCharacters,\n\t\tflattenHtmlStructures,\n\t\thtmlString,\n\t\tonAnimationComplete,\n\t]);\n\n\tuseEffect(() => {\n\t\tif (!animationComplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tonAnimationComplete?.();\n\t}, [animationComplete, onAnimationComplete]);\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tclearCharacterTimeouts();\n\t\t\tclearAnimationCompleteTimeout();\n\t\t};\n\t}, []);\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t{animationComplete &&
    {children}
    }\n\t\t\n\t);\n};\n","import React, { useEffect, useState } from 'react';\nimport Color from 'color';\n\nimport { BannerMessage } from '@/lib/models';\nimport { accountService } from '@/lib/services';\nimport { SCROLL_DIRECTION, createUseThemedStyles, useHandleError, useScrollDirection } from '@/hooks';\nimport { LoadingButton } from '@/components';\n\nimport { ReactComponent as XIcon } from '@/assets/icons/icon-x.svg';\nimport { Collapse } from 'react-bootstrap';\n\nconst useStyles = createUseThemedStyles(\n\t(theme) => ({\n\t\twelcomeBanner: {\n\t\t\tposition: 'relative',\n\t\t\tbackgroundColor: theme.colors.success,\n\t\t\t'& .container': {\n\t\t\t\tposition: 'relative',\n\t\t\t},\n\t\t},\n\t\tmessages: {\n\t\t\tpadding: '0 15px',\n\t\t\t'@media(min-width: 1175px)': {\n\t\t\t\tpadding: '0 50px',\n\t\t\t},\n\t\t},\n\t\tmessage: {\n\t\t\tdisplay: 'flex',\n\t\t\tpadding: '1.2rem 0',\n\t\t\talignItems: 'center',\n\t\t\tjustifyContent: 'space-between',\n\t\t\tborderBottom: `1px solid ${Color(theme.colors.white)\n\t\t\t\t.alpha(0.12)\n\t\t\t\t.string()}`,\n\t\t\t'& p a': {\n\t\t\t\tcolor: theme.colors.white,\n\t\t\t\ttextDecoration: 'underline',\n\t\t\t},\n\t\t\t'&:last-child': {\n\t\t\t\tborderBottom: 0,\n\t\t\t},\n\t\t},\n\t}),\n\t{ index: 6 }\n);\n\ninterface Props {\n\tbannerMessages: BannerMessage[];\n\tonBannerMessageRead(bannerMessages: BannerMessage[]): void;\n}\n\nexport const WelcomeBanner = ({ bannerMessages, onBannerMessageRead }: Props) => {\n\tconst handleError = useHandleError();\n\tconst classes = useStyles();\n\tconst [isLoading, setIsLoading] = useState(false);\n\tconst scrollDirection = useScrollDirection();\n\tconst [isMinified, setIsMinified] = useState(false);\n\n\tconst handleDismissButtonClick = async (bannerMessage: BannerMessage) => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\n\t\t\tconst response = await accountService.markBannerMessageRead(bannerMessage.bannerMessageId).fetch();\n\t\t\tonBannerMessageRead(response.bannerMessages);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (scrollDirection === SCROLL_DIRECTION.DOWN) {\n\t\t\tsetIsMinified(true);\n\t\t} else {\n\t\t\tsetIsMinified(false);\n\t\t}\n\t}, [scrollDirection]);\n\n\treturn (\n\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{bannerMessages.map((bannerMessage) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t{bannerMessage.title}{' '}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{bannerMessage.linkDescription}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\thandleDismissButtonClick(bannerMessage);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tupcomingEventLink: {\n\t\tdisplay: 'flex',\n\t},\n\timageOuter: {\n\t\twidth: 120,\n\t\theight: 80,\n\t\tflexShrink: 0,\n\t\tmarginRight: 24,\n\t\tbackgroundSize: 'cover',\n\t\tbackgroundPosition: 'center',\n\t\tbackgroundRepeat: 'no-repeat',\n\t\tbackgroundColor: theme.colors.gray200,\n\t},\n\tlink: {\n\t\tdisplay: 'block',\n\t\t...theme.fonts.openSansBold,\n\t},\n}));\n\ninterface UpcomingEventLinkProps {\n\timageSrc: string;\n\tdate: string;\n\ttitle: string;\n\tto: string;\n\tclassName?: string;\n}\n\nexport const UpcomingEventLink = ({ imageSrc, date, title, to, className }: UpcomingEventLinkProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t

    {date}

    \n\t\t\t\t\n\t\t\t\t\t{title}\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { TagList, TagListItem } from '@/components';\nimport { boxShadow } from '@/jss';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\twebcastCard: {\n\t\t...boxShadow,\n\t\tborderRadius: 2,\n\t\toverflow: 'hidden',\n\t\tbackgroundColor: theme.colors.white,\n\t},\n\tvideoThumbnail: {\n\t\theight: 200,\n\t\tbackgroundColor: theme.colors.gray600,\n\t},\n\tinformationOuter: {\n\t\tpadding: '2.0rem',\n\t},\n}));\n\ninterface WebcastCardProps {\n\tcategory: string;\n\ttitle: string;\n\tto: string;\n\ttags: TagListItem[];\n}\n\nexport const WebcastCard = ({ category, title, to, tags }: WebcastCardProps) => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t

    {category}

    \n\t\t\t\t

    \n\t\t\t\t\t{title}\n\t\t\t\t

    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport ReactDOMServer from 'react-dom/server';\nimport * as Quill from 'quill';\nimport ReactQuill, { Quill as QuillClass } from 'react-quill';\nimport Color from 'color';\nimport 'react-quill/dist/quill.snow.css';\n\nimport { createUseThemedStyles } from '@/hooks';\nimport { ReactComponent as LinkIcon } from '@/assets/icons/icon-link.svg';\nimport { ReactComponent as AIcon } from '@/assets/icons/icon-a.svg';\n\n// Props from react-quill (Could not import directly from their namespace, as they are not exported correctly)\nexport interface WysiwygProps {\n\tid?: string;\n\tclassName?: string;\n\treadOnly?: boolean;\n\tvalue?: string | Quill.Delta;\n\tdefaultValue?: string | Quill.Delta;\n\tplaceholder?: string;\n\ttabIndex?: number;\n\tbounds?: string | HTMLElement;\n\tscrollingContainer?: string | HTMLElement;\n\tonChange?: (content: string, delta: Quill.Delta, source: Quill.Sources) => void;\n\tonChangeSelection?: (range: Quill.RangeStatic, source: Quill.Sources) => void;\n\tonFocus?: (range: Quill.RangeStatic, source: Quill.Sources) => void;\n\tonBlur?: (previousRange: Quill.RangeStatic, source: Quill.Sources) => void;\n\tonKeyPress?: React.EventHandler;\n\tonKeyDown?: React.EventHandler;\n\tonKeyUp?: React.EventHandler;\n\tpreserveWhitespace?: boolean;\n}\n\n// Delcare toolbar options\n// https://quilljs.com/docs/modules/toolbar/\nconst modules = {\n\ttoolbar: [['bold', 'italic', 'underline', 'link']],\n};\n\n// Declare HTML formats that are allowed to be copy and pasted into the editor (regardless of toolbar availablitiy)\n// https://quilljs.com/docs/formats/\nconst formats = ['bold', 'italic', 'underline', 'link'];\n\n// Delcare custom toolbar icons\n// https://github.com/zenoamaro/react-quill/issues/188#issuecomment-445272662\nconst icons = QuillClass.import('ui/icons');\nicons['link'] = ReactDOMServer.renderToString();\nicons['bold'] = ReactDOMServer.renderToString();\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\twysiwyg: {\n\t\tborderRadius: 2,\n\t\tbackgroundColor: theme.colors.white,\n\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t'& .ql-toolbar': {\n\t\t\tborder: 0,\n\t\t\tborderBottomLeftRadius: 2,\n\t\t\tborderBottomRightRadius: 2,\n\t\t\tbackgroundColor: '#F2F3F3',\n\t\t\t'& button': {\n\t\t\t\tborderRadius: 2,\n\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\t'& .ql-stroke': {\n\t\t\t\t\tstroke: theme.colors.primary,\n\t\t\t\t},\n\t\t\t\t'& .ql-fill': {\n\t\t\t\t\tfill: theme.colors.primary,\n\t\t\t\t},\n\t\t\t},\n\t\t\t'& button:hover, & button:focus, & button.ql-active': {\n\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t.string(),\n\t\t\t\t'& .ql-stroke': {\n\t\t\t\t\tstroke: theme.colors.primary,\n\t\t\t\t},\n\t\t\t\t'& .ql-fill': {\n\t\t\t\t\tfill: theme.colors.primary,\n\t\t\t\t},\n\t\t\t},\n\t\t\t'& button:focus-visible': {\n\t\t\t\toutline: 'none',\n\t\t\t\tboxShadow: `0 0 0 0.2rem ${Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.32)\n\t\t\t\t\t.rgb()}`,\n\t\t\t},\n\t\t},\n\t\t'& .ql-container': {\n\t\t\tborder: 0,\n\t\t\tboxShadow: 'inset 0 1px 4px 0 rgba(0, 0, 0, 0.16)',\n\t\t\t'&.ql-disabled': {\n\t\t\t\tbackgroundColor: theme.colors.gray300,\n\t\t\t},\n\t\t},\n\t\t'&:hover': {\n\t\t\tborderColor: theme.colors.gray600,\n\t\t},\n\t\t'&:focus-within': {\n\t\t\tborderColor: theme.colors.primary,\n\t\t},\n\t},\n}));\n\nexport const Wysiwyg = ({ ...props }: WysiwygProps) => {\n\tconst classes = useStyles();\n\n\treturn ;\n};\n","import Color from 'color';\n\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { badge, button, form, card, modal } from '@/jss/bootstrap';\nimport mediaQueries from '@/jss/media-queries';\n\nconst spacerSize: number = 5;\nconst iterations: number = 40;\n\nconst m: Record> = {};\nconst ml: Record> = {};\nconst mr: Record> = {};\nconst mt: Record> = {};\nconst mb: Record> = {};\nconst mx: Record> = {};\nconst my: Record> = {};\n\nconst p: Record> = {};\nconst pl: Record> = {};\nconst pr: Record> = {};\nconst pt: Record> = {};\nconst pb: Record> = {};\nconst px: Record> = {};\nconst py: Record> = {};\n\nfor (let i: number = 0; i <= iterations; i++) {\n\tm[`.m-${i}`] = { margin: `${spacerSize * i}px !important` };\n\tml[`.ml-${i}`] = { marginLeft: `${spacerSize * i}px !important` };\n\tmr[`.mr-${i}`] = { marginRight: `${spacerSize * i}px !important` };\n\tmt[`.mt-${i}`] = { marginTop: `${spacerSize * i}px !important` };\n\tmb[`.mb-${i}`] = { marginBottom: `${spacerSize * i}px !important` };\n\tmx[`.mx-${i}`] = { marginLeft: `${spacerSize * i}px !important`, marginRight: `${spacerSize * i}px !important` };\n\tmy[`.my-${i}`] = { marginTop: `${spacerSize * i}px !important`, marginBottom: `${spacerSize * i}px !important` };\n\n\tp[`.p-${i}`] = { padding: `${spacerSize * i}px !important` };\n\tpl[`.pl-${i}`] = { paddingLeft: `${spacerSize * i}px !important` };\n\tpr[`.pr-${i}`] = { paddingRight: `${spacerSize * i}px !important` };\n\tpt[`.pt-${i}`] = { paddingTop: `${spacerSize * i}px !important` };\n\tpb[`.pb-${i}`] = { paddingBottom: `${spacerSize * i}px !important` };\n\tpx[`.px-${i}`] = { paddingLeft: `${spacerSize * i}px !important`, paddingRight: `${spacerSize * i}px !important` };\n\tpy[`.py-${i}`] = { paddingTop: `${spacerSize * i}px !important`, paddingBottom: `${spacerSize * i}px !important` };\n}\n\nexport const useThemedBootstrapStyles = createUseThemedStyles((theme) => ({\n\t'@global': {\n\t\t/* ----------------------------------------------------------- */\n\t\t/* bsPrefix overrides */\n\t\t/* ----------------------------------------------------------- */\n\t\t...badge(theme),\n\t\t...button(theme),\n\t\t...card(theme),\n\t\t...form(theme),\n\t\t...modal(theme),\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Generic overrides */\n\t\t/* ----------------------------------------------------------- */\n\t\t'.container': {\n\t\t\t[mediaQueries.xl]: {\n\t\t\t\tmaxWidth: 1440,\n\t\t\t\twidth: 'calc(100% - 70px)',\n\t\t\t},\n\t\t\t[mediaQueries.lg]: {\n\t\t\t\tmaxWidth: 1440,\n\t\t\t\twidth: 'calc(100% - 70px)',\n\t\t\t},\n\t\t\t[mediaQueries.md]: {\n\t\t\t\tmaxWidth: 1440,\n\t\t\t\twidth: 'calc(100% - 70px)',\n\t\t\t},\n\t\t\t[mediaQueries.sm]: {\n\t\t\t\tmaxWidth: 1440,\n\t\t\t\twidth: 'calc(100% - 70px)',\n\t\t\t},\n\t\t},\n\t\t'.font-weight-regular': {\n\t\t\t...theme.fonts.openSansRegular,\n\t\t},\n\t\t'.font-weight-semi-bold': {\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'.font-weight-bold': {\n\t\t\t...theme.fonts.openSansBold,\n\t\t},\n\t\t'.font-italic': {\n\t\t\tfontStyle: 'italic',\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Spacer overrides */\n\t\t/* ----------------------------------------------------------- */\n\t\t...m,\n\t\t...ml,\n\t\t...mr,\n\t\t...mt,\n\t\t...mb,\n\t\t...mx,\n\t\t...my,\n\t\t...p,\n\t\t...pl,\n\t\t...pr,\n\t\t...pt,\n\t\t...pb,\n\t\t...px,\n\t\t...py,\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Headings and text overrides */\n\t\t/* ----------------------------------------------------------- */\n\t\t'h1, .h1': {\n\t\t\t...theme.fonts.xl,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'h2, .h2': {\n\t\t\t...theme.fonts.l,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'h3, .h3': {\n\t\t\t...theme.fonts.m,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'h4, .h4': {\n\t\t\t...theme.fonts.s,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'h5, .h5': {\n\t\t\t...theme.fonts.xs,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'h6, .h6': {\n\t\t\t...theme.fonts.xxs,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'p, .p': {\n\t\t\t...theme.fonts.s,\n\t\t\t...theme.fonts.openSansRegular,\n\t\t},\n\t\t'small, .small': {\n\t\t\t...theme.fonts.xs,\n\t\t},\n\t\t'a, .a': {\n\t\t\ttextDecoration: 'none',\n\t\t\tcolor: theme.colors.info,\n\t\t\t'&:hover': {\n\t\t\t\ttextDecoration: 'underline',\n\t\t\t\tcolor: Color(theme.colors.info)\n\t\t\t\t\t.lighten(0.16)\n\t\t\t\t\t.hex(),\n\t\t\t},\n\t\t\t'&:focus': {\n\t\t\t\toutline: 'none',\n\t\t\t\tboxShadow: `0 0 0 0.2rem ${Color(theme.colors.info)\n\t\t\t\t\t.alpha(0.3)\n\t\t\t\t\t.rgb()}`,\n\t\t\t},\n\t\t},\n\t\t'strong, bold, .strong, .bold': {\n\t\t\t...theme.fonts.openSansBold,\n\t\t},\n\t\t'.text-black': {\n\t\t\tcolor: `${theme.colors.black} !important`,\n\t\t},\n\t\t'.text-muted': {\n\t\t\tcolor: `${theme.colors.gray600} !important`,\n\t\t},\n\t\t'.text-primary': {\n\t\t\tcolor: `${theme.colors.primary} !important`,\n\t\t},\n\t\t'.text-secondary': {\n\t\t\tcolor: `${theme.colors.secondary} !important`,\n\t\t},\n\t\t'.text-success': {\n\t\t\tcolor: `${theme.colors.success} !important`,\n\t\t},\n\t\t'.text-warning': {\n\t\t\tcolor: `${theme.colors.warning} !important`,\n\t\t},\n\t\t'.text-danger': {\n\t\t\tcolor: `${theme.colors.danger} !important`,\n\t\t},\n\t\t'.text-info': {\n\t\t\tcolor: `${theme.colors.info} !important`,\n\t\t},\n\t\t'.text-dark': {\n\t\t\tcolor: `${theme.colors.dark} !important`,\n\t\t},\n\t\t'.text-gray-100': {\n\t\t\tcolor: `${theme.colors.gray100} !important`,\n\t\t},\n\t\t'.text-gray-200': {\n\t\t\tcolor: `${theme.colors.gray200} !important`,\n\t\t},\n\t\t'.text-gray-300': {\n\t\t\tcolor: `${theme.colors.gray300} !important`,\n\t\t},\n\t\t'.text-gray-400': {\n\t\t\tcolor: `${theme.colors.gray400} !important`,\n\t\t},\n\t\t'.text-gray-500': {\n\t\t\tcolor: `${theme.colors.gray500} !important`,\n\t\t},\n\t\t'.text-gray-600': {\n\t\t\tcolor: `${theme.colors.gray600} !important`,\n\t\t},\n\t\t'.text-gray-700': {\n\t\t\tcolor: `${theme.colors.gray700} !important`,\n\t\t},\n\t\t'.text-right': {\n\t\t\ttextAlign: 'right',\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* BG overrides */\n\t\t/* ----------------------------------------------------------- */\n\t\t'.bg-white': {\n\t\t\tbackgroundColor: `${theme.colors.white} !important`,\n\t\t},\n\t\t'.bg-gray-100': {\n\t\t\tbackgroundColor: `${theme.colors.gray100} !important`,\n\t\t},\n\t\t'.bg-gray-200': {\n\t\t\tbackgroundColor: `${theme.colors.gray200} !important`,\n\t\t},\n\t\t'.bg-gray-300': {\n\t\t\tbackgroundColor: `${theme.colors.gray300} !important`,\n\t\t},\n\t\t'.bg-primary': {\n\t\t\tbackgroundColor: `${theme.colors.primary} !important`,\n\t\t},\n\t\t'.bg-secondary': {\n\t\t\tbackgroundColor: `${theme.colors.secondary} !important`,\n\t\t},\n\t\t'.bg-tertiary': {\n\t\t\tbackgroundColor: `${theme.colors.tertiary} !important`,\n\t\t},\n\t\t'.bg-success': {\n\t\t\tbackgroundColor: `${theme.colors.success} !important`,\n\t\t},\n\t\t'.bg-warning': {\n\t\t\tbackgroundColor: `${theme.colors.warning} !important`,\n\t\t},\n\t\t'.bg-danger': {\n\t\t\tbackgroundColor: `${theme.colors.danger} !important`,\n\t\t},\n\t\t'.bg-info': {\n\t\t\tbackgroundColor: `${theme.colors.info} !important`,\n\t\t},\n\t\t'.bg-dark': {\n\t\t\tbackgroundColor: `${theme.colors.dark} !important`,\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* overrides (no bsPrefix support for default tabs) */\n\t\t/* ----------------------------------------------------------- */\n\t\t'.nav-tabs': {\n\t\t\tborder: 0,\n\t\t\toverflowX: 'auto',\n\t\t\tflexWrap: 'nowrap',\n\t\t\t'& .nav-item': {\n\t\t\t\tborderTop: `1px solid ${theme.colors.gray300}`,\n\t\t\t\tborderRight: 0,\n\t\t\t\tborderBottom: 0,\n\t\t\t\tborderLeft: `1px solid ${theme.colors.gray300}`,\n\t\t\t\t'&:last-child': {\n\t\t\t\t\tborderRight: `1px solid ${theme.colors.gray300}`,\n\t\t\t\t},\n\t\t\t},\n\t\t\t'& .nav-link': {\n\t\t\t\tborder: 0,\n\t\t\t\tborderRadius: 0,\n\t\t\t\tmarginBottom: 0,\n\t\t\t\tposition: 'relative',\n\t\t\t\twhiteSpace: 'nowrap',\n\t\t\t\tpadding: '2.4rem 3.2rem',\n\t\t\t\ttextTransform: 'uppercase',\n\t\t\t\t...theme.fonts.xs,\n\t\t\t\t...theme.fonts.openSansSemiBold,\n\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\t'&.active': {\n\t\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\tright: 0,\n\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\tcontent: '\"\"',\n\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\tpointerEvents: 'none',\n\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t.alpha(0.08)\n\t\t\t\t\t\t\t.string(),\n\t\t\t\t\t},\n\t\t\t\t\t'&:after': {\n\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\tright: 0,\n\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\theight: 2,\n\t\t\t\t\t\tcontent: '\"\"',\n\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\tbackgroundColor: theme.colors.primary,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t'& + .tab-content': {\n\t\t\t\tpadding: '2.4rem 3.2rem',\n\t\t\t\tborder: `1px solid ${theme.colors.gray300}`,\n\t\t\t},\n\t\t},\n\t},\n}));\n","export const prefixes = {\n\tbadge: 'hackett-badge',\n\tbtn: 'hackett-button',\n\t'form-group': 'hackett-form__group',\n\t'form-label': 'hackett-form__label',\n\t'form-control': 'hackett-form__control',\n\t'form-check': 'hackett-form__check',\n\tcard: 'hackett-card',\n\t'card-header': 'hackett-card__header',\n\t'card-title': 'hackett-card__title',\n\t'card-body': 'hackett-card__body',\n\t'card-footer': 'hackett-card__footer',\n\t'modal-header': 'hackett-modal__header',\n\t'modal-title': 'hackett-modal__title',\n\t'modal-body': 'hackett-modal__body',\n\t'modal-footer': 'hackett-modal__footer',\n};\n","import { ThemeConfig } from '@/contexts';\n\nexport const badge = (theme: ThemeConfig) => ({\n\t'.hackett-badge': {\n\t\t...theme.fonts.xxs,\n\t\tdisplay: 'inline-flex',\n\t\tpadding: '0.4rem 1.0rem',\n\t\tbackgroundColor: theme.colors.white,\n\t\t'&-pill': {\n\t\t\tborderRadius: 500,\n\t\t},\n\t\t'&.bg-primary': {\n\t\t\tcolor: theme.colors.white,\n\t\t\tbackgroundColor: `${theme.colors.primary} !important`,\n\t\t},\n\t\t'&.bg-light': {\n\t\t\tcolor: theme.colors.gray700,\n\t\t\tbackgroundColor: `${theme.colors.gray200} !important`,\n\t\t},\n\t},\n});\n","import Color from 'color';\nimport { ThemeConfig } from '@/contexts';\n\nconst solidButton = (\n\ttextColor: string,\n\tbackgroundColor: string,\n\tdisabledTextColor: string,\n\tdisabledBackgroundColor: string\n) => {\n\treturn {\n\t\tcolor: textColor,\n\t\tbackgroundColor: backgroundColor,\n\t\t'&:hover': {\n\t\t\tcolor: textColor,\n\t\t\tbackgroundColor: Color(backgroundColor)\n\t\t\t\t.lighten(0.16)\n\t\t\t\t.hex(),\n\t\t\ttextDecoration: 'none',\n\t\t},\n\t\t'&:active': {\n\t\t\tbackgroundColor: Color(backgroundColor)\n\t\t\t\t.darken(0.16)\n\t\t\t\t.hex(),\n\t\t},\n\t\t'&:focus': {\n\t\t\toutline: 'none',\n\t\t\tboxShadow: `0 0 0 0.2rem ${Color(backgroundColor)\n\t\t\t\t.alpha(0.32)\n\t\t\t\t.rgb()}`,\n\t\t},\n\t\t'&:disabled': {\n\t\t\tcolor: disabledTextColor,\n\t\t\tbackgroundColor: disabledBackgroundColor,\n\t\t},\n\t};\n};\n\nconst outlineButton = (activeColor: string, disabledColor: string) => {\n\treturn {\n\t\tcolor: activeColor,\n\t\tposition: 'relative',\n\t\tbackgroundColor: 'transparent',\n\t\t'&:before': {\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\tcontent: '\"\"',\n\t\t\tposition: 'absolute',\n\t\t\tpointerEvents: 'none',\n\t\t\tborderRadius: 'inherit',\n\t\t\tborder: `1px solid ${activeColor}`,\n\t\t},\n\t\t'&:hover': {\n\t\t\tcolor: activeColor,\n\t\t\tbackgroundColor: Color(activeColor)\n\t\t\t\t.alpha(0.16)\n\t\t\t\t.string(),\n\t\t},\n\t\t'&:active': {\n\t\t\tbackgroundColor: Color(activeColor)\n\t\t\t\t.alpha(0.32)\n\t\t\t\t.string(),\n\t\t},\n\t\t'&:disabled': {\n\t\t\tcolor: disabledColor,\n\t\t\tborderColor: disabledColor,\n\t\t},\n\t};\n};\n\nexport const button = (theme: ThemeConfig) => ({\n\t'.hackett-button': {\n\t\tdisplay: 'inline-flex',\n\t\tborder: 0,\n\t\tborderRadius: 2,\n\t\t...theme.fonts.s,\n\t\tappearance: 'none',\n\t\tpadding: '1.2rem 2.4rem',\n\t\tletterSpacing: '0.026rem',\n\t\t...theme.fonts.openSansBold,\n\t\tcolor: theme.colors.white,\n\t\tbackgroundColor: theme.colors.primary,\n\t\t'&:hover': {\n\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t.lighten(0.16)\n\t\t\t\t.hex(),\n\t\t\tcolor: theme.colors.white,\n\t\t\ttextDecoration: 'none',\n\t\t},\n\t\t'&:active': {\n\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t.darken(0.16)\n\t\t\t\t.hex(),\n\t\t},\n\t\t'&:focus': {\n\t\t\toutline: 'none',\n\t\t\tboxShadow: `0 0 0 0.2rem ${Color(theme.colors.primary)\n\t\t\t\t.alpha(0.32)\n\t\t\t\t.rgb()}`,\n\t\t},\n\t\t'&:disabled': {\n\t\t\tcolor: theme.colors.gray500,\n\t\t\tbackgroundColor: theme.colors.gray300,\n\t\t},\n\n\t\t'&-sm': {\n\t\t\tpadding: '0.8rem 2.4rem',\n\t\t},\n\n\t\t/* ---------------------------------------------- */\n\t\t/* Solid variants */\n\t\t/* ---------------------------------------------- */\n\t\t'&-secondary': {\n\t\t\t...solidButton(theme.colors.white, theme.colors.secondary, theme.colors.gray500, theme.colors.gray300),\n\t\t},\n\t\t'&-success': {\n\t\t\t...solidButton(theme.colors.white, theme.colors.success, theme.colors.gray500, theme.colors.gray300),\n\t\t},\n\t\t'&-warning': {\n\t\t\t...solidButton(theme.colors.white, theme.colors.warning, theme.colors.gray500, theme.colors.gray300),\n\t\t},\n\t\t'&-danger': {\n\t\t\t...solidButton(theme.colors.white, theme.colors.danger, theme.colors.gray500, theme.colors.gray300),\n\t\t},\n\t\t'&-info': {\n\t\t\t...solidButton(theme.colors.white, theme.colors.info, theme.colors.gray500, theme.colors.gray300),\n\t\t},\n\n\t\t/* ---------------------------------------------- */\n\t\t/* Outline variant */\n\t\t/* ---------------------------------------------- */\n\t\t'&-outline-primary': {\n\t\t\tjustifyContent: 'center',\n\t\t\t...outlineButton(theme.colors.primary, theme.colors.gray300),\n\t\t},\n\t\t'&-outline-primary&:hover': {\n\t\t\tcolor: theme.colors.primary,\n\t\t},\n\t\t'&-outline-secondary': {\n\t\t\t...outlineButton(theme.colors.secondary, theme.colors.gray300),\n\t\t},\n\t\t'&-outline-success': {\n\t\t\t...outlineButton(theme.colors.success, theme.colors.gray300),\n\t\t},\n\t\t'&-outline-warning': {\n\t\t\t...outlineButton(theme.colors.warning, theme.colors.gray300),\n\t\t},\n\t\t'&-outline-danger': {\n\t\t\t...outlineButton(theme.colors.danger, theme.colors.gray300),\n\t\t},\n\t\t'&-outline-info': {\n\t\t\t...outlineButton(theme.colors.info, theme.colors.gray300),\n\t\t},\n\n\t\t/* ---------------------------------------------- */\n\t\t/* Link variant */\n\t\t/* ---------------------------------------------- */\n\t\t'&-link': {\n\t\t\tpadding: 0,\n\t\t\tborderRadius: 0,\n\t\t\t...theme.fonts.openSansRegular,\n\t\t\tbackgroundColor: 'transparent',\n\t\t\tcolor: `${theme.colors.info} !important`,\n\t\t\t'&:hover': {\n\t\t\t\ttextDecoration: 'underline',\n\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t},\n\t\t\t'&:active': {\n\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t},\n\t\t\t'&:disabled': {\n\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t\tcolor: `${theme.colors.gray500} !important`,\n\t\t\t\t'&:hover': {\n\t\t\t\t\ttextDecoration: 'none',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { ThemeConfig } from '@/contexts';\n\nexport const card = (theme: ThemeConfig) => ({\n\t'.hackett-card': {\n\t\tborderRadius: 2,\n\t\tbackgroundColor: theme.colors.white,\n\t\tboxShadow: '0 1px 2px 0 rgba(91,103,112,0.1), 0 2px 5px 0 rgba(91,103,112,0.1)',\n\t\t'&__header': {\n\t\t\tpadding: '20px 30px',\n\t\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\t},\n\t\t'&__title': {\n\t\t\tmargin: 0,\n\t\t\t...theme.fonts.m,\n\t\t\tletterSpacing: '0.025rem',\n\t\t\t...theme.fonts.openSansBold,\n\t\t},\n\t\t'&__body': {\n\t\t\tpadding: 30,\n\t\t},\n\t\t'&__footer': {\n\t\t\tpadding: '20px 30px',\n\t\t\tborderTop: `1px solid ${theme.colors.gray300}`,\n\t\t},\n\t},\n});\n","export default __webpack_public_path__ + \"static/media/icon-checkmark-checkbox.d5258ba8.svg\";","export default __webpack_public_path__ + \"static/media/icon-chevron-down.e93cba4a.svg\";","import Color from 'color';\n\nimport { ThemeConfig } from '@/contexts';\nimport { boxShadow } from '@/jss/mixins';\n\nimport checkmarkIcon from '@/assets/icons/icon-checkmark-checkbox.svg';\nimport downChevronIcon from '@/assets/icons/icon-chevron-down.svg';\n\nexport const form = (theme: ThemeConfig) => ({\n\t'.hackett-form': {\n\t\t'&__group': {\n\t\t\tmarginBottom: 30,\n\t\t},\n\t\t'&__label': {\n\t\t\t...theme.fonts.s,\n\t\t\tmarginBottom: 5,\n\t\t\tcolor: theme.colors.black,\n\t\t\t...theme.fonts.openSansSemiBold,\n\t\t},\n\t\t'&__control': {\n\t\t\tflex: 1,\n\t\t\tpadding: 0,\n\t\t\t...theme.fonts.s,\n\t\t\twidth: '100%',\n\t\t\ttextIndent: 15,\n\t\t\tborderRadius: 2,\n\t\t\tdisplay: 'block',\n\t\t\tappearance: 'none',\n\t\t\tlineHeight: 'normal',\n\t\t\tcolor: theme.colors.black,\n\t\t\tbackgroundColor: theme.colors.white,\n\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\tboxShadow: 'inset 0 1px 4px 0 rgba(0, 0, 0, 0.16)',\n\t\t\t'&:hover': {\n\t\t\t\tborder: `1px solid ${theme.colors.gray600}`,\n\t\t\t},\n\t\t\t'&:focus': {\n\t\t\t\toutline: 'none',\n\t\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t\t},\n\t\t\t'&:disabled': {\n\t\t\t\tbackgroundColor: theme.colors.gray300,\n\t\t\t\t'&:hover': {\n\t\t\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\t\t},\n\t\t\t},\n\t\t\t'&[type=date], &[type=datetime-local], &[type=email], &[type=month], &[type=number], &[type=password], &[type=search], &[type=tel], &[type=text], &[type=time], &[type=url], &[type=week]': {\n\t\t\t\theight: 40,\n\t\t\t},\n\t\t},\n\t\t'&__check': {\n\t\t\tposition: 'relative',\n\t\t\t'&-inline': {\n\t\t\t\tmarginRight: 16,\n\t\t\t\tdisplay: 'inline-block',\n\t\t\t},\n\t\t\t'& input[type=checkbox], & input[type=radio]': {\n\t\t\t\twidth: 0,\n\t\t\t\theight: 0,\n\t\t\t\topacity: 0,\n\t\t\t\tposition: 'absolute',\n\t\t\t\t'& + label': {\n\t\t\t\t\t...theme.fonts.s,\n\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\tcursor: 'pointer',\n\t\t\t\t\talignItems: 'baseline',\n\t\t\t\t\tcolor: theme.colors.gray700,\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\twidth: 18,\n\t\t\t\t\t\theight: 18,\n\t\t\t\t\t\tcontent: '\"\"',\n\t\t\t\t\t\tflexShrink: 0,\n\t\t\t\t\t\tmarginRight: 8,\n\t\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\t\ttransform: 'translateY(2px)',\n\t\t\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\t\t\t\tboxShadow: `inset 0 1px 3px 0 rgba(51,51,51,0.1)`,\n\t\t\t\t\t},\n\t\t\t\t\t'&:hover:before': {\n\t\t\t\t\t\tbackgroundColor: Color(theme.colors.white)\n\t\t\t\t\t\t\t.darken(0.16)\n\t\t\t\t\t\t\t.hex(),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t'&:checked + label': {\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\tborderColor: theme.colors.primary,\n\t\t\t\t\t},\n\t\t\t\t\t'&:hover:before': {\n\t\t\t\t\t\tborderColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t.lighten(0.16)\n\t\t\t\t\t\t\t.hex(),\n\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t.lighten(0.16)\n\t\t\t\t\t\t\t.hex(),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t'&:focus + label': {\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t'&:disabled + label': {\n\t\t\t\t\tcursor: 'not-allowed',\n\t\t\t\t\t'&:hover:before': {\n\t\t\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t'& input[type=checkbox]': {\n\t\t\t\t'& + label': {\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\tborderRadius: 2,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t'&:checked + label': {\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\tbackgroundPosition: 'center',\n\t\t\t\t\t\tbackgroundRepeat: 'no-repeat',\n\t\t\t\t\t\tbackgroundImage: `url(${checkmarkIcon})`,\n\t\t\t\t\t\tbackgroundColor: theme.colors.primary,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t'& input[type=radio]': {\n\t\t\t\t'& + label': {\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\tborderRadius: '50%',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t'&:checked + label': {\n\t\t\t\t\t'&:before': {\n\t\t\t\t\t\tbackgroundColor: theme.colors.primary,\n\t\t\t\t\t},\n\t\t\t\t\t'&:after': {\n\t\t\t\t\t\ttop: 7,\n\t\t\t\t\t\tleft: 5,\n\t\t\t\t\t\twidth: 8,\n\t\t\t\t\t\theight: 8,\n\t\t\t\t\t\tcontent: '\"\"',\n\t\t\t\t\t\tborderRadius: '50%',\n\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t'&--badge': {\n\t\t\t\t'&-inline': {\n\t\t\t\t\tmarginRight: 8,\n\t\t\t\t\tmarginBottom: 8,\n\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t},\n\t\t\t\t'& input[type=checkbox], & input[type=radio]': {\n\t\t\t\t\twidth: 0,\n\t\t\t\t\theight: 0,\n\t\t\t\t\topacity: 0,\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t'& + label': {\n\t\t\t\t\t\tdisplay: 'inline-flex',\n\t\t\t\t\t\tflexDirection: 'column',\n\t\t\t\t\t\talignItems: 'center',\n\t\t\t\t\t\t...theme.fonts.s,\n\t\t\t\t\t\tcursor: 'pointer',\n\t\t\t\t\t\tborderRadius: 500,\n\t\t\t\t\t\tpadding: '0.8rem 2.4rem',\n\t\t\t\t\t\t...theme.fonts.openSansRegular,\n\t\t\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t\t\t\tcolor: theme.colors.primary,\n\t\t\t\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t\t\t.string(),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'&:active': {\n\t\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t\t.alpha(0.32)\n\t\t\t\t\t\t\t\t.string(),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t// CSS Trick to not increase width when font changes from regular to bold when checked\n\t\t\t\t\t\t'&:after': {\n\t\t\t\t\t\t\theight: 0,\n\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\tuserSelect: 'none',\n\t\t\t\t\t\t\tvisibility: 'hidden',\n\t\t\t\t\t\t\tpointerEvents: 'none',\n\t\t\t\t\t\t\t...theme.fonts.openSansBold,\n\t\t\t\t\t\t\tcontent: 'attr(data-title) / \"\"',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t'&:checked + label': {\n\t\t\t\t\t\tcolor: theme.colors.white,\n\t\t\t\t\t\t...theme.fonts.openSansBold,\n\t\t\t\t\t\tbackgroundColor: theme.colors.primary,\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t\t.lighten(0.16)\n\t\t\t\t\t\t\t\t.hex(),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'&:active': {\n\t\t\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t\t\t.darken(0.16)\n\t\t\t\t\t\t\t\t.hex(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t'&:focus + label': {\n\t\t\t\t\t\toutline: 'none',\n\t\t\t\t\t\tboxShadow: `0 0 0 0.2rem ${Color(theme.colors.primary)\n\t\t\t\t\t\t\t.alpha(0.3)\n\t\t\t\t\t\t\t.rgb()}`,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t'textarea.hackett-form__control': {\n\t\theight: 74,\n\t\ttextIndent: 0,\n\t\tresize: 'none',\n\t\tpadding: '8px 15px',\n\t},\n\t'.form-switch': {\n\t\tpaddingLeft: 0,\n\t\tposition: 'relative',\n\t\t'& input[type=checkbox]': {\n\t\t\twidth: 0,\n\t\t\theight: 0,\n\t\t\t'& + label': {\n\t\t\t\tpaddingLeft: 0,\n\t\t\t\t...theme.fonts.s,\n\t\t\t\tposition: 'relative',\n\t\t\t\t'&:before': {\n\t\t\t\t\twidth: 40,\n\t\t\t\t\theight: 20,\n\t\t\t\t\tborderRadius: 500,\n\t\t\t\t\ttransition: '0.2s all',\n\t\t\t\t\ttransform: 'translateY(4px)',\n\t\t\t\t\tborderColor: theme.colors.gray600,\n\t\t\t\t\tbackgroundColor: theme.colors.gray600,\n\t\t\t\t},\n\t\t\t\t'&:after': {\n\t\t\t\t\ttop: 0,\n\t\t\t\t\tleft: 0,\n\t\t\t\t\twidth: 16,\n\t\t\t\t\theight: 16,\n\t\t\t\t\tcontent: '\"\"',\n\t\t\t\t\tborderRadius: 8,\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\ttransition: '0.2s all',\n\t\t\t\t\ttransform: 'translate(2px, 6px)',\n\t\t\t\t\tbackgroundColor: theme.colors.white,\n\t\t\t\t},\n\t\t\t\t'&:hover:before': {\n\t\t\t\t\tborderColor: theme.colors.gray500,\n\t\t\t\t\tbackgroundColor: theme.colors.gray500,\n\t\t\t\t},\n\t\t\t},\n\t\t\t'&:focus + label:before': {\n\t\t\t\tboxShadow: `0 0 0 0.2rem ${Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.32)\n\t\t\t\t\t.rgb()}`,\n\t\t\t},\n\t\t\t'&:checked + label': {\n\t\t\t\t...theme.fonts.openSansBold,\n\t\t\t\t'&:before': {\n\t\t\t\t\tbackgroundImage: 'none',\n\t\t\t\t\tborderColor: theme.colors.primary,\n\t\t\t\t\tbackgroundColor: theme.colors.primary,\n\t\t\t\t},\n\t\t\t\t'&:after': {\n\t\t\t\t\ttransform: 'translate(22px, 6px)',\n\t\t\t\t},\n\t\t\t\t'&:hover:before': {\n\t\t\t\t\tborderColor: Color(theme.colors.primary)\n\t\t\t\t\t\t.lighten(0.16)\n\t\t\t\t\t\t.hex(),\n\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t.lighten(0.16)\n\t\t\t\t\t\t.hex(),\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t// Style overrides for react-bootstrap-typeahead package\n\t// https://github.com/ericgio/react-bootstrap-typeahead\n\t'.rbt': {\n\t\tposition: 'unset !important',\n\t\t'& .form-control': {\n\t\t\tborderRadius: 2,\n\t\t\t...theme.fonts.s,\n\t\t\tcolor: theme.colors.black,\n\t\t\tpadding: '5px 40px 5px 5px',\n\t\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t\tboxShadow: '0 1px 4px 0 rgba(0, 0, 0, 0.16)',\n\t\t\t'&:hover': {\n\t\t\t\tborder: `1px solid ${theme.colors.gray600}`,\n\t\t\t},\n\t\t\t'&:focus-within': {\n\t\t\t\toutline: 'none',\n\t\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t\t},\n\t\t\t'& input': {\n\t\t\t\ttextIndent: 8,\n\t\t\t},\n\t\t\t'&:after': {\n\t\t\t\tzIndex: 1,\n\t\t\t\tright: 11,\n\t\t\t\twidth: 16,\n\t\t\t\theight: 16,\n\t\t\t\ttop: '50%',\n\t\t\t\tcontent: '\"\"',\n\t\t\t\tposition: 'absolute',\n\t\t\t\tpointerEvents: 'none',\n\t\t\t\ttransform: 'translateY(-50%)',\n\t\t\t\t// Trick to use the shape of the SVG as a mask, and color it using the background\n\t\t\t\tmaskPosition: 'center',\n\t\t\t\tmaskRepeat: 'no-repeat',\n\t\t\t\tmaskImage: `url(${downChevronIcon})`,\n\t\t\t\tbackgroundColor: theme.colors.primary,\n\t\t\t},\n\t\t},\n\t\t'& .rbt-input-multi .rbt-input-wrapper': {\n\t\t\toverflow: 'visible',\n\t\t\tmargin: '0 0 -5px 0',\n\t\t},\n\t\t'& .rbt-input-multi .rbt-input-main': {\n\t\t\theight: 30,\n\t\t\tmargin: '0 0 5px 0',\n\t\t},\n\t\t'& .rbt-token-label': {\n\t\t\tlineHeight: '20px',\n\t\t},\n\t\t'& .rbt-token': {\n\t\t\tborderRadius: 0,\n\t\t\tpadding: '7px 10px',\n\t\t\talignItems: 'center',\n\t\t\tmargin: '0 5px 5px 0',\n\t\t\tdisplay: 'inline-flex',\n\t\t\tbackgroundColor: '#F2F3F3',\n\t\t\tcolor: theme.colors.primary,\n\t\t\t// '&.rbt-token-removeable': {\n\t\t\t// \tpaddingRight: 30,\n\t\t\t// },\n\t\t\t'&.rbt-token-active': {\n\t\t\t\tborderRadius: 2,\n\t\t\t\tboxShadow: `0 0 0 0.2rem ${Color(theme.colors.primary)\n\t\t\t\t\t.alpha(0.32)\n\t\t\t\t\t.rgb()}`,\n\t\t\t},\n\t\t\t'& .rbt-token-remove-button': {\n\t\t\t\ttop: -1,\n\t\t\t\tborder: 0,\n\t\t\t\twidth: 30,\n\t\t\t\theight: 30,\n\t\t\t\tpadding: 0,\n\t\t\t\tdisplay: 'flex',\n\t\t\t\t...theme.fonts.m,\n\t\t\t\talignItems: 'center',\n\t\t\t\tjustifyContent: 'center',\n\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t},\n\t\t},\n\t\t'& .rbt-menu': {\n\t\t\tborder: 0,\n\t\t\tborderRadius: 2,\n\t\t\t...boxShadow,\n\t\t\t'& .dropdown-item': {\n\t\t\t\t...theme.fonts.s,\n\t\t\t\tpadding: '8px 16px',\n\t\t\t\t'&.disabled': {\n\t\t\t\t\tcolor: theme.colors.gray600,\n\t\t\t\t},\n\t\t\t\t'&.active, &:hover': {\n\t\t\t\t\tcolor: theme.colors.black,\n\t\t\t\t\tbackgroundColor: Color(theme.colors.primary)\n\t\t\t\t\t\t.alpha(0.16)\n\t\t\t\t\t\t.string(),\n\t\t\t\t},\n\t\t\t\t'&:active': {\n\t\t\t\t\tcolor: theme.colors.white,\n\t\t\t\t\tbackgroundColor: theme.colors.primary,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n});\n","import { ThemeConfig } from '@/contexts';\n\nexport const modal = (theme: ThemeConfig) => ({\n\t'.hackett-modal': {\n\t\t'&__header': {\n\t\t\tpadding: '20px 30px',\n\t\t\tposition: 'relative',\n\t\t\tborderBottom: `1px solid ${theme.colors.gray300}`,\n\t\t\t'& .btn-close': {\n\t\t\t\ttop: '50%',\n\t\t\t\tright: 20,\n\t\t\t\tposition: 'absolute',\n\t\t\t\ttransform: 'translateY(-50%)',\n\t\t\t},\n\t\t},\n\t\t'&__title.h4': {\n\t\t\tmargin: 0,\n\t\t\t...theme.fonts.m,\n\t\t\ttextTransform: 'none',\n\t\t\tletterSpacing: '0.025rem',\n\t\t\t...theme.fonts.openSansBold,\n\t\t},\n\t\t'&__body': {\n\t\t\tpadding: 30,\n\t\t},\n\t\t'&__footer': {\n\t\t\tpadding: '20px 30px',\n\t\t\tborderTop: `1px solid ${theme.colors.gray300}`,\n\t\t},\n\t},\n});\n","import { createUseThemedStyles } from '@/hooks';\n\nexport const useGlobalStyles = createUseThemedStyles((theme) => ({\n\t'@global': {\n\t\t'#root': {\n\t\t\toverflow: 'hidden',\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Search input controls */\n\t\t/* ----------------------------------------------------------- */\n\t\t'input[type=search]::-ms-clear': {\n\t\t\tdisplay: 'none',\n\t\t\twidth: 0,\n\t\t\theight: 0,\n\t\t},\n\t\t'input[type=search]::-ms-reveal': {\n\t\t\tdisplay: 'none',\n\t\t\twidth: 0,\n\t\t\theight: 0,\n\t\t},\n\t\t'input[type=\"search\"]::-webkit-search-decoration, input[type=\"search\"]::-webkit-search-cancel-button, input[type=\"search\"]::-webkit-search-results-button, input[type=\"search\"]::-webkit-search-results-decoration': {\n\t\t\tdisplay: 'none',\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Jasper reports */\n\t\t/* ----------------------------------------------------------- */\n\t\t'.visualizejs': {\n\t\t\tlineHeight: 'normal',\n\t\t},\n\n\t\t'._jrHyperLink': {\n\t\t\tcursor: 'pointer',\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Google place autocomplete */\n\t\t/* ----------------------------------------------------------- */\n\t\t'.pac': {\n\t\t\t'&-container': {\n\t\t\t\tfontFamily: 'inherit',\n\t\t\t},\n\t\t\t'&-item': {\n\t\t\t\tlineHeight: theme.fonts.s.lineHeight,\n\t\t\t\tpadding: '8px 16px',\n\t\t\t\t'&:hover': {\n\t\t\t\t\ttextDecoration: 'underline',\n\t\t\t\t\tbackgroundColor: theme.colors.gray200,\n\t\t\t\t},\n\t\t\t\t'&-query': {\n\t\t\t\t\tfontSize: 'initial',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Placeholder text */\n\t\t/* ----------------------------------------------------------- */\n\t\t'::-webkit-input-placeholder': {\n\t\t\tfontStyle: 'italic',\n\t\t\tcolor: theme.colors.gray600,\n\t\t},\n\t\t'::-moz-placeholder': {\n\t\t\tfontStyle: 'italic',\n\t\t\tcolor: theme.colors.gray600,\n\t\t},\n\t\t':-ms-input-placeholder': {\n\t\t\tfontStyle: 'italic',\n\t\t\tcolor: theme.colors.gray600,\n\t\t},\n\t\t':-moz-placeholder': {\n\t\t\tfontStyle: 'italic',\n\t\t\tcolor: theme.colors.gray600,\n\t\t},\n\n\t\t/* ----------------------------------------------------------- */\n\t\t/* Generics */\n\t\t/* ----------------------------------------------------------- */\n\t\thtml: {\n\t\t\theight: '100%',\n\t\t\tfontSize: '10px',\n\t\t},\n\t\tbody: {\n\t\t\t...theme.fonts.s,\n\t\t\tminHeight: '100%',\n\t\t\tposition: 'relative',\n\t\t\tcolor: theme.colors.black,\n\t\t\t...theme.fonts.openSansRegular,\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t},\n\t\thr: {\n\t\t\tmargin: 0,\n\t\t\topacity: 1,\n\t\t\tbackgroundColor: theme.colors.gray300,\n\t\t},\n\t\t'.flex-1': {\n\t\t\tflex: 1,\n\t\t},\n\n\t\t'.html-editor': {\n\t\t\t'& ol': {\n\t\t\t\tmarginBottom: 0,\n\t\t\t\tmarginLeft: '2em',\n\t\t\t\tpaddingLeft: '2em',\n\t\t\t},\n\t\t\t'& ul': {\n\t\t\t\tmarginBottom: 0,\n\t\t\t\tmarginLeft: '2em',\n\t\t\t\tpaddingLeft: '2em',\n\t\t\t},\n\t\t\t'& .ql-indent-1:not(.ql-direction-rtl)': {\n\t\t\t\tmarginLeft: '4em',\n\t\t\t},\n\t\t\t'& .ql-indent-2:not(.ql-direction-rtl)': {\n\t\t\t\tmarginLeft: '8em',\n\t\t\t},\n\t\t\t'& .ql-indent-3:not(.ql-direction-rtl)': {\n\t\t\t\tmarginLeft: '12em',\n\t\t\t},\n\t\t\t'& .ql-indent-4:not(.ql-direction-rtl)': {\n\t\t\t\tmarginLeft: '16em',\n\t\t\t},\n\t\t\t'& .ql-indent-5:not(.ql-direction-rtl)': {\n\t\t\t\tmarginLeft: '20em',\n\t\t\t},\n\t\t\t'& p': {\n\t\t\t\tmargin: 0,\n\t\t\t},\n\t\t},\n\t},\n}));\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconChat(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-chat-square-text-fill\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.5a1 1 0 0 0-.8.4l-1.9 2.533a1 1 0 0 1-1.6 0L5.3 12.4a1 1 0 0 0-.8-.4H2a2 2 0 0 1-2-2V2zm3.5 1a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1h-9zm0 2.5a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconChat);\nexport default __webpack_public_path__ + \"static/media/icon-chat.bdb4e014.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useState, useCallback, useRef, useEffect } from 'react';\nimport { Button, Col, Container, Form, Row } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport { Typeahead } from 'react-bootstrap-typeahead';\n\nimport config from '@/lib/config';\nimport { AccountOptionModel, FormOption } from '@/lib/models';\nimport { accountService } from '@/lib/services';\nimport { createUseThemedStyles, useAccount, useAlert, useCanManageBookingsUrl, useHandleError } from '@/hooks';\nimport { AsyncPage, FreshDeskLink, LoadingButton, Select } from '@/components';\nimport { mediaQueries } from '@/jss';\nimport {\n\tconstructUrl,\n\tmutateBpicLocationFormatToInputFormat,\n\tmutateGooglePlaceResultToBpicLocationFormat,\n} from '@/lib/utils';\nimport { Helmet } from 'react-helmet';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tformRow: {\n\t\tboxShadow: `${theme.colors.gray300} 0px 2px 8px`,\n\t\tmargin: '0',\n\t},\n\tformCol: {\n\t\tbackground: theme.colors.white,\n\t\tpadding: '40px 55px',\n\t},\n\tfirstFormCol: {\n\t\tborderBottom: `1px solid ${theme.colors.gray200}`,\n\t\t[mediaQueries.lg]: {\n\t\t\tborderRight: `1px solid ${theme.colors.gray200}`,\n\t\t\tborderBottom: '0',\n\t\t},\n\t},\n}));\n\nexport const Profile = () => {\n\tconst classes = useStyles();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst { account, setAccount } = useAccount();\n\tconst canManageBookingsUrl = useCanManageBookingsUrl();\n\n\tconst [accountLevelOptions, setAccountLevelOptions] = useState([]);\n\tconst [accountFunctionSelectedOptions, setAccountFunctionSelectedOptions] = useState([]);\n\tconst [accountFunctionOptions, setAccountFunctionOptions] = useState([]);\n\n\tconst [profileFormEnabled, setProfileFormEnabled] = useState(false);\n\tconst [isLoading, setIsLoading] = useState(false);\n\tconst [profileForm, setProfileForm] = useState({\n\t\tname: '',\n\t\ttitle: '',\n\t\tuserLevelTagId: '',\n\t\tuserFunctionTagIds: [] as string[],\n\t\temailAddress: '',\n\t\t...(canManageBookingsUrl && { bookingsUrl: '' }),\n\t\tmobileNumber: '',\n\t\tlocation: '',\n\t});\n\tconst locationInputRef = useRef(null);\n\tconst autoCompleteRef = useRef();\n\tconst [isLocationValid, setIsLocationValid] = useState(true);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst [levelOptionsResponse, functionOptionsResponse, accountResponse] = await Promise.all([\n\t\t\taccountService.getAccountOptions('USER_LEVEL').fetch(),\n\t\t\taccountService.getAccountOptions('USER_FUNCTION').fetch(),\n\t\t\taccountService.getCurrentAccount().fetch(),\n\t\t]);\n\t\tsetAccount(accountResponse.account);\n\t\tsetAccountLevelOptions(levelOptionsResponse.options);\n\n\t\tconst reformattedOptionArray = functionOptionsResponse.options.map(function(obj) {\n\t\t\tconst rObj = {\n\t\t\t\tid: obj.tagId,\n\t\t\t\tdisplay: obj.name,\n\t\t\t};\n\t\t\treturn rObj;\n\t\t});\n\t\tsetAccountFunctionOptions(reformattedOptionArray);\n\t}, [setAccount]);\n\n\tconst handleEditProfileButtonClick = () => {\n\t\tsetProfileFormEnabled(true);\n\t\tsetProfileForm({\n\t\t\tname: account?.name ?? '',\n\t\t\ttitle: account?.title ?? '',\n\t\t\tuserLevelTagId: account?.userLevelTagId ?? '',\n\t\t\tuserFunctionTagIds: account?.userFunctionTagIds ?? [],\n\t\t\temailAddress: account?.emailAddress ?? '',\n\t\t\t...(canManageBookingsUrl && { bookingsUrl: account?.bookingsUrl ?? '' }),\n\t\t\tmobileNumber: account?.mobileNumber ?? '',\n\t\t\tlocation: account?.location ?? '',\n\t\t});\n\t\tif (account?.userFunctionTagIds) {\n\t\t\tconst functionSelectedOptionFilter = accountFunctionOptions.filter(({ id }) =>\n\t\t\t\taccount?.userFunctionTagIds?.includes(id)\n\t\t\t);\n\t\t\tsetAccountFunctionSelectedOptions(functionSelectedOptionFilter);\n\t\t}\n\t};\n\n\tconst onChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tsetProfileForm((previousValue) => {\n\t\t\treturn {\n\t\t\t\t...previousValue,\n\t\t\t\t[currentTarget.name]: currentTarget.value,\n\t\t\t};\n\t\t});\n\t};\n\n\tconst cancelChanges = () => {\n\t\tsetProfileFormEnabled(false);\n\t};\n\n\tconst handleFormSubmit = async (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\n\t\ttry {\n\t\t\tif (!account) {\n\t\t\t\tthrow new Error('account is undefined.');\n\t\t\t}\n\n\t\t\tsetIsLoading(true);\n\n\t\t\tconst accountResponse = await accountService\n\t\t\t\t.updateCurrentAccount(account.accountId, {\n\t\t\t\t\t...profileForm,\n\t\t\t\t\t...(locationInputRef.current?.value && isLocationValid\n\t\t\t\t\t\t? { location: profileForm.location }\n\t\t\t\t\t\t: { location: '' }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetAccount(accountResponse.account);\n\t\t\tsetIsLocationValid(true);\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Your account has been updated.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t\tsetProfileFormEnabled(false);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (!locationInputRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!window.google?.maps?.places?.Autocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tautoCompleteRef.current = new window.google.maps.places.Autocomplete(locationInputRef.current, {\n\t\t\ttypes: ['(cities)'],\n\t\t});\n\n\t\tautoCompleteRef.current.addListener('place_changed', () => {\n\t\t\tif (!autoCompleteRef.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst location = mutateGooglePlaceResultToBpicLocationFormat(autoCompleteRef.current.getPlace());\n\n\t\t\tsetProfileForm((previousValue) => {\n\t\t\t\treturn {\n\t\t\t\t\t...previousValue,\n\t\t\t\t\tlocation,\n\t\t\t\t};\n\t\t\t});\n\t\t\tsetIsLocationValid(true);\n\t\t});\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [profileFormEnabled]);\n\n\tuseEffect(() => {\n\t\tsetProfileForm({\n\t\t\t...profileForm,\n\t\t\tuserFunctionTagIds: accountFunctionSelectedOptions.map((value) => value.id),\n\t\t});\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [accountFunctionSelectedOptions]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Account - Profile\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    Account Settings

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    Profile information

    \n\t\t\t\t\t\t\t\t{profileFormEnabled ? (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t cancelChanges()}\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"outline-primary\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"mr-2\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tCancel Changes\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tSave Changes\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{profileFormEnabled ? (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tName\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tTitle\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tLevel\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetProfileForm({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...profileForm,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tuserLevelTagId: event.target.value,\n\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isLoading}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{accountLevelOptions.map((option) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tJob Function\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetAccountFunctionSelectedOptions(selected as FormOption[]);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\toptions={accountFunctionOptions}\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"Select Job Function\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tEmail\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tContact support to\n\t\t\t\t\t\t\t\t\t\t\t\tupdate your email address.\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{canManageBookingsUrl && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tBookings Url{' '}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tOffice Phone{' '}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tLocation{' '}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetIsLocationValid(!!e.target.value);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isLoading}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t\t\t\t{!isLocationValid && (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tLocation should be selected from the suggestion list, otherwise it\n\t\t\t\t\t\t\t\t\t\t\t\t\twill be discarded.\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tName\n\t\t\t\t\t\t\t\t\t\t\t

    {account?.name}

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tTitle\n\t\t\t\t\t\t\t\t\t\t\t

    {account?.title}

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tLevel\n\t\t\t\t\t\t\t\t\t\t\t{account?.userLevelDescription ? (\n\t\t\t\t\t\t\t\t\t\t\t\t

    {account?.userLevelDescription}

    \n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t

    None

    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tJob Function\n\t\t\t\t\t\t\t\t\t\t\t{account?.userFunctionDescription ? (\n\t\t\t\t\t\t\t\t\t\t\t\t

    {account?.userFunctionDescription}

    \n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t

    None

    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tEmail\n\t\t\t\t\t\t\t\t\t\t\t

    {account?.emailAddress}

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{canManageBookingsUrl && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tBookings URL\n\t\t\t\t\t\t\t\t\t\t\t\t{account?.bookingsUrl ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    {account?.bookingsUrl}

    \n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    None

    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tOffice Phone\n\t\t\t\t\t\t\t\t\t\t\t{account?.mobileNumber ? (\n\t\t\t\t\t\t\t\t\t\t\t\t

    {account?.mobileNumber}

    \n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t

    None

    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tLocation\n\t\t\t\t\t\t\t\t\t\t\t{account?.location ? (\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{mutateBpicLocationFormatToInputFormat(account.location)}\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t

    None

    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    Password

    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tif (config.HACKETT_ADVISORY_USE_REAL_AUTH === 'true') {\n\t\t\t\t\t\t\t\t\t\twindow.location.href = constructUrl(\n\t\t\t\t\t\t\t\t\t\t\t`${config.HACKETT_ADVISORY_AUTH_UI_URL}/change-password`,\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\tredirectUrl: encodeURIComponent(window.location.href),\n\t\t\t\t\t\t\t\t\t\t\t\tplatform: 'hackett-connect',\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tshowAlert({\n\t\t\t\t\t\t\t\t\t\t\tvariant: 'warning',\n\t\t\t\t\t\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEnvironment not configured to support this feature.\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tChange Password\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    Two Factor Authentication Method

    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tif (config.HACKETT_ADVISORY_USE_REAL_AUTH === 'true') {\n\t\t\t\t\t\t\t\t\t\twindow.location.href = constructUrl(\n\t\t\t\t\t\t\t\t\t\t\t`${config.HACKETT_ADVISORY_AUTH_UI_URL}/change-mfa-method`,\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\tredirectUrl: encodeURIComponent(window.location.href),\n\t\t\t\t\t\t\t\t\t\t\t\tplatform: 'hackett-connect',\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tshowAlert({\n\t\t\t\t\t\t\t\t\t\t\tvariant: 'warning',\n\t\t\t\t\t\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEnvironment not configured to support this feature.\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tChange\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import { ROLE_IDS } from '@/lib/models';\nimport { useAccount } from '@/hooks';\n\nexport const useCanManageBookingsUrl = () => {\n\tconst { account } = useAccount();\n\n\tconst canManageRoles = [ROLE_IDS.ADVISOR, ROLE_IDS.ACCOUNT_MANAGER];\n\tconst canManage = (account?.roles && account.roles.some((role) => canManageRoles.includes(role))) ?? false;\n\n\treturn canManage;\n};\n","import { cloneDeep } from 'lodash';\nimport React, { useState, useCallback } from 'react';\nimport { Card, Col, Container, Row } from 'react-bootstrap';\n\nimport { ProgramModel } from '@/lib/models';\nimport { navigationService, programSettingService } from '@/lib/services';\nimport { useHandleError, useAccount, useNavigationConfig } from '@/hooks';\nimport { AsyncPage, ProgramToggleItem } from '@/components';\nimport { Helmet } from 'react-helmet';\n\nexport const Programs = () => {\n\tconst handleError = useHandleError();\n\tconst { account } = useAccount();\n\tconst { setNavigationConfig } = useNavigationConfig();\n\n\tconst [programs, setPrograms] = useState([]);\n\tconst [suppressProgramEmail, setSuppressProgramEmail] = useState(false);\n\n\tconst fetchData = useCallback(async () => {\n\t\tif (!account) {\n\t\t\tthrow new Error('Account not found.');\n\t\t}\n\n\t\tconst response = await programSettingService.getPreferences(account.accountId).fetch();\n\t\tsetPrograms(response.programs);\n\t\tsetSuppressProgramEmail(response.suppressProgramEmail);\n\t}, [account]);\n\n\tasync function handleChange(\n\t\tprogramIndex: number,\n\t\tpreferenceKey: 'allowAdvisoryDisplay' | 'allowEmail',\n\t\tisChecked: boolean\n\t) {\n\t\tconst programsClone = cloneDeep(programs);\n\t\tprogramsClone[programIndex][preferenceKey] = isChecked;\n\n\t\tconst accountCommPreferences = programsClone\n\t\t\t.filter((p) => p.allowUserPreferences)\n\t\t\t.map(({ programId, allowEmail, allowAdvisoryDisplay }) => {\n\t\t\t\treturn {\n\t\t\t\t\tprogramId,\n\t\t\t\t\tallowEmails: allowEmail,\n\t\t\t\t\tallowAdvisoryDisplay,\n\t\t\t\t};\n\t\t\t});\n\n\t\ttry {\n\t\t\tif (!account) {\n\t\t\t\tthrow new Error('Account not found.');\n\t\t\t}\n\n\t\t\tconst response = await programSettingService\n\t\t\t\t.setPreferences(account.accountId, { accountCommPreferences })\n\t\t\t\t.fetch();\n\t\t\tsetPrograms(response.programs);\n\n\t\t\tconst navigationResponse = await navigationService.getNavigationItems().fetch();\n\t\t\tsetNavigationConfig(navigationResponse);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Account - Programs\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    Your Programs

    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t{programs.length > 0 ? (\n\t\t\t\t\tprograms.map(({ allowUserPreferences, allowAdvisoryDisplay, allowEmail, name }, index) => {\n\t\t\t\t\t\treturn allowUserPreferences ? (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    {name}

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\thandleChange(index, 'allowAdvisoryDisplay', event.currentTarget.checked);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{!suppressProgramEmail ? (\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\thandleChange(index, 'allowEmail', event.currentTarget.checked);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t);\n\t\t\t\t\t})\n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    No Programs

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import { cloneDeep } from 'lodash';\nimport React, { useState, useCallback } from 'react';\nimport { Col, Container, Row } from 'react-bootstrap';\n\nimport { InquiryNotificationPreference } from '@/lib/models';\nimport { navigationService } from '@/lib/services';\nimport { useHandleError, useAccount, useNavigationConfig } from '@/hooks';\nimport { AsyncPage, ProgramToggleItem } from '@/components';\nimport { inquirySettingService } from '@/lib/services/inquiry-settings-service';\nimport { Helmet } from 'react-helmet';\n\nexport const Inquiries = () => {\n\tconst handleError = useHandleError();\n\tconst { account } = useAccount();\n\tconst { setNavigationConfig } = useNavigationConfig();\n\n\tconst [inquiryNotificationPreferences, setInquiryNotificationPreferences] = useState<\n\t\tInquiryNotificationPreference[]\n\t>([]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tif (!account) {\n\t\t\tthrow new Error('Account not found.');\n\t\t}\n\n\t\tconst response = await inquirySettingService.getPreferences(account.accountId).fetch();\n\t\tsetInquiryNotificationPreferences(response.inquiryNotificationPreferences);\n\t}, [account]);\n\n\tasync function handleChange(preferenceIndex: number, isChecked: boolean) {\n\t\tconst preferencesClone = cloneDeep(inquiryNotificationPreferences);\n\t\tpreferencesClone[preferenceIndex]['shouldNotify'] = isChecked;\n\n\t\ttry {\n\t\t\tif (!account) {\n\t\t\t\tthrow new Error('Account not found.');\n\t\t\t}\n\n\t\t\tconst response = await inquirySettingService\n\t\t\t\t.setPreferences(account.accountId, { inquiryNotificationPreferences: preferencesClone })\n\t\t\t\t.fetch();\n\t\t\tsetInquiryNotificationPreferences(response.inquiryNotificationPreferences);\n\n\t\t\tconst navigationResponse = await navigationService.getNavigationItems().fetch();\n\t\t\tsetNavigationConfig(navigationResponse);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}\n\n\tfunction getSettingText(settingType: string, description: string): string {\n\t\tif (settingType === 'STATUS') {\n\t\t\treturn `Receive email communications regarding ${description} status changes?`;\n\t\t} else if (settingType === 'EVENT') {\n\t\t\treturn `Receive email notifications regarding ${description}?`;\n\t\t} else {\n\t\t\treturn description;\n\t\t}\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Account - Inquiry Settings\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    Your Inquiry Notification Preferences

    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{inquiryNotificationPreferences.map((pref: InquiryNotificationPreference, index) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\thandleChange(index, event.currentTarget.checked);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Col, Container, Row } from 'react-bootstrap';\n\nimport { EngagementCard, EngagementGrid, LinkBox } from '@/components';\n\nexport const EngagementDashboard = () => {\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    Engagement Dashboard Page

    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n","import React, { Fragment, useState } from 'react';\nimport { Button, Col, Container, Form, Row } from 'react-bootstrap';\n\nimport {\n\tengagementPlanTableColumns,\n\tengagementPlanTableHeaders,\n\tengagementPlanTableRows,\n\tENGAGEMENT_PLAN_TABLE_COLUMN_IDS,\n} from '@/lib/__mocks__';\n\nimport { TableCell, TableHeader, TableRenderer, TableRow } from '@/components/table';\nimport { Comment, CommentPost, LinkBox, Select } from '@/components';\n\nimport { ReactComponent as PaperclipIcon } from '@/assets/icons/icon-paperclip.svg';\nimport { ReactComponent as ChatIcon } from '@/assets/icons/icon-chat.svg';\n\nenum VIEW_BY {\n\tOBJECTIVE = 'OBJECTIVE',\n\tDATES = 'DATES',\n\tSTATUS = 'STATUS',\n}\n\nexport const EngagementPlan = () => {\n\tconst [viewByValue, setViewByValue] = useState(VIEW_BY.OBJECTIVE);\n\n\tconst [tableColumnsData, setTableColumnsData] = useState(engagementPlanTableColumns);\n\tconst [tableHeadersData] = useState(engagementPlanTableHeaders);\n\tconst [tableRowData, setTableRowData] = useState(engagementPlanTableRows);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    Engagement Plan

    \n\t\t\t\t\t\n\t\t\t\t\t\tView By:\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetViewByValue(event.currentTarget.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetViewByValue(event.currentTarget.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetViewByValue(event.currentTarget.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttableHeaderRowRenderer={() => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttableBodyRowRenderer={(data) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ACTION_ITEM:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    {columnData.description}

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.attachementCount} Attachments\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetTableRowData(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttableRowData.map((trd) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (trd.rowId === data.rowId) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrd.expanded = !trd.expanded;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn trd;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.commentCount === 0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'Start a Conversation'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: `${columnData.commentCount} Comments`}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.ADVISOR:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.advisor}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.STATUS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase ENGAGEMENT_PLAN_TABLE_COLUMN_IDS.MILESTONE_DATE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.milestoneDate}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn N/A;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t columnConfig.isShowing\n\t\t\t\t\t\t\t\t\t\t\t\t).length\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\texpanded={data.expanded}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t@a.miller @loremipsum.com Anthony, here's that workshop I recommended to you last we spoke.\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useHistory, useLocation, useRouteMatch } from 'react-router-dom';\nimport { Button, Card, Col, Container, Form, Modal, Row } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport { constructUrl, getParsedQuery, getValidPaginatorSize } from '@/lib/utils';\nimport { EventModel, ProgramModel } from '@/lib/models';\nimport { eventsService } from '@/lib/services';\nimport { useAccount, useHandleError, useQuery } from '@/hooks';\nimport { AsyncPage, FilterTabs, LinkBox, ListResult, Loader, LoadingButton, Select } from '@/components';\n\nimport logoCPE from '@/assets/logos/logo-cpe.gif';\n\nenum VIEW {\n\tUPCOMING = 'UPCOMING',\n\tPAST = 'PAST',\n}\n\nexport const BrowseEvents = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst { path } = useRouteMatch();\n\tconst { account } = useAccount();\n\tconst handleError = useHandleError();\n\n\tconst searchParams = useQuery();\n\tconst hasQuery = useMemo(() => {\n\t\tconst paramsToIgnore = ['size', 'view'];\n\n\t\treturn (\n\t\t\tObject.entries(getParsedQuery(searchParams)).filter(\n\t\t\t\t([key, value]) => !paramsToIgnore.includes(key) && value !== ''\n\t\t\t).length > 0\n\t\t);\n\t}, [searchParams]);\n\tconst view = searchParams.get('view') ?? VIEW.UPCOMING;\n\tconst pageRef = useRef(0);\n\tconst programId = searchParams.get('programId') ?? '';\n\tconst size = useMemo(() => parseInt(getValidPaginatorSize(searchParams), 10), [searchParams]);\n\n\tconst [isLoading, setIsLoading] = useState(false);\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [events, setEvents] = useState([]);\n\tconst [eventsTotal, setEventsTotal] = useState(0);\n\n\tconst [showCpeDetailsModal, setShowCpeDetailsModal] = useState(false);\n\n\tconst fetchPrograms = useCallback(async () => {\n\t\tif (!account) {\n\t\t\tthrow new Error('account is undefined');\n\t\t}\n\n\t\tconst response = await eventsService.getRelevantEventProgramOptions(view === VIEW.PAST).fetch();\n\t\tsetProgramOptions(response.programs);\n\t}, [account, view]);\n\n\tconst getUpcomingEventsPromise = useMemo(() => {\n\t\treturn eventsService.getUpcomingEvents({\n\t\t\tsize,\n\t\t\tpage: String(pageRef.current),\n\t\t\t...(programId && { programId }),\n\t\t});\n\t}, [programId, size]);\n\n\tconst getUpcomingEvents = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\t\t\tconst response = await getUpcomingEventsPromise.fetch();\n\n\t\t\tsetEventsTotal(response.totalCount);\n\t\t\tsetEvents((previousValue) => {\n\t\t\t\tif (pageRef.current === 0) {\n\t\t\t\t\treturn response.events;\n\t\t\t\t}\n\n\t\t\t\treturn previousValue.concat(response.events);\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t}, [getUpcomingEventsPromise, handleError]);\n\n\tconst getPastEventsPromise = useMemo(() => {\n\t\treturn eventsService.getPastEvents({\n\t\t\tsize,\n\t\t\tpage: String(pageRef.current),\n\t\t\t...(programId && { programId }),\n\t\t});\n\t}, [programId, size]);\n\n\tconst getPastEvents = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\t\t\tconst response = await getPastEventsPromise.fetch();\n\n\t\t\tsetEventsTotal(response.totalCount);\n\t\t\tsetEvents((previousValue) => {\n\t\t\t\tif (pageRef.current === 0) {\n\t\t\t\t\treturn response.events;\n\t\t\t\t}\n\n\t\t\t\treturn previousValue.concat(response.events);\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t}, [getPastEventsPromise, handleError]);\n\n\tuseEffect(() => {\n\t\tif (view === VIEW.UPCOMING) {\n\t\t\tpageRef.current = 0;\n\t\t\tgetPastEventsPromise.abort();\n\t\t\tgetUpcomingEvents();\n\t\t} else {\n\t\t\tpageRef.current = 0;\n\t\t\tgetUpcomingEventsPromise.abort();\n\t\t\tgetPastEvents();\n\t\t}\n\t}, [getPastEvents, getPastEventsPromise, getUpcomingEvents, getUpcomingEventsPromise, view]);\n\n\tconst handlePageSizeChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tpageRef.current = 0;\n\t\thistory.replace(constructUrl(pathname, { size: currentTarget.value }, search));\n\t};\n\n\tconst handleFilterTabsChange = (value: VIEW) => {\n\t\tpageRef.current = 0;\n\t\thistory.push(constructUrl(pathname, { view: value }, search));\n\t};\n\n\tconst handleProgramSelectChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tpageRef.current = 0;\n\t\thistory.push(constructUrl(pathname, { programId: currentTarget.value }, search));\n\t};\n\n\tconst handleShowMoreButtonClick = () => {\n\t\tpageRef.current += 1;\n\t\tif (view === VIEW.UPCOMING) {\n\t\t\tgetPastEventsPromise.abort();\n\t\t\tgetUpcomingEvents();\n\t\t} else {\n\t\t\tgetUpcomingEventsPromise.abort();\n\t\t\tgetPastEvents();\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Events - Browse Events\n\t\t\t\n\n\t\t\t {\n\t\t\t\t\tsetShowCpeDetailsModal(false);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\tLearn More\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tMost states require continuing professional education (CPE) for CPAs to maintain active\n\t\t\t\t\t\tlicenses. NASBA's Regulatory Compliance Services division offers several programs that assist\n\t\t\t\t\t\tstate boards and their licensees by determining high quality CPE providers. The Hackett Group is\n\t\t\t\t\t\tregistered with the National Association of State Boards of Accountancy (NASBA) as a sponsor of\n\t\t\t\t\t\tcontinuing professional education on the National Registry of CPE Sponsors. State Boards of\n\t\t\t\t\t\tAccountancy have the final authority on the acceptance of individual course for CPE credit.\n\t\t\t\t\t

    \n\t\t\t\t\t

    \n\t\t\t\t\t\tComplaints regarding registered sponsors may be submitted to the National Registry of CPE\n\t\t\t\t\t\tSponsors through its website:{' '}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\twww.nasbaregistry.org\n\t\t\t\t\t\t\n\t\t\t\t\t\t. For more information regarding administrative policies such as complaint and refund, please\n\t\t\t\t\t\tcontact our offices at 770-225-3600.\n\t\t\t\t\t

    \n\t\t\t\t\t

    \n\t\t\t\t\t\tProgram Prerequisites: You must be a member of\n\t\t\t\t\t\tHackett's Business Advisory Service program and must be employed by the member company\n\t\t\t\t\t\tparticipating in the membership.\n\t\t\t\t\t

    \n\t\t\t\t\t

    \n\t\t\t\t\t\tHow to Register: Find an event in the Upcoming\n\t\t\t\t\t\tEvents calendar that relates to your topic area for continuing education and click on the event\n\t\t\t\t\t\ttitle. From that event, you will find more information on the registration process.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {isLoading ? 'Loading...' : 'Events'}

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tPage Size\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{!isLoading && events.length === 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{isLoading && events.length <= 0 && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{events.map((event, index) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tShowing 1-{events.length}\n\t\t\t\t\t\t\t\t{hasQuery && <> of {eventsTotal}}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{events.length < eventsTotal && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tShow {size} More\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\tThe Hackett Group is registered with the National Association of State Boards of\n\t\t\t\t\t\t\t\t\tAccountancy (NASBA) as a sponsor of continuing professional education on the\n\t\t\t\t\t\t\t\t\tNational Registry of CPE Sponsors. State boards of accountancy have final authority\n\t\t\t\t\t\t\t\t\ton the acceptance of individual courses for CPE credit. Complaints regarding\n\t\t\t\t\t\t\t\t\tregistered sponsors may be addressed to National Registry of CPE Sponsors, 150\n\t\t\t\t\t\t\t\t\tFourth Avenue North, Nashville, TN 37219-2417. Web site:{' '}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\twww.nasba.org\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetShowCpeDetailsModal(true);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tLearn More\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\"logo\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useHistory, useLocation, useRouteMatch } from 'react-router-dom';\nimport { Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport { constructUrl, getParsedQuery, getValidPaginatorSize } from '@/lib/utils';\nimport { EventModel, PERFORMANCE_STUDY_STATUS_ID, ProgramModel } from '@/lib/models';\nimport { eventsService } from '@/lib/services';\nimport { useAccount, useHandleError, useQuery } from '@/hooks';\nimport { AsyncPage, FilterTabs, LinkBox, ListResult, Loader, LoadingButton, Select } from '@/components';\n\nenum VIEW {\n\tACTIVE = 'ACTIVE',\n\tPAST = 'PAST',\n}\n\nexport const PerformanceStudies = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst { path } = useRouteMatch();\n\tconst { account } = useAccount();\n\tconst handleError = useHandleError();\n\n\tconst searchParams = useQuery();\n\tconst hasQuery = useMemo(() => {\n\t\tconst paramsToIgnore = ['size', 'view'];\n\n\t\treturn (\n\t\t\tObject.entries(getParsedQuery(searchParams)).filter(\n\t\t\t\t([key, value]) => !paramsToIgnore.includes(key) && value !== ''\n\t\t\t).length > 0\n\t\t);\n\t}, [searchParams]);\n\tconst view = searchParams.get('view') ?? VIEW.ACTIVE;\n\tconst pageRef = useRef(0);\n\tconst programId = searchParams.get('programId') ?? '';\n\tconst size = useMemo(() => parseInt(getValidPaginatorSize(searchParams), 10), [searchParams]);\n\n\tconst [isLoading, setIsLoading] = useState(false);\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [performanceStudies, setPerformanceStudies] = useState([]);\n\tconst [performanceStudiesTotal, setPerformanceStudiesTotal] = useState(0);\n\n\tconst fetchPrograms = useCallback(async () => {\n\t\tif (!account) {\n\t\t\tthrow new Error('account is undefined');\n\t\t}\n\n\t\tconst response = await eventsService.getRelevantPerformanceStudyProgramOptions(view === VIEW.PAST).fetch();\n\t\tsetProgramOptions(response.programs);\n\t}, [account, view]);\n\n\tconst getUpcomingPerformanceStudiesPromise = useMemo(() => {\n\t\treturn eventsService.getUpcomingPerformanceStudies({\n\t\t\tsize,\n\t\t\tpage: String(pageRef.current),\n\t\t\t...(programId && { programId }),\n\t\t});\n\t}, [programId, size]);\n\n\tconst getUpcomingPerformanceStudies = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\t\t\tconst response = await getUpcomingPerformanceStudiesPromise.fetch();\n\n\t\t\tsetPerformanceStudiesTotal(response.totalCount);\n\t\t\tsetPerformanceStudies((previousValue) => {\n\t\t\t\tif (pageRef.current === 0) {\n\t\t\t\t\treturn response.events;\n\t\t\t\t}\n\n\t\t\t\treturn previousValue.concat(response.events);\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t}, [getUpcomingPerformanceStudiesPromise, handleError]);\n\n\tconst getPastPerformanceStudiesPromise = useMemo(() => {\n\t\treturn eventsService.getPastPerformanceStudies({\n\t\t\tsize,\n\t\t\tpage: String(pageRef.current),\n\t\t\t...(programId && { programId }),\n\t\t});\n\t}, [programId, size]);\n\n\tconst getPastPerformanceStudies = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\t\t\tconst response = await getPastPerformanceStudiesPromise.fetch();\n\n\t\t\tsetPerformanceStudiesTotal(response.totalCount);\n\t\t\tsetPerformanceStudies((previousValue) => {\n\t\t\t\tif (pageRef.current === 0) {\n\t\t\t\t\treturn response.events;\n\t\t\t\t}\n\n\t\t\t\treturn previousValue.concat(response.events);\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t}, [getPastPerformanceStudiesPromise, handleError]);\n\n\tuseEffect(() => {\n\t\tif (view === VIEW.ACTIVE) {\n\t\t\tpageRef.current = 0;\n\t\t\tgetPastPerformanceStudiesPromise.abort();\n\t\t\tgetUpcomingPerformanceStudies();\n\t\t} else {\n\t\t\tpageRef.current = 0;\n\t\t\tgetUpcomingPerformanceStudiesPromise.abort();\n\t\t\tgetPastPerformanceStudies();\n\t\t}\n\t}, [\n\t\tgetPastPerformanceStudies,\n\t\tgetPastPerformanceStudiesPromise,\n\t\tgetUpcomingPerformanceStudies,\n\t\tgetUpcomingPerformanceStudiesPromise,\n\t\tview,\n\t]);\n\n\tconst handlePageSizeChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tpageRef.current = 0;\n\t\thistory.replace(constructUrl(pathname, { size: currentTarget.value }, search));\n\t};\n\n\tconst handleFilterTabsChange = (value: VIEW) => {\n\t\tpageRef.current = 0;\n\t\thistory.push(constructUrl(pathname, { view: value }, search));\n\t};\n\n\tconst handleProgramSelectChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tpageRef.current = 0;\n\t\thistory.push(constructUrl(pathname, { programId: currentTarget.value }, search));\n\t};\n\n\tconst handleShowMoreButtonClick = () => {\n\t\tpageRef.current += 1;\n\t\tif (view === VIEW.ACTIVE) {\n\t\t\tgetPastPerformanceStudiesPromise.abort();\n\t\t\tgetUpcomingPerformanceStudies();\n\t\t} else {\n\t\t\tgetUpcomingPerformanceStudiesPromise.abort();\n\t\t\tgetPastPerformanceStudies();\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Events - Performance Studies\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {isLoading ? 'Loading...' : 'Performance Studies'}

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tPage Size\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{!isLoading && performanceStudies.length === 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{isLoading && performanceStudies.length <= 0 && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{performanceStudies.map((event, index) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{event.performanceStudyStatusId !== PERFORMANCE_STUDY_STATUS_ID.CLOSED &&\n\t\t\t\t\t\t\t\t\t\tevent.registrationUrl && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{event.performanceStudyStatusId ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tPERFORMANCE_STUDY_STATUS_ID.OPEN && 'Take Now'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t{event.performanceStudyStatusId ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tPERFORMANCE_STUDY_STATUS_ID.UPCOMING && 'Register'}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tShowing 1-{performanceStudies.length}\n\t\t\t\t\t\t\t\t{hasQuery && <> of {performanceStudiesTotal}}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{performanceStudies.length < performanceStudiesTotal && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tShow {size} More\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","export default \"data:image/gif;base64,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\"","import React, { useCallback, useState } from 'react';\nimport { Button, Col, Container, Row } from 'react-bootstrap';\nimport { useParams } from 'react-router-dom';\n\nimport { EventModel, EVENT_TYPE_ID } from '@/lib/models';\nimport { eventsService } from '@/lib/services';\nimport { useCopyTextToClipboard } from '@/hooks';\nimport { AsyncPage, EventDocumentListItem, LinkBox } from '@/components';\n\nimport { ReactComponent as CalendarIcon } from '@/assets/icons/icon-calendar-v2.svg';\nimport { Helmet } from 'react-helmet';\n\nexport const EventDetail = () => {\n\tconst { eventId } = useParams<{ eventId: string }>();\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\n\tconst [event, setEvent] = useState();\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await eventsService.getEventbyId(eventId).fetch();\n\t\tsetEvent(response);\n\t}, [eventId]);\n\n\tconst handleShareButtonClick = () => {\n\t\tcopyTextToClipboard(window.location.href, 'Link copied to clipboard.');\n\t};\n\n\tconst parser = new DOMParser();\n\tconst descriptionParsed = parser.parseFromString(event?.description ?? '', 'text/html');\n\tconst descriptionParsedString = descriptionParsed.body?.innerHTML.replace('&', '&');\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    {event?.eventTypeDesc}

    \n\t\t\t\t\t\t

    {event?.name}

    \n\n\t\t\t\t\t\t{event?.presenterName &&

    {event?.presenterName}

    }\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    {event?.durationDescription}

    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{event?.eventTypeId === EVENT_TYPE_ID.DEFAULT && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tHackett Connect - Events - Browse Events - Event Detail\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{!event.pastEvent && event.registrationUrl && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tRegister\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{event.pastEvent && event.webexRecordingUrl && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tView Recording\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{event?.eventTypeId === EVENT_TYPE_ID.PERFORMANCE_STUDY && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tHackett Connect - Events - Performance Studies - Performance Study Detail\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t{event.webexRecordingUrl && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tView Results\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{event.registrationUrl && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tParticipate in the Study\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{event?.documents.documents.map((document) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t{event?.recommendedCpeCredit && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    CPE Credit Information

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tAmount of Recommended CPE Credit: {event.recommendedCpeCredit}\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t\t{(event?.registrationRequirements || event?.courseLevel || event?.programPrerequisites) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{event?.registrationRequirements && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Registration Requirements

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{event?.courseLevel && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Course Level

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{event?.programPrerequisites && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Program Prerequisites

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t{(event?.refundPolicy || event?.complaintResolutionPolicy || event?.advancePreparation) && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{event?.refundPolicy && (\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\tRefund Policy:\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{event?.complaintResolutionPolicy && (\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\tComplaint Resolution Policy:{' '}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{event?.advancePreparation && (\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\tAdvance Preparation:{' '}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { Link, useHistory, useLocation } from 'react-router-dom';\nimport { Button, Card, Col, Container, Row } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport { Helmet } from 'react-helmet';\nimport { constructUrl } from '@/lib/utils';\n\nimport { TableColumns, TableHeaders, TableRowConfig } from '@/components/table/models';\nimport { TableCell, TableHeader, TableRenderer, TableRow } from '@/components/table';\n\nimport { AsyncPage, Select } from '@/components';\nimport { FormOption, InquiryStat, INQUIRY_STATUS_ID } from '@/lib/models';\nimport { useAccount, useHandleError, useQuery } from '@/hooks';\nimport { inquiryService } from '@/lib/services';\n\nenum INQUIRY_TABLE_COLUMN_IDS {\n\tADVISOR = 'ADVISOR',\n\tINQUIRY_RECEIVED = 'INQUIRY_RECEIVED',\n\tINQUIRY_CONFIRMED = 'INQUIRY_CONFIRMED',\n\tIN_PROGRESS = 'IN_PROGRESS',\n\tQC_REVIEW = 'QC_REVIEW',\n\tCLOSED = 'CLOSED',\n\tTOTAL = 'TOTAL',\n}\n\nenum ADVISOR_TYPE {\n\tADVISOR = 'ADVISOR',\n\tINQUIRY_ADVISOR = 'INQUIRY_ADVISOR',\n\tADVISOR_INQUIRY_ADVISOR = 'ADVISOR_INQUIRY_ADVISOR',\n}\n\nconst inquiryTableColumns: TableColumns = {\n\t[INQUIRY_TABLE_COLUMN_IDS.ADVISOR]: {\n\t\tcolumnId: INQUIRY_TABLE_COLUMN_IDS.ADVISOR,\n\t\tcolumnTitle: 'Advisor',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.INQUIRY_RECEIVED]: {\n\t\tcolumnId: INQUIRY_TABLE_COLUMN_IDS.INQUIRY_RECEIVED,\n\t\tcolumnTitle: 'Inquiry Received',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.INQUIRY_CONFIRMED]: {\n\t\tcolumnId: INQUIRY_TABLE_COLUMN_IDS.INQUIRY_CONFIRMED,\n\t\tcolumnTitle: 'Inquiry Confirmed',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.IN_PROGRESS]: {\n\t\tcolumnId: INQUIRY_TABLE_COLUMN_IDS.IN_PROGRESS,\n\t\tcolumnTitle: 'In Progress',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.QC_REVIEW]: {\n\t\tcolumnId: INQUIRY_TABLE_COLUMN_IDS.QC_REVIEW,\n\t\tcolumnTitle: 'QC Review',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.CLOSED]: {\n\t\tcolumnId: INQUIRY_TABLE_COLUMN_IDS.CLOSED,\n\t\tcolumnTitle: 'Closed',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.TOTAL]: {\n\t\tcolumnId: INQUIRY_TABLE_COLUMN_IDS.TOTAL,\n\t\tcolumnTitle: 'Total',\n\t\tisHidable: false,\n\t\tisShownByDefault: true,\n\t\tisShowing: true,\n\t},\n};\n\nconst inquiryTableHeaders: TableHeaders = {\n\t[INQUIRY_TABLE_COLUMN_IDS.ADVISOR]: {\n\t\ttableHeaderId: INQUIRY_TABLE_COLUMN_IDS.ADVISOR,\n\t\ttitle: 'Advisor',\n\t\tisSortable: false,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.INQUIRY_RECEIVED]: {\n\t\ttableHeaderId: INQUIRY_TABLE_COLUMN_IDS.INQUIRY_RECEIVED,\n\t\ttitle: 'Inquiry Received',\n\t\tisSortable: false,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.INQUIRY_CONFIRMED]: {\n\t\ttableHeaderId: INQUIRY_TABLE_COLUMN_IDS.INQUIRY_CONFIRMED,\n\t\ttitle: 'Inquiry Confirmed',\n\t\tisSortable: false,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.IN_PROGRESS]: {\n\t\ttableHeaderId: INQUIRY_TABLE_COLUMN_IDS.IN_PROGRESS,\n\t\ttitle: 'In Progress',\n\t\tisSortable: false,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.QC_REVIEW]: {\n\t\ttableHeaderId: INQUIRY_TABLE_COLUMN_IDS.QC_REVIEW,\n\t\ttitle: 'QC Review',\n\t\tisSortable: false,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.CLOSED]: {\n\t\ttableHeaderId: INQUIRY_TABLE_COLUMN_IDS.CLOSED,\n\t\ttitle: 'Closed',\n\t\tisSortable: false,\n\t},\n\t[INQUIRY_TABLE_COLUMN_IDS.TOTAL]: {\n\t\ttableHeaderId: INQUIRY_TABLE_COLUMN_IDS.TOTAL,\n\t\ttitle: 'Total',\n\t\tisSortable: false,\n\t},\n};\n\nexport const AdvisorInquiriesDashboard = () => {\n\tconst history = useHistory();\n\tconst handleError = useHandleError();\n\tconst { pathname, search } = useLocation();\n\tconst { account } = useAccount();\n\tconst query = useQuery();\n\tconst advisorType = useMemo(() => query.get('advisorType') ?? ADVISOR_TYPE.ADVISOR, [query]);\n\n\tconst [myStats, setMyStats] = useState();\n\tconst [flagShowMyStats, setFlagShowMyStats] = useState(false);\n\tconst [filterOptions, setFilterOptions] = useState([]);\n\tconst [tableColumnsData, setTableColumnsData] = useState(inquiryTableColumns);\n\tconst [tableHeadersData] = useState(inquiryTableHeaders);\n\tconst [tableRowData, setTableRowData] = useState[]>([]);\n\n\tconst fetchFilters = useCallback(async () => {\n\t\tconst response = await inquiryService.getInquiryStatFilters().fetch();\n\t\tsetFilterOptions(response.advisorTypes);\n\t}, []);\n\n\tconst fetchData = useCallback(async () => {\n\t\ttry {\n\t\t\tconst response = await inquiryService\n\t\t\t\t.getInquiryStats({\n\t\t\t\t\t...(advisorType && { advisorType }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\t\t\tsetMyStats(response.myStats);\n\t\t\tsetFlagShowMyStats(response.flagShowMyStats);\n\t\t\tsetTableRowData(\n\t\t\t\tresponse.teamStats.map((teamStat) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\trowId: teamStat.accountId,\n\t\t\t\t\t\tchecked: false,\n\t\t\t\t\t\texpanded: false,\n\t\t\t\t\t\tcolumnData: teamStat,\n\t\t\t\t\t};\n\t\t\t\t})\n\t\t\t);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [advisorType, handleError]);\n\n\tuseEffect(() => {\n\t\tfetchData();\n\t}, [fetchData]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Client Management - Inquiries Dashboard\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    Inquiry Dashboard

    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\thistory.push('/contact/create-inquiry');\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tCreate a new inquiry\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    Filter Inquiries by

    \n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\thistory.push(\n\t\t\t\t\t\t\t\t\t\t\tconstructUrl(pathname, { advisorType: currentTarget.value }, search)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{filterOptions.map((fo) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    My open Inquiries

    \n\t\t\t\t\t\t\t{flagShowMyStats && (\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tSee all my inquiries\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{myStats?.inquiryStatuses.map((stat) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    {stat.count}

    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{stat.statusDescription}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t\t{(!myStats?.inquiryStatuses || myStats.inquiryStatuses.length <= 0) && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tYou have no inquiries\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    Team's Inquiries

    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tSee all team's inquiries\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttableHeaderRowRenderer={() => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttableBodyRowRenderer={(data) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase INQUIRY_TABLE_COLUMN_IDS.ADVISOR:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase INQUIRY_TABLE_COLUMN_IDS.INQUIRY_RECEIVED:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.inquiryStatuses.find(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(is) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tis.statusId ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tINQUIRY_STATUS_ID.INQUIRY_RECEIVED\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)?.count ?? 0}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase INQUIRY_TABLE_COLUMN_IDS.INQUIRY_CONFIRMED:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.inquiryStatuses.find(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(is) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tis.statusId ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tINQUIRY_STATUS_ID.INQUIRY_CONFIRMED\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)?.count ?? 0}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase INQUIRY_TABLE_COLUMN_IDS.IN_PROGRESS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.inquiryStatuses.find(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(is) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tis.statusId === INQUIRY_STATUS_ID.IN_PROGRESS\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)?.count ?? 0}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase INQUIRY_TABLE_COLUMN_IDS.QC_REVIEW:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.inquiryStatuses.find(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(is) => is.statusId === INQUIRY_STATUS_ID.QC_REVIEW\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)?.count ?? 0}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase INQUIRY_TABLE_COLUMN_IDS.CLOSED:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.inquiryStatuses.find(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(is) => is.statusId === INQUIRY_STATUS_ID.CLOSED\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)?.count ?? 0}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase INQUIRY_TABLE_COLUMN_IDS.TOTAL:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.inquiryStatuses.find(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(is) => is.statusId === INQUIRY_STATUS_ID.TOTAL\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)?.count ?? 0}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{tableRowData.length <= 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tTeam has no open inquiries\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgRobot(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 20,\n height: 20,\n viewBox: \"0 0 20 20\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 14.75H8V13.25H6V14.75ZM18 8H17C17 7.60604 16.9224 7.21593 16.7716 6.85195C16.6209 6.48797 16.3999 6.15725 16.1213 5.87868C15.8427 5.6001 15.512 5.37912 15.148 5.22836C14.7841 5.0776 14.394 5 14 5H10.75V2.75C10.75 2.55109 10.671 2.36032 10.5303 2.21967C10.3897 2.07902 10.1989 2 10 2C9.80109 2 9.61032 2.07902 9.46967 2.21967C9.32902 2.36032 9.25 2.55109 9.25 2.75V5H6C5.60603 5 5.21592 5.0776 4.85195 5.22836C4.48797 5.37912 4.15725 5.6001 3.87868 5.87868C3.6001 6.15725 3.37912 6.48797 3.22836 6.85195C3.0776 7.21593 3 7.60604 3 8H2C1.80302 8 1.60796 8.0388 1.42597 8.11418C1.24399 8.18956 1.07863 8.30005 0.939339 8.43934C0.800051 8.57863 0.689561 8.74399 0.61418 8.92598C0.538798 9.10796 0.499999 9.30302 0.5 9.5V13.5C0.499999 13.697 0.538798 13.892 0.61418 14.074C0.689561 14.256 0.800051 14.4214 0.939339 14.5607C1.07863 14.7 1.24399 14.8104 1.42597 14.8858C1.60796 14.9612 1.80302 15 2 15H3C3 15.394 3.0776 15.7841 3.22836 16.1481C3.37912 16.512 3.6001 16.8428 3.87868 17.1213C4.15725 17.3999 4.48797 17.6209 4.85195 17.7716C5.21592 17.9224 5.60603 18 6 18H14C14.394 18 14.7841 17.9224 15.148 17.7716C15.512 17.6209 15.8427 17.3999 16.1213 17.1213C16.3999 16.8428 16.6209 16.512 16.7716 16.1481C16.9224 15.7841 17 15.394 17 15H18C18.197 15 18.392 14.9612 18.574 14.8858C18.756 14.8104 18.9214 14.7 19.0607 14.5607C19.1999 14.4214 19.3104 14.256 19.3858 14.074C19.4612 13.892 19.5 13.697 19.5 13.5V9.5C19.5 9.30302 19.4612 9.10796 19.3858 8.92598C19.3104 8.74399 19.1999 8.57863 19.0607 8.43934C18.9214 8.30005 18.756 8.18956 18.574 8.11418C18.392 8.0388 18.197 8 18 8ZM3 13.5H2V9.5H3V13.5ZM15.5 15C15.4988 15.3975 15.3404 15.7783 15.0594 16.0594C14.7783 16.3404 14.3975 16.4988 14 16.5H6C5.60253 16.4988 5.22167 16.3404 4.94062 16.0594C4.65957 15.7783 4.50116 15.3975 4.5 15V8C4.5 7.80302 4.5388 7.60796 4.61418 7.42598C4.68956 7.24399 4.80005 7.07863 4.93934 6.93934C5.07863 6.80005 5.24398 6.68956 5.42597 6.61418C5.60796 6.5388 5.80302 6.5 6 6.5H14C14.197 6.5 14.392 6.5388 14.574 6.61418C14.756 6.68956 14.9214 6.80005 15.0607 6.93934C15.1999 7.07863 15.3104 7.24399 15.3858 7.42598C15.4612 7.60796 15.5 7.80302 15.5 8V15ZM18 13.5H17V9.5H18V13.5ZM7.5 8.5C7.20333 8.5 6.91332 8.58798 6.66664 8.7528C6.41997 8.91762 6.22771 9.15189 6.11418 9.42598C6.00065 9.70007 5.97094 10.0017 6.02882 10.2926C6.0867 10.5836 6.22956 10.8509 6.43934 11.0607C6.64912 11.2704 6.91639 11.4133 7.20736 11.4712C7.49833 11.5291 7.79993 11.4994 8.07402 11.3858C8.34811 11.2723 8.58238 11.08 8.7472 10.8334C8.91203 10.5867 9 10.2967 9 10C9.00001 9.80301 8.96123 9.60795 8.88585 9.42596C8.81047 9.24396 8.69999 9.0786 8.56069 8.93931C8.4214 8.80001 8.25604 8.68953 8.07404 8.61415C7.89205 8.53877 7.69699 8.49999 7.5 8.5ZM12.5 8.5C12.2033 8.5 11.9133 8.58798 11.6666 8.7528C11.42 8.91762 11.2277 9.15189 11.1142 9.42598C11.0006 9.70007 10.9709 10.0017 11.0288 10.2926C11.0867 10.5836 11.2296 10.8509 11.4393 11.0607C11.6491 11.2704 11.9164 11.4133 12.2074 11.4712C12.4983 11.5291 12.7999 11.4994 13.074 11.3858C13.3481 11.2723 13.5824 11.08 13.7472 10.8334C13.912 10.5867 14 10.2967 14 10C14 9.80301 13.9612 9.60795 13.8858 9.42596C13.8105 9.24396 13.7 9.0786 13.5607 8.93931C13.4214 8.80001 13.256 8.68953 13.074 8.61415C12.892 8.53877 12.697 8.49999 12.5 8.5ZM12 14.75H14V13.25H12V14.75ZM9 14.75H11V13.25H9V14.75Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgRobot);\nexport default __webpack_public_path__ + \"static/media/robot.5678a173.svg\";\nexport { ForwardRef as ReactComponent };","var _g, _defs;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconComment(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 20,\n height: 20,\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#clip0_2131_3712)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.99991 1.25C4.47647 1.25 -9.30394e-05 4.88672 -9.30394e-05 9.375C-9.30394e-05 11.2344 0.777251 12.9375 2.06631 14.3086C1.48428 15.8477 0.273344 17.1523 0.253813 17.168C-0.00399929 17.4414 -0.0743118 17.8398 0.0741257 18.1836C0.222563 18.5273 0.562407 18.75 0.937407 18.75C3.33975 18.75 5.23428 17.7461 6.371 16.9414C7.49991 17.2969 8.71866 17.5 9.99991 17.5C15.5233 17.5 19.9999 13.8633 19.9999 9.375C19.9999 4.88672 15.5233 1.25 9.99991 1.25ZM9.99991 15.625C8.95694 15.625 7.92569 15.4648 6.93741 15.1523L6.05069 14.8711L5.28897 15.4102C4.73038 15.8047 3.96475 16.2461 3.04288 16.543C3.32803 16.0703 3.60538 15.5391 3.82022 14.9727L4.23428 13.875L3.42959 13.0234C2.72256 12.2695 1.87491 11.0234 1.87491 9.375C1.87491 5.92969 5.51944 3.125 9.99991 3.125C14.4804 3.125 18.1249 5.92969 18.1249 9.375C18.1249 12.8203 14.4804 15.625 9.99991 15.625Z\",\n fill: \"#006FBA\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"clip0_2131_3712\"\n }, /*#__PURE__*/React.createElement(\"rect\", {\n width: 20,\n height: 20,\n fill: \"white\"\n })))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconComment);\nexport default __webpack_public_path__ + \"static/media/icon-comment.1b459308.svg\";\nexport { ForwardRef as ReactComponent };","import { v4 as uuid } from 'uuid';\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { Helmet } from 'react-helmet';\nimport { Form, Button, Modal, Container } from 'react-bootstrap';\nimport classNames from 'classnames';\nimport {\n\tAiConversation,\n\tAiConversationSections,\n\tFollowUpQuestionSuggestion,\n\tTempCitation,\n\tTempResponse,\n} from '@/lib/models';\nimport { aiConversationService, SendQueryRequestBody } from '@/lib/services';\nimport { createUseThemedStyles, useCopyTextToClipboard, useHandleError } from '@/hooks';\nimport { AiAnswerReferences, AiAnswerSources, AiRateModal, Loader, LoadingButton, Typewriter } from '@/components';\nimport { ReactComponent as GearIcon } from '@/assets/icons/icon-gear.svg';\nimport { ReactComponent as RobotIcon } from '@/assets/icons/robot.svg';\nimport { ReactComponent as CommentIcon } from '@/assets/icons/icon-comment.svg';\nimport { ReactComponent as CopyIcon } from '@/assets/icons/copy.svg';\nimport { ReactComponent as XIcon } from '@/assets/icons/icon-x.svg';\n\ninterface UseStylesProps {\n\tisContained: boolean;\n}\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tchatOuter: {\n\t\theight: 600,\n\t\tdisplay: 'flex',\n\t\toverflow: 'hidden',\n\t\tborder: `1px solid ${theme.colors.gray300}`,\n\t},\n\tchatList: {\n\t\twidth: 320,\n\t\tflexShrink: 0,\n\t\tdisplay: 'flex',\n\t\tflexDirection: 'column',\n\t\tbackgroundColor: theme.colors.gray200,\n\t\tborderRight: `1px solid ${theme.colors.gray300}`,\n\t},\n\tchatListNewButtonOuter: {\n\t\tpadding: '25px 25px 0',\n\t},\n\tchatListScroller: {\n\t\tflex: 1,\n\t\toverflowY: 'auto',\n\t\tpadding: '25px 15px 10px',\n\t\t'& h6': {\n\t\t\tpadding: '0 10px',\n\t\t},\n\t},\n\tchatListButtonOuter: {\n\t\tdisplay: 'flex',\n\t\tborderRadius: 4,\n\t\talignItems: 'center',\n\t\t'&:hover': {\n\t\t\tbackgroundColor: theme.colors.gray100,\n\t\t},\n\t\t'&:active': {\n\t\t\tbackgroundColor: theme.colors.gray400,\n\t\t},\n\t\t'&.active': {\n\t\t\tbackgroundColor: theme.colors.gray300,\n\t\t},\n\t},\n\tchatListButton: {\n\t\tborder: 0,\n\t\twidth: '100%',\n\t\tborderRadius: 4,\n\t\tdisplay: 'block',\n\t\ttextAlign: 'left',\n\t\t...theme.fonts.xs,\n\t\tappearance: 'none',\n\t\tpadding: '8px 10px',\n\t\tbackgroundColor: 'transparent',\n\t},\n\tchatListDeleteButton: {\n\t\tpadding: '8px 10px',\n\t\tcolor: `${theme.colors.gray500} !important`,\n\t},\n\tchat: {\n\t\tflex: 1,\n\t\tdisplay: 'flex',\n\t\tflexDirection: 'column',\n\t\tbackgroundColor: theme.colors.white,\n\t},\n\tchatScroller: {\n\t\tflex: 1,\n\t\toverflowY: 'scroll',\n\t},\n\tchatScrollerInner: {\n\t\tpadding: 30,\n\t\tmargin: '0 auto',\n\t\tmaxWidth: ({ isContained }: UseStylesProps) => (isContained ? 720 : '100%'),\n\t},\n\tchatInputOuter: {\n\t\twidth: '100%',\n\t\tmaxWidth: 720,\n\t\tmargin: '0 auto',\n\t\tpadding: '0 30px 30px',\n\t},\n\ttextareaOuter: {\n\t\tpadding: 5,\n\t\tdisplay: 'flex',\n\t\tborderRadius: 2,\n\t\tmarginBottom: 10,\n\t\talignItems: 'flex-end',\n\t\tborder: `1px solid ${theme.colors.gray500}`,\n\t\t'&:focus-within': {\n\t\t\tborder: `1px solid ${theme.colors.primary}`,\n\t\t},\n\t\t'& textarea.hackett-form__control': {\n\t\t\tflex: 1,\n\t\t\tborder: 0,\n\t\t\theight: 39,\n\t\t\tboxShadow: 'none',\n\t\t},\n\t},\n\tsendButtonOuter: {\n\t\tflexShrink: 0,\n\t},\n\tchatContent: {\n\t\tmarginBottom: 30,\n\t\t'&:last-child': {\n\t\t\tmarginBottom: 0,\n\t\t},\n\t},\n\tchatQuestion: {\n\t\tpadding: 15,\n\t\tborderRadius: 5,\n\t\tbackgroundColor: theme.colors.gray200,\n\t},\n\taiIconOuter: {\n\t\twidth: 40,\n\t\tflexShrink: 0,\n\t\tmarginRight: 20,\n\t},\n\taiIcon: {\n\t\twidth: '100%',\n\t\tborderRadius: '50%',\n\t\tposition: 'relative',\n\t\tpaddingBottom: '100%',\n\t\tbackgroundColor: theme.colors.primary,\n\t\t'& > svg': {\n\t\t\ttop: '50%',\n\t\t\tleft: '50%',\n\t\t\tposition: 'absolute',\n\t\t\ttransform: 'translate(-50%, -50%)',\n\t\t},\n\t},\n\ttypewriterOuter: {\n\t\tflex: 1,\n\t},\n\tthinking: {\n\t\tcolor: 'transparent',\n\t\tbackgroundClip: 'text',\n\t\tdisplay: 'inline-block',\n\t\tbackgroundSize: '48px 100%',\n\t\tbackgroundColor: theme.colors.black,\n\t\tanimation: 'think 1s infinite linear',\n\t\tbackground: `-webkit-gradient(linear, left top, right top, from(${theme.colors.black}), to(${theme.colors.black}), color-stop(0.5, ${theme.colors.white})) no-repeat`,\n\t},\n\t'@global': {\n\t\t'@keyframes think': {\n\t\t\t'0%': {\n\t\t\t\tbackgroundPosition: '-48px 0%',\n\t\t\t},\n\t\t\t'100%': {\n\t\t\t\tbackgroundPosition: 'calc(100% + 48px) 0%',\n\t\t\t},\n\t\t},\n\t},\n}));\n\nenum CHAT_CONTENT_TYPE_ID {\n\tQUESTION = 'QUESTION',\n\tANSWER = 'ANSWER',\n\tPAST_ANSWER = 'PAST_ANSWER',\n}\n\ninterface ChatContent {\n\tconversationQueryId: string;\n\tchatContentId: string;\n\tchatContentTypeId: CHAT_CONTENT_TYPE_ID;\n\tcontent: string;\n\treferences: string[];\n\tsources: TempCitation[];\n\tfollowUpQuestions?: FollowUpQuestionSuggestion[];\n\trated: boolean;\n\tshowMore?: boolean;\n}\n\nexport const AskHackettAi = () => {\n\tconst [showChatConfigModal, setShowChatConfigModal] = useState(false);\n\tconst [chatConfig, setChatConfig] = useState({\n\t\tisContained: true,\n\t\tshouldAnimate: true,\n\t\tshowFollowUpQuestions: true,\n\t});\n\n\tconst classes = useStyles({\n\t\tisContained: chatConfig.isContained,\n\t});\n\tconst handleError = useHandleError();\n\tconst { copyHtmlToClipboard } = useCopyTextToClipboard();\n\n\tconst chatScrollerOuterRef = useRef(null);\n\tconst chatScrollerInnerRef = useRef(null);\n\tconst chatResizeObserverRef = useRef();\n\tconst textareaRef = useRef(null);\n\n\tconst [conversationsLoading, setConversationsLoading] = useState(false);\n\tconst [conversationSections, setConversationSections] = useState();\n\tconst [conversation, setConversation] = useState();\n\tconst [questionInputValue, setQuestionInputValue] = useState('');\n\tconst [suggestionSubmission, setSuggestionSubmission] = useState<{\n\t\tsuggestionId: string;\n\t\tsuggestionRound: number;\n\t}>();\n\tconst [chatContent, setChatContent] = useState([]);\n\tconst [answerIsLoading, setAnswerIsLoading] = useState(false);\n\tconst [isDisabled, setIsDisabled] = useState(false);\n\tconst [showRateModel, setShowRateModal] = useState(false);\n\tconst [queryIdToRate, setQueryIdToRate] = useState();\n\n\tconst [thinkingMessage, setThinkingMessage] = useState('Working on it...');\n\tconst thinkingTimerRef = useRef();\n\n\tconst stopThinkingTimer = useCallback(() => {\n\t\tsetThinkingMessage('Working on it...');\n\t\tif (thinkingTimerRef.current) {\n\t\t\tclearTimeout(thinkingTimerRef.current);\n\t\t\tthinkingTimerRef.current = undefined;\n\t\t}\n\t}, []);\n\n\tconst startThinkingTimer = useCallback(() => {\n\t\tstopThinkingTimer();\n\n\t\tthinkingTimerRef.current = setTimeout(() => {\n\t\t\tsetThinkingMessage('Still working on it...');\n\t\t}, 7000);\n\t}, [stopThinkingTimer]);\n\n\t/*------------------------------------------------------*/\n\t/* Initial data fetch */\n\t/*------------------------------------------------------*/\n\tconst fetchPastConversations = useCallback(async () => {\n\t\ttry {\n\t\t\tsetConversationsLoading(true);\n\t\t\tconst response = await aiConversationService.getPastConversations().fetch();\n\t\t\tsetConversationSections(response.aiConversations);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetConversationsLoading(false);\n\t\t}\n\t}, [handleError]);\n\n\tuseEffect(() => {\n\t\tfetchPastConversations();\n\t}, [fetchPastConversations]);\n\n\t/*------------------------------------------------------*/\n\t/* Side bar click handlers */\n\t/*------------------------------------------------------*/\n\tconst handleNewConversationButtonClick = async () => {\n\t\tawait fetchPastConversations();\n\t\tsetConversation(undefined);\n\t\tsetQuestionInputValue('');\n\t\tsetChatContent([]);\n\t\tsetAnswerIsLoading(false);\n\t\tsetIsDisabled(false);\n\t\tdestroyResizeObserver();\n\t\tsetSuggestionSubmission(undefined);\n\t};\n\n\tconst handlePastConversationButtonClick = async (conversation: AiConversation) => {\n\t\tawait fetchPastConversations();\n\t\tsetConversation(conversation);\n\t\tsetQuestionInputValue('');\n\t\tsetChatContent(\n\t\t\tconversation.conversationQueries.reduce((accumulator, currentValue) => {\n\t\t\t\tconst parsedAiResponse: TempResponse = JSON.parse(currentValue.queryResponse);\n\n\t\t\t\treturn [\n\t\t\t\t\t...accumulator,\n\t\t\t\t\t{\n\t\t\t\t\t\tconversationQueryId: currentValue.conversationQueryId,\n\t\t\t\t\t\tchatContentId: `${currentValue.conversationQueryId}-question`,\n\t\t\t\t\t\tchatContentTypeId: CHAT_CONTENT_TYPE_ID.QUESTION,\n\t\t\t\t\t\tcontent: currentValue.query,\n\t\t\t\t\t\treferences: [],\n\t\t\t\t\t\tsources: [],\n\t\t\t\t\t\tfollowUpQuestions: [],\n\t\t\t\t\t\trated: false,\n\t\t\t\t\t\tshowMore: false,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tconversationQueryId: currentValue.conversationQueryId,\n\t\t\t\t\t\tchatContentId: `${currentValue.conversationQueryId}-answer`,\n\t\t\t\t\t\tchatContentTypeId: CHAT_CONTENT_TYPE_ID.PAST_ANSWER,\n\t\t\t\t\t\tcontent: parsedAiResponse.answer,\n\t\t\t\t\t\treferences: parsedAiResponse.references ?? [],\n\t\t\t\t\t\tsources: parsedAiResponse.citations,\n\t\t\t\t\t\tfollowUpQuestions: parsedAiResponse.followUpQuestionsSuggestions,\n\t\t\t\t\t\trated: currentValue.hasRating,\n\t\t\t\t\t\tshowMore: parsedAiResponse.showMore,\n\t\t\t\t\t},\n\t\t\t\t];\n\t\t\t}, [] as ChatContent[])\n\t\t);\n\t\tsetAnswerIsLoading(false);\n\t\tsetIsDisabled(false);\n\t\tdestroyResizeObserver();\n\t\tsetSuggestionSubmission(undefined);\n\t};\n\n\tconst handlePastConversationDeleteButtonClick = async (conversationToDelete: AiConversation) => {\n\t\ttry {\n\t\t\tsetConversationsLoading(true);\n\n\t\t\tawait aiConversationService.deleteConversation(conversationToDelete.aiConversationId).fetch();\n\n\t\t\tif (conversation?.aiConversationId === conversationToDelete.aiConversationId) {\n\t\t\t\tawait handleNewConversationButtonClick();\n\t\t\t} else {\n\t\t\t\tawait fetchPastConversations();\n\t\t\t}\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetAnswerIsLoading(false);\n\t\t\tsetConversationsLoading(false);\n\t\t}\n\t};\n\n\t/*------------------------------------------------------*/\n\t/* Auto-scroll functionality */\n\t/*------------------------------------------------------*/\n\tuseEffect(() => {\n\t\tsnapToBottomOfChat();\n\t}, [chatContent]);\n\n\tconst scrollToBottomOfChat = () => {\n\t\tif (!chatScrollerOuterRef.current || !chatScrollerInnerRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tchatScrollerOuterRef.current.scrollTo({\n\t\t\ttop: chatScrollerInnerRef.current.scrollHeight,\n\t\t\tbehavior: 'smooth',\n\t\t});\n\t};\n\n\tconst snapToBottomOfChat = () => {\n\t\tif (!chatScrollerOuterRef.current || !chatScrollerInnerRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tchatScrollerOuterRef.current.scrollTo({\n\t\t\ttop: chatScrollerInnerRef.current.scrollHeight,\n\t\t\tbehavior: 'auto',\n\t\t});\n\t};\n\n\tconst destroyResizeObserver = () => {\n\t\tif (!chatResizeObserverRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tchatResizeObserverRef.current.disconnect();\n\t\tchatResizeObserverRef.current = undefined;\n\t};\n\n\tconst createNewResizeObserver = useCallback(() => {\n\t\tchatResizeObserverRef.current = new ResizeObserver(scrollToBottomOfChat);\n\t\tif (chatScrollerInnerRef.current) {\n\t\t\tchatResizeObserverRef.current.observe(chatScrollerInnerRef.current);\n\t\t}\n\t}, []);\n\n\t/*------------------------------------------------------*/\n\t/* Query submission */\n\t/*------------------------------------------------------*/\n\tconst sendQuery = useCallback(\n\t\tasync (data: SendQueryRequestBody) => {\n\t\t\tsetQuestionInputValue('');\n\t\t\tsetChatContent((previousValue) => [\n\t\t\t\t...previousValue,\n\t\t\t\t{\n\t\t\t\t\tconversationQueryId: '',\n\t\t\t\t\tchatContentId: `${uuid()}-question`,\n\t\t\t\t\tchatContentTypeId: CHAT_CONTENT_TYPE_ID.QUESTION,\n\t\t\t\t\tcontent: questionInputValue,\n\t\t\t\t\treferences: [],\n\t\t\t\t\tsources: [],\n\t\t\t\t\tfollowUpQuestions: [],\n\t\t\t\t\trated: false,\n\t\t\t\t\tshowMore: false,\n\t\t\t\t},\n\t\t\t]);\n\t\t\tsetAnswerIsLoading(true);\n\t\t\tdestroyResizeObserver();\n\t\t\tcreateNewResizeObserver();\n\t\t\tstartThinkingTimer();\n\t\t\tsetSuggestionSubmission(undefined);\n\n\t\t\ttry {\n\t\t\t\tconst { query } = await aiConversationService.sendQuery(data).fetch();\n\t\t\t\tconst { aiConversation } = await aiConversationService.getConversation(query.aiConversationId).fetch();\n\t\t\t\tconst parsedAiResponse: TempResponse = JSON.parse(query.queryResponse);\n\n\t\t\t\tsetConversation(aiConversation);\n\t\t\t\tsetIsDisabled(true);\n\t\t\t\tsetChatContent((previousValue) => [\n\t\t\t\t\t...previousValue,\n\t\t\t\t\t{\n\t\t\t\t\t\tconversationQueryId: query.conversationQueryId,\n\t\t\t\t\t\tchatContentId: `${query.conversationQueryId}-answer`,\n\t\t\t\t\t\tchatContentTypeId: CHAT_CONTENT_TYPE_ID.ANSWER,\n\t\t\t\t\t\tcontent: parsedAiResponse.answer,\n\t\t\t\t\t\treferences: parsedAiResponse.references ?? [],\n\t\t\t\t\t\tsources: parsedAiResponse.citations,\n\t\t\t\t\t\tfollowUpQuestions: parsedAiResponse.followUpQuestionsSuggestions,\n\t\t\t\t\t\trated: query.hasRating,\n\t\t\t\t\t\tshowMore: parsedAiResponse.showMore,\n\t\t\t\t\t},\n\t\t\t\t]);\n\t\t\t} catch (error) {\n\t\t\t\thandleError(error);\n\t\t\t} finally {\n\t\t\t\tstopThinkingTimer();\n\t\t\t\tsetAnswerIsLoading(false);\n\t\t\t\ttextareaRef.current?.focus();\n\t\t\t}\n\t\t},\n\t\t[createNewResizeObserver, handleError, questionInputValue, startThinkingTimer, stopThinkingTimer]\n\t);\n\n\t/*------------------------------------------------------*/\n\t/* Query submit handlers */\n\t/*------------------------------------------------------*/\n\tconst handleFormSubmit = useCallback(\n\t\t(event?: React.FormEvent) => {\n\t\t\tevent?.preventDefault();\n\n\t\t\tif (!questionInputValue) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsendQuery({\n\t\t\t\tquery: questionInputValue,\n\t\t\t\tshouldShowSuggestions: chatConfig.showFollowUpQuestions,\n\t\t\t\t...(suggestionSubmission && {\n\t\t\t\t\tsuggestionId: suggestionSubmission.suggestionId,\n\t\t\t\t\tsuggestionRound: suggestionSubmission.suggestionRound,\n\t\t\t\t}),\n\t\t\t\t...(conversation && {\n\t\t\t\t\taiConversationId: conversation.aiConversationId,\n\t\t\t\t}),\n\t\t\t});\n\t\t},\n\t\t[chatConfig.showFollowUpQuestions, conversation, questionInputValue, sendQuery, suggestionSubmission]\n\t);\n\n\tconst handleFollowUpQuestionClick = useCallback((followUpQuestionSuggestion: FollowUpQuestionSuggestion) => {\n\t\tsetQuestionInputValue(followUpQuestionSuggestion.suggestion);\n\t\tsetSuggestionSubmission({\n\t\t\tsuggestionId: followUpQuestionSuggestion.suggestionId,\n\t\t\tsuggestionRound: followUpQuestionSuggestion.suggestionRound,\n\t\t});\n\t}, []);\n\n\t/*------------------------------------------------------*/\n\t/* Textarea functionality */\n\t/*------------------------------------------------------*/\n\tuseEffect(() => {\n\t\ttextareaRef.current?.focus();\n\t}, []);\n\n\tuseEffect(() => {\n\t\tconst { current } = textareaRef;\n\t\tconst handleTextareaKeypress = (event: KeyboardEvent) => {\n\t\t\tif (event.key === 'Enter' && !event.shiftKey) {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif (textareaRef.current) {\n\t\t\t\t\ttextareaRef.current.style.height = '';\n\t\t\t\t}\n\n\t\t\t\thandleFormSubmit();\n\t\t\t}\n\t\t};\n\n\t\tcurrent?.addEventListener('keypress', handleTextareaKeypress);\n\n\t\treturn () => {\n\t\t\tcurrent?.removeEventListener('keypress', handleTextareaKeypress);\n\t\t};\n\t}, [handleFormSubmit]);\n\n\tconst handleTextareaInput = () => {\n\t\tif (!textareaRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst heightLimit = 88;\n\n\t\ttextareaRef.current.style.height = '';\n\t\ttextareaRef.current.style.height = `${Math.min(textareaRef.current.scrollHeight, heightLimit)}px`;\n\t};\n\n\t/*------------------------------------------------------*/\n\t/* Chat list-item handlers */\n\t/*------------------------------------------------------*/\n\tconst handleTypewriterAnimationComplete = useCallback(() => {\n\t\tsetIsDisabled(false);\n\t\tscrollToBottomOfChat();\n\t\tdestroyResizeObserver();\n\t}, []);\n\n\tconst handleCopyButtonClick = useCallback(\n\t\t(chatContent: ChatContent) => {\n\t\t\tcopyHtmlToClipboard(chatContent.content);\n\t\t},\n\t\t[copyHtmlToClipboard]\n\t);\n\n\tconst handleRateButtonClick = (chatContent: ChatContent) => {\n\t\tsetQueryIdToRate(chatContent.conversationQueryId);\n\t\tsetShowRateModal(true);\n\t};\n\n\tconst handleRateModalSave = () => {\n\t\tsetShowRateModal(false);\n\n\t\tsetChatContent((previousValue) => {\n\t\t\treturn previousValue.map((c) => {\n\t\t\t\tif (c.conversationQueryId === queryIdToRate) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...c,\n\t\t\t\t\t\trated: true,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn c;\n\t\t\t});\n\t\t});\n\n\t\tsetQueryIdToRate(undefined);\n\t};\n\n\tconst handleShowMoreClick = useCallback(\n\t\tasync (context: ChatContent) => {\n\t\t\tsetAnswerIsLoading(true);\n\t\t\tdestroyResizeObserver();\n\t\t\tcreateNewResizeObserver();\n\n\t\t\ttry {\n\t\t\t\tconst { query } = await aiConversationService.showMore(context.conversationQueryId).fetch();\n\t\t\t\tconst { aiConversation } = await aiConversationService.getConversation(query.aiConversationId).fetch();\n\t\t\t\tconst parsedAiResponse: TempResponse = JSON.parse(query.queryResponse);\n\n\t\t\t\tsetConversation(aiConversation);\n\t\t\t\tsetIsDisabled(true);\n\t\t\t\tsetChatContent((previousValue) => [\n\t\t\t\t\t...previousValue,\n\t\t\t\t\t{\n\t\t\t\t\t\tconversationQueryId: query.conversationQueryId,\n\t\t\t\t\t\tchatContentId: `${query.conversationQueryId}-answer`,\n\t\t\t\t\t\tchatContentTypeId: CHAT_CONTENT_TYPE_ID.ANSWER,\n\t\t\t\t\t\tcontent: parsedAiResponse.answer,\n\t\t\t\t\t\treferences: parsedAiResponse.references ?? [],\n\t\t\t\t\t\tsources: parsedAiResponse.citations,\n\t\t\t\t\t\tfollowUpQuestions: parsedAiResponse.followUpQuestionsSuggestions,\n\t\t\t\t\t\trated: query.hasRating,\n\t\t\t\t\t\tshowMore: parsedAiResponse.showMore,\n\t\t\t\t\t},\n\t\t\t\t]);\n\t\t\t} catch (error) {\n\t\t\t\thandleError(error);\n\t\t\t} finally {\n\t\t\t\tsetAnswerIsLoading(false);\n\t\t\t\ttextareaRef.current?.focus();\n\t\t\t}\n\t\t},\n\t\t[createNewResizeObserver, handleError]\n\t);\n\n\t/*------------------------------------------------------*/\n\t/* Chat list-item components */\n\t/*------------------------------------------------------*/\n\tconst chatContentComponent = useMemo(\n\t\t() => ({\n\t\t\t[CHAT_CONTENT_TYPE_ID.QUESTION]: (context: ChatContent) => {\n\t\t\t\treturn
    {context.content}
    ;\n\t\t\t},\n\t\t\t[CHAT_CONTENT_TYPE_ID.ANSWER]: (context: ChatContent) => {\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{context.references.length > 0 && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{context.sources.length > 0 && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t 0,\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{context.showMore && (\n\t\t\t\t\t\t\t\t\t\t\t handleShowMoreClick(context)}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tShow more\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t handleCopyButtonClick(context)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t handleRateButtonClick(context)}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={context.rated}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{context.rated ? 'Rating Recieved' : 'Rate Answer'}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{chatConfig.showFollowUpQuestions && (context.followUpQuestions ?? []).length > 0 && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tRecommended follow up questions:\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t{(context.followUpQuestions ?? []).map((q) => (\n\t\t\t\t\t\t\t\t\t\t\t handleFollowUpQuestionClick(q)}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t

    {q.suggestion}

    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\t[CHAT_CONTENT_TYPE_ID.PAST_ANSWER]: (context: ChatContent) => {\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{context.references.length > 0 && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{context.sources.length > 0 && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t 0,\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{context.showMore && (\n\t\t\t\t\t\t\t\t\t\t\t handleShowMoreClick(context)}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tShow more\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t handleCopyButtonClick(context)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t handleRateButtonClick(context)}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={context.rated}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{context.rated ? 'Rating Recieved' : 'Rate Answer'}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{chatConfig.showFollowUpQuestions && (context.followUpQuestions ?? []).length > 0 && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tRecommended follow up questions:\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t{(context.followUpQuestions ?? []).map((q) => (\n\t\t\t\t\t\t\t\t\t\t\t handleFollowUpQuestionClick(q)}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t

    {q.suggestion}

    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t}),\n\t\t[\n\t\t\tchatConfig.shouldAnimate,\n\t\t\tchatConfig.showFollowUpQuestions,\n\t\t\tclasses.aiIcon,\n\t\t\tclasses.aiIconOuter,\n\t\t\tclasses.chatQuestion,\n\t\t\tclasses.typewriterOuter,\n\t\t\thandleCopyButtonClick,\n\t\t\thandleFollowUpQuestionClick,\n\t\t\thandleShowMoreClick,\n\t\t\thandleTypewriterAnimationComplete,\n\t\t]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - AskHackett.ai\n\t\t\t\n\n\t\t\t{queryIdToRate && (\n\t\t\t\t {\n\t\t\t\t\t\tsetShowRateModal(false);\n\t\t\t\t\t\tsetQueryIdToRate(undefined);\n\t\t\t\t\t}}\n\t\t\t\t\tonSave={handleRateModalSave}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t {\n\t\t\t\t\tsetShowChatConfigModal(false);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\tAskHackett.ai Settings\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetChatConfig((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\tshouldAnimate: currentTarget.checked,\n\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetChatConfig((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\tisContained: currentTarget.checked,\n\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetChatConfig((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\tshowFollowUpQuestions: currentTarget.checked,\n\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowChatConfigModal(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tClose\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    AskHackett.ai

    \n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetShowChatConfigModal(true);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t+ New Chat\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{conversationsLoading ? (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{Object.entries(conversationSections ?? {}).map(([key, value]) => (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    {key}
    \n\t\t\t\t\t\t\t\t\t\t{value.map((c) => (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t handlePastConversationButtonClick(c)}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{c.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t handlePastConversationDeleteButtonClick(c)}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{chatContent.length < 1 ? (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    Welcome!

    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tAskHackett.ai is an AI-powered feature that responds to your\n\t\t\t\t\t\t\t\t\t\t\tquestions/prompts by searching and summarizing trusted Hackett Connect IP.\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tExample Prompts\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetQuestionInputValue(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'What are ways to optimize the purchase to pay process?'\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\tWhat are ways to optimize the purchase to pay process?\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetQuestionInputValue(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'What are emerging issues for the finance function?'\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t

    What are emerging issues for the finance function?

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetQuestionInputValue(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'How is AI impacting the role of the IT function?'\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t

    How is AI impacting the role of the IT function?

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{chatContent.map((c) => (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{chatContentComponent[c.chatContentTypeId](c)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t{answerIsLoading &&

    {thinkingMessage}

    }\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetQuestionInputValue(currentTarget.value);\n\t\t\t\t\t\t\t\t\t\t\tsetSuggestionSubmission(undefined);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isDisabled}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tSend\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tAI-generated content. Be sure to check for accuracy.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\n\t);\n};\n","var _style, _g, _rect;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgInquiriesGraphic(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n x: \"0px\",\n y: \"0px\",\n viewBox: \"0 0 352 240\",\n style: {\n enableBackground: \"new 0 0 352 240\"\n },\n xmlSpace: \"preserve\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _style || (_style = /*#__PURE__*/React.createElement(\"style\", {\n type: \"text/css\"\n }, \"\\n\\t.st0{fill:#CDEBF2;}\\n\\t.st1{fill:#005695;}\\n\\t.st2{fill:#0F303F;}\\n\\t.st3{fill:#A3B73A;}\\n\\t.st4{fill:#F4DA80;}\\n\\t.st5{fill:#F0CA69;}\\n\\t.st6{fill:#DEBC5E;}\\n\\t.st7{fill:#788A38;}\\n\\t.st8{fill:#5A6374;}\\n\\t.st9{fill:#C5D9DC;}\\n\\t.st10{fill:#FFFFFF;}\\n\\t.st11{fill:#31373E;}\\n\\t.st12{fill:#0E3855;}\\n\\t.st13{fill:#E2E7EA;}\\n\\t.st14{fill:#FBB034;}\\n\\t.st15{fill:#C6CDD1;}\\n\\t.st16{fill:#008576;}\\n\\t.st17{fill:#FFC425;}\\n\\t.st18{fill:#72808A;}\\n\\t.st19{fill:#006FBA;}\\n\\t.st20{fill:#00B8BA;}\\n\\t.st21{fill:#039E9A;}\\n\\t.st22{fill:#F47920;}\\n\\t.st23{fill:#00AAE7;}\\n\\t.st24{display:none;fill:none;}\\n\")), _g || (_g = /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"path\", {\n className: \"st0\",\n d: \"M108.11,190.47c0,14.99-12.15,27.14-27.14,27.14c-14.99,0-27.14-12.15-27.14-27.14s12.15-27.14,27.14-27.14 C95.96,163.33,108.11,175.48,108.11,190.47z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M73.95,188.65c0.58,2.26-0.45,4.47-2.29,4.94c-1.84,0.47-3.8-0.98-4.37-3.24c-0.57-2.26,0.45-4.47,2.29-4.94 C71.41,184.94,73.37,186.39,73.95,188.65z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M74.35,184.34c0,2.33-1.89,4.22-4.22,4.22c-2.33,0-4.22-1.89-4.22-4.22c0-2.33,1.89-4.22,4.22-4.22 C72.46,180.12,74.35,182.01,74.35,184.34z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M91.09,194.99c0,1.94-1.57,3.51-3.51,3.51c-1.94,0-3.51-1.57-3.51-3.51c0-1.94,1.57-3.51,3.51-3.51 C89.51,191.48,91.09,193.05,91.09,194.99z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M78.39,181.5c0,3.03-2.46,5.49-5.49,5.49c-3.03,0-5.49-2.45-5.49-5.49c0-3.03,2.46-5.49,5.49-5.49 C75.93,176.01,78.39,178.47,78.39,181.5z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st2\",\n d: \"M80.56,181.5c0,3.03-2.46,5.49-5.49,5.49c-3.03,0-5.49-2.45-5.49-5.49c0-3.03,2.46-5.49,5.49-5.49 C78.1,176.01,80.56,178.47,80.56,181.5z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st2\",\n d: \"M80.13,185.64c0,3.03-2.46,5.49-5.49,5.49c-3.03,0-5.49-2.46-5.49-5.49c0-3.03,2.46-5.49,5.49-5.49 C77.67,180.15,80.13,182.61,80.13,185.64z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M77.64,195.13c0,1.94-1.57,3.52-3.51,3.52c-1.94,0-3.51-1.57-3.51-3.52c0-1.94,1.57-3.51,3.51-3.51 C76.07,191.63,77.64,193.2,77.64,195.13z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M93.87,180.81c0.65,2.56-0.51,5.08-2.6,5.61c-2.09,0.53-4.31-1.11-4.97-3.68c-0.65-2.56,0.51-5.08,2.6-5.61 C90.99,176.59,93.22,178.24,93.87,180.81z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M94.06,188.48c-1.05,2.43-3.51,3.7-5.49,2.84c-1.97-0.86-2.73-3.52-1.67-5.95c1.05-2.43,3.51-3.7,5.48-2.85 C94.36,183.38,95.11,186.05,94.06,188.48z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M80.97,175.67c-6.39-0.35-12.28,5.24-10.53,13.58c1.74,8.04,5.95,11.78,10.53,11.78 c4.58,0,8.79-3.74,10.53-11.78C93.26,180.91,87.36,175.32,80.97,175.67z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st2\",\n d: \"M80.97,175.67c-6.39-0.33-12.28,4.9-10.53,12.7c1.74,7.52,5.95,11.02,10.53,11.02 c4.58,0,8.79-3.5,10.53-11.02C93.26,180.57,87.36,175.34,80.97,175.67z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st3\",\n d: \"M80.9,217.61c7.22,0,13.77-2.84,18.63-7.44l-0.8-6.94c-0.17-1.49-2.58-2.69-5.58-2.89 c-8.08-1.46-16.28-1.46-24.36,0c-3.01,0.2-5.42,1.4-5.59,2.89l-0.81,7.05C67.25,214.81,73.74,217.61,80.9,217.61z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st4\",\n d: \"M89.98,199.95c0-0.04-0.01-0.07-0.01-0.1c-5.98-0.79-12.01-0.79-18,0c0,0.04,0,0.07,0,0.1 c0,4.01,4.03,10.75,9,10.75C85.95,210.71,89.98,203.96,89.98,199.95z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st5\",\n d: \"M85.44,196.5c0-0.22-0.01-0.42-0.01-0.64c-2.96-1.84-5.95-1.83-8.92,0c-0.01,0.21-0.01,0.42-0.01,0.63 c0,7.03,2,10.23,4.47,10.23C83.44,206.74,85.44,203.54,85.44,196.5z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st6\",\n d: \"M77.08,195.54c-0.22,0.4-0.41,0.83-0.57,1.29c0.01,0.7,0.03,1.37,0.08,1.99c3.3,2.97,6,4.31,7.95,4.43 c0.57-1.64,0.91-3.86,0.91-6.74c0-0.22-0.01-0.42-0.01-0.64C82.65,194.15,79.86,194.04,77.08,195.54z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st4\",\n d: \"M88.42,190.41c-1.23,6.52-4.21,9.55-7.45,9.55c-3.23,0-6.21-3.03-7.45-9.55c-1.24-6.76,2.93-11.29,7.45-11.01 C85.49,179.11,89.66,183.64,88.42,190.41z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st5\",\n d: \"M81.24,179.4v20.54c3.13-0.17,5.98-3.2,7.17-9.53C89.63,183.78,85.65,179.31,81.24,179.4z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M84.59,177.17c0,2.91-2.36,5.27-5.27,5.27c-2.91,0-5.27-2.36-5.27-5.27s2.36-5.27,5.27-5.27 C82.23,171.9,84.59,174.26,84.59,177.17z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st2\",\n d: \"M82.84,181.85c0,2.91-2.36,5.27-5.26,5.27c-2.91,0-5.27-2.36-5.27-5.27c0-2.91,2.36-5.27,5.27-5.27 C80.49,176.58,82.84,178.94,82.84,181.85z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M89.89,178.25c0,2.81-2.28,5.08-5.08,5.08c-2.8,0-5.08-2.27-5.08-5.08c0-2.81,2.28-5.08,5.08-5.08 C87.61,173.18,89.89,175.45,89.89,178.25z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M90.86,179.08c0,1.94-1.57,3.51-3.51,3.51c-1.94,0-3.51-1.57-3.51-3.51c0-1.94,1.57-3.51,3.51-3.51 C89.29,175.56,90.86,177.14,90.86,179.08z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M91.68,182.88c0,1.94-1.57,3.51-3.51,3.51c-1.94,0-3.51-1.57-3.51-3.51c0-1.94,1.57-3.51,3.51-3.51 C90.11,179.37,91.68,180.95,91.68,182.88z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M93.33,191.78c0-1.25-0.93-2.27-2.13-2.43c-0.25,0.23-0.49,0.49-0.7,0.79c-0.85,1.13-1.22,2.43-1.14,3.59 c0.42,0.33,0.94,0.53,1.51,0.53C92.23,194.24,93.33,193.14,93.33,191.78z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M92.75,185.65c0.61,1.51,0.33,3.04-0.62,3.42c-0.95,0.38-2.21-0.53-2.82-2.04c-0.61-1.51-0.33-3.04,0.62-3.43 C90.88,183.23,92.14,184.14,92.75,185.65z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st2\",\n d: \"M89.79,181.89c-0.49-2.56-2.17-4.21-3.74-3.68c-0.79,0.27-1.41,1.04-1.76,2.07c1.07,1.41,2.12,4.07,2.79,7.3 c0.25,0.02,0.51,0,0.76-0.09C89.4,186.97,90.28,184.46,89.79,181.89z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M80.33,177.32c3.68-0.26,7.09,3.52,9.02,10.06c-0.2,0.35,0.45,1.7,0.24,2.03l-3.23-1.03l-1.53-4.82 c0,0-1.46,4.43-2.99,4.95l0.7-2.83c0,0-1.57,2.4-2.98,3.02c-2.48,1.09-7.62,0.96-7.62,0.96 C71.56,189.08,71.02,177.31,80.33,177.32z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st7\",\n d: \"M93.06,208.23c-0.88,2.05-1.4,4.52-1.45,7.18c0.48-0.21,0.94-0.44,1.41-0.68c-0.15-0.99-0.23-2.03-0.23-3.1 C92.78,210.45,92.88,209.32,93.06,208.23z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st7\",\n d: \"M69.17,213c0,0.64-0.03,1.26-0.07,1.88c0.64,0.31,1.29,0.6,1.96,0.86c-0.39-2.91-1.18-5.48-2.25-7.44 C69.04,209.78,69.17,211.36,69.17,213z\"\n })), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st8\",\n d: \"M264.47,108.06c-0.3,0-0.54,0.25-0.54,0.54c0,0.3,0.24,0.54,0.54,0.54h11.38c0.3,0,0.54-0.25,0.54-0.54 c0-0.3-0.25-0.54-0.54-0.54H264.47L264.47,108.06z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st9\",\n d: \"M255.98,80.23c0-7.83,6.34-14.17,14.17-14.17c7.83,0,14.17,6.34,14.17,14.17c0,0.46-0.34,7.02-5.68,13.89 c-1.56,2.07-1.31,6.24-1.29,6.24c-2.2,0-4,0-6.2,0c-0.67,0-1.34,0-2.01,0c-2.19,0-4.03,0-6.23,0c0.02,0,0.3-4.17-1.25-6.24 C256.31,87.24,255.98,80.69,255.98,80.23z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st10\",\n d: \"M281.32,80.23h-1.25c0-5.47-4.44-9.91-9.92-9.91v-1.25C276.31,69.07,281.32,74.08,281.32,80.23L281.32,80.23z \"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"st11\",\n points: \"273.25,101.48 272.02,101.28 274.45,86.62 275.67,86.82 273.25,101.48 \"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"st11\",\n points: \"267.05,101.48 264.63,86.82 265.86,86.62 268.29,101.28 267.05,101.48 \"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st11\",\n d: \"M274.98,88.68c-0.51,0-0.73-0.5-0.89-0.86c-0.07-0.15-0.21-0.47-0.29-0.47c-0.06,0.03-0.16,0.27-0.21,0.41 c-0.14,0.36-0.36,0.91-0.96,0.91c-0.35,0-0.56-0.35-0.8-0.77c-0.09-0.15-0.25-0.42-0.36-0.53c-0.09,0.1-0.21,0.31-0.29,0.45 c-0.26,0.44-0.5,0.85-0.9,0.85c-0.38,0-0.62-0.4-0.87-0.82c-0.09-0.14-0.22-0.37-0.31-0.47c-0.1,0.1-0.24,0.34-0.33,0.49 c-0.25,0.41-0.48,0.8-0.85,0.8c-0.42,0-0.68-0.44-0.94-0.88c-0.09-0.15-0.21-0.36-0.28-0.44c-0.1,0.04-0.18,0.19-0.3,0.49 c-0.14,0.34-0.33,0.82-0.83,0.82v-0.66c0.07-0.02,0.17-0.27,0.22-0.4c0.14-0.37,0.36-0.92,0.96-0.92c0.35,0,0.56,0.35,0.81,0.76 c0.1,0.15,0.25,0.42,0.36,0.53c0.09-0.1,0.22-0.31,0.3-0.45c0.26-0.44,0.5-0.84,0.9-0.84c0.38,0,0.62,0.4,0.87,0.82 c0.09,0.14,0.22,0.37,0.31,0.47c0.09-0.1,0.24-0.34,0.32-0.49c0.25-0.41,0.48-0.8,0.85-0.8c0.42,0,0.68,0.44,0.94,0.88 c0.09,0.14,0.21,0.35,0.28,0.44c0.1-0.04,0.17-0.19,0.3-0.49c0.14-0.35,0.33-0.82,0.83-0.82c0.51,0,0.73,0.49,0.89,0.86 c0.07,0.15,0.21,0.46,0.29,0.46V88.68L274.98,88.68z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st11\",\n d: \"M277.37,100.38v7.41c0,0.5-0.41,0.92-0.92,0.92h-12.58c-0.51,0-0.92-0.41-0.92-0.92v-7.41H277.37z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st8\",\n d: \"M277.66,101.82h-15.01c-0.4,0-0.73-0.32-0.73-0.73c0-0.4,0.33-0.73,0.73-0.73h15.01 c0.41,0,0.73,0.33,0.73,0.73C278.39,101.5,278.06,101.82,277.66,101.82L277.66,101.82z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st8\",\n d: \"M277.66,104.24h-15.01c-0.4,0-0.73-0.33-0.73-0.72c0-0.4,0.33-0.73,0.73-0.73h15.01 c0.41,0,0.73,0.32,0.73,0.73C278.39,103.91,278.06,104.24,277.66,104.24L277.66,104.24z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st8\",\n d: \"M277.66,106.66h-15.01c-0.4,0-0.73-0.32-0.73-0.72c0-0.4,0.33-0.73,0.73-0.73h15.01 c0.41,0,0.73,0.33,0.73,0.73C278.39,106.34,278.06,106.66,277.66,106.66L277.66,106.66z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M270.15,61.43c-0.2,0-0.37-0.17-0.37-0.37v-7.78c0-0.2,0.17-0.37,0.37-0.37c0.2,0,0.37,0.17,0.37,0.37v7.78 C270.52,61.27,270.35,61.43,270.15,61.43z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M260.22,64.1c-0.13,0-0.25-0.07-0.32-0.19l-3.89-6.74c-0.1-0.18-0.04-0.4,0.14-0.5 c0.17-0.1,0.4-0.04,0.5,0.14l3.89,6.74c0.1,0.18,0.04,0.4-0.14,0.5C260.35,64.08,260.29,64.1,260.22,64.1z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st14\",\n d: \"M252.96,71.37c-0.06,0-0.13-0.02-0.18-0.05l-6.75-3.89c-0.18-0.1-0.24-0.33-0.14-0.5 c0.1-0.18,0.33-0.24,0.5-0.14l6.75,3.89c0.18,0.1,0.24,0.33,0.14,0.5C253.21,71.3,253.09,71.37,252.96,71.37z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st14\",\n d: \"M250.3,81.29h-7.79c-0.2,0-0.37-0.17-0.37-0.37c0-0.2,0.17-0.37,0.37-0.37h7.79c0.2,0,0.37,0.17,0.37,0.37 C250.67,81.13,250.51,81.29,250.3,81.29z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M294.09,95.1c-0.06,0-0.13-0.02-0.18-0.05l-6.75-3.89c-0.18-0.1-0.24-0.33-0.14-0.5 c0.1-0.18,0.33-0.24,0.5-0.14l6.75,3.89c0.18,0.1,0.24,0.33,0.14,0.5C294.35,95.04,294.22,95.1,294.09,95.1z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M297.79,81.28h-7.79c-0.2,0-0.37-0.17-0.37-0.37s0.17-0.37,0.37-0.37h7.79c0.2,0,0.37,0.17,0.37,0.37 S298,81.28,297.79,81.28z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M287.34,71.36c-0.13,0-0.25-0.07-0.32-0.19c-0.1-0.18-0.04-0.4,0.14-0.5l6.74-3.89 c0.17-0.1,0.4-0.04,0.5,0.14c0.1,0.18,0.04,0.4-0.14,0.5l-6.74,3.89C287.47,71.34,287.41,71.36,287.34,71.36z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M280.08,64.09c-0.06,0-0.13-0.02-0.18-0.05c-0.18-0.1-0.24-0.33-0.14-0.5l3.89-6.75 c0.1-0.18,0.33-0.24,0.5-0.14c0.18,0.1,0.24,0.33,0.14,0.5l-3.89,6.75C280.33,64.03,280.2,64.09,280.08,64.09z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M270.15,61.43c-0.2,0-0.37-0.17-0.37-0.37v-7.78c0-0.2,0.17-0.37,0.37-0.37c0.2,0,0.37,0.17,0.37,0.37v7.78 C270.52,61.27,270.35,61.43,270.15,61.43z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M270.16,61.43c-0.2,0-0.37-0.17-0.37-0.37v-7.78c0-0.2,0.17-0.37,0.37-0.37c0.2,0,0.37,0.17,0.37,0.37v7.78 C270.53,61.27,270.36,61.43,270.16,61.43z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M280.08,64.1c-0.06,0-0.13-0.02-0.18-0.05c-0.18-0.1-0.24-0.33-0.14-0.5l3.9-6.74 c0.1-0.18,0.33-0.24,0.5-0.14c0.18,0.1,0.24,0.33,0.14,0.5l-3.9,6.74C280.34,64.03,280.21,64.1,280.08,64.1z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M287.35,71.37c-0.13,0-0.25-0.07-0.32-0.19c-0.1-0.18-0.04-0.4,0.14-0.5l6.75-3.89 c0.18-0.1,0.4-0.04,0.5,0.14c0.1,0.18,0.04,0.4-0.14,0.5l-6.75,3.89C287.47,71.35,287.41,71.37,287.35,71.37z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M297.79,81.29h-7.79c-0.2,0-0.37-0.17-0.37-0.37c0-0.2,0.17-0.37,0.37-0.37h7.79c0.2,0,0.37,0.17,0.37,0.37 C298.16,81.13,298,81.29,297.79,81.29z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M246.21,95.1c-0.13,0-0.25-0.07-0.32-0.19c-0.1-0.18-0.04-0.4,0.14-0.5l6.75-3.89c0.17-0.1,0.4-0.04,0.5,0.14 c0.1,0.18,0.04,0.4-0.14,0.5l-6.75,3.89C246.34,95.09,246.28,95.1,246.21,95.1z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M250.3,81.28h-7.79c-0.2,0-0.37-0.17-0.37-0.37s0.17-0.37,0.37-0.37h7.79c0.2,0,0.37,0.17,0.37,0.37 S250.51,81.28,250.3,81.28z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M252.96,71.36c-0.06,0-0.13-0.02-0.18-0.05l-6.74-3.89c-0.18-0.1-0.24-0.33-0.14-0.5 c0.1-0.18,0.33-0.24,0.5-0.14l6.74,3.89c0.18,0.1,0.24,0.33,0.14,0.5C253.22,71.29,253.09,71.36,252.96,71.36z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M260.23,64.09c-0.13,0-0.25-0.07-0.32-0.19l-3.89-6.75c-0.1-0.18-0.04-0.4,0.14-0.5 c0.17-0.1,0.4-0.04,0.5,0.14l3.89,6.75c0.1,0.18,0.04,0.4-0.14,0.5C260.36,64.08,260.3,64.09,260.23,64.09z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M270.16,61.43c-0.2,0-0.37-0.17-0.37-0.37v-7.78c0-0.2,0.17-0.37,0.37-0.37c0.2,0,0.37,0.17,0.37,0.37v7.78 C270.53,61.27,270.36,61.43,270.16,61.43z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M174.08,25.14h-86.1c-0.76,0-1.38-0.62-1.38-1.38c0-0.76,0.62-1.38,1.38-1.38h86.1 c0.76,0,1.38,0.62,1.38,1.38C175.45,24.53,174.84,25.14,174.08,25.14z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M174.08,41.14h-86.1c-0.76,0-1.38-0.62-1.38-1.38c0-0.76,0.62-1.38,1.38-1.38h86.1 c0.76,0,1.38,0.62,1.38,1.38C175.45,40.52,174.84,41.14,174.08,41.14z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M174.08,57.12H64.94c-0.76,0-1.38-0.62-1.38-1.38c0-0.76,0.62-1.38,1.38-1.38h109.14 c0.76,0,1.38,0.62,1.38,1.38C175.45,56.51,174.84,57.12,174.08,57.12z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M174.08,73.12H64.94c-0.76,0-1.38-0.62-1.38-1.38c0-0.76,0.62-1.38,1.38-1.38h109.14 c0.76,0,1.38,0.62,1.38,1.38C175.45,72.5,174.84,73.12,174.08,73.12z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M174.08,89.11H64.94c-0.76,0-1.38-0.62-1.38-1.38c0-0.76,0.62-1.38,1.38-1.38h109.14 c0.76,0,1.38,0.62,1.38,1.38C175.45,88.5,174.84,89.11,174.08,89.11z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M174.08,105.1H64.94c-0.76,0-1.38-0.62-1.38-1.38c0-0.76,0.62-1.38,1.38-1.38h109.14 c0.76,0,1.38,0.62,1.38,1.38C175.45,104.49,174.84,105.1,174.08,105.1z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M79.6,43.16c-0.54,0-1.06-0.32-1.27-0.86l-6.06-14.89L66.21,42.3c-0.29,0.7-1.09,1.04-1.79,0.75 c-0.7-0.29-1.04-1.09-0.75-1.79l7.33-18.02c0.21-0.52,0.71-0.86,1.27-0.86c0.56,0,1.06,0.34,1.27,0.86l7.33,18.02 c0.29,0.7-0.05,1.51-0.75,1.79C79.95,43.13,79.77,43.16,79.6,43.16z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M76.63,39.56h-9.69c-0.76,0-1.38-0.62-1.38-1.38c0-0.76,0.62-1.38,1.38-1.38h9.69c0.76,0,1.38,0.62,1.38,1.38 C78.01,38.95,77.39,39.56,76.63,39.56z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st13\",\n d: \"M242.26,153.06c0,3.1-2.34,5.61-5.23,5.61h-10.14v21.03l-24.85-21.03h-64.71c-2.89,0-5.23-2.5-5.23-5.61 V89.41c0-3.1,2.34-5.61,5.23-5.61h99.69c2.89,0,5.23,2.51,5.23,5.61V153.06z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st15\",\n d: \"M87.92,133c0,3.1,2.34,5.61,5.23,5.61h10.14v21.03l24.84-21.03h64.71c2.89,0,5.24-2.51,5.24-5.61V69.34 c0-3.1-2.34-5.6-5.24-5.6H93.15c-2.89,0-5.23,2.51-5.23,5.6V133z\"\n }), /*#__PURE__*/React.createElement(\"rect\", {\n x: 104.42,\n y: 84.2,\n className: \"st16\",\n width: 77.15,\n height: 4.81\n }), /*#__PURE__*/React.createElement(\"rect\", {\n x: 104.42,\n y: 99.44,\n className: \"st16\",\n width: 77.15,\n height: 4.81\n }), /*#__PURE__*/React.createElement(\"rect\", {\n x: 104.42,\n y: 114.69,\n className: \"st16\",\n width: 60.05,\n height: 4.81\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st17\",\n d: \"M76,144.47l-0.38,1.54c-1.13,0.45-2.03,0.78-2.7,1.01c-0.67,0.24-1.46,0.35-2.35,0.35 c-1.37,0-2.43-0.33-3.19-1c-0.76-0.67-1.14-1.52-1.14-2.54c0-0.4,0.03-0.81,0.09-1.23c0.06-0.42,0.15-0.89,0.27-1.41l1.41-5 c0.13-0.48,0.23-0.94,0.31-1.36c0.09-0.43,0.13-0.82,0.13-1.17c0-0.64-0.13-1.09-0.39-1.34c-0.27-0.25-0.77-0.37-1.51-0.37 c-0.37,0-0.74,0.05-1.12,0.17c-0.38,0.11-0.72,0.23-0.99,0.33l0.38-1.54c0.93-0.38,1.81-0.7,2.66-0.97c0.85-0.27,1.64-0.4,2.4-0.4 c1.36,0,2.41,0.33,3.15,0.99c0.73,0.65,1.1,1.51,1.1,2.56c0,0.21-0.02,0.6-0.08,1.15c-0.05,0.54-0.15,1.05-0.28,1.5l-1.41,4.98 c-0.11,0.4-0.22,0.86-0.31,1.37c-0.09,0.52-0.14,0.9-0.14,1.17c0,0.66,0.15,1.11,0.44,1.35c0.29,0.24,0.8,0.36,1.53,0.36 c0.35,0,0.73-0.06,1.17-0.18C75.49,144.66,75.8,144.56,76,144.47z M76.36,123.57c0,0.87-0.33,1.61-0.99,2.22 c-0.66,0.61-1.45,0.91-2.37,0.91c-0.92,0-1.72-0.3-2.38-0.91c-0.66-0.61-1-1.35-1-2.22s0.33-1.61,1-2.23 c0.66-0.62,1.45-0.92,2.38-0.92c0.92,0,1.71,0.31,2.37,0.92C76.03,121.96,76.36,122.7,76.36,123.57z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st10\",\n d: \"M244.29,37.16c-1.32,0-2.4-1.08-2.4-2.4c0-1.32,1.08-2.4,2.4-2.4c1.32,0,2.4,1.08,2.4,2.4 C246.69,36.09,245.61,37.16,244.29,37.16z M244.29,33.07c-0.93,0-1.69,0.76-1.69,1.69c0,0.93,0.76,1.69,1.69,1.69 c0.93,0,1.69-0.76,1.69-1.69C245.98,33.83,245.22,33.07,244.29,33.07z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st10\",\n d: \"M255.6,31.09c-1.32,0-2.4-1.08-2.4-2.4c0-1.32,1.08-2.4,2.4-2.4c1.32,0,2.4,1.08,2.4,2.4 C258,30.01,256.93,31.09,255.6,31.09z M255.6,27c-0.93,0-1.69,0.76-1.69,1.69c0,0.93,0.76,1.69,1.69,1.69s1.69-0.76,1.69-1.69 C257.29,27.76,256.53,27,255.6,27z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st10\",\n d: \"M255.6,43.24c-1.32,0-2.4-1.08-2.4-2.4c0-1.32,1.08-2.4,2.4-2.4c1.32,0,2.4,1.08,2.4,2.4 C258,42.16,256.93,43.24,255.6,43.24z M255.6,39.15c-0.93,0-1.69,0.76-1.69,1.69c0,0.93,0.76,1.69,1.69,1.69s1.69-0.76,1.69-1.69 C257.29,39.91,256.53,39.15,255.6,39.15z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st10\",\n d: \"M253.5,40.11c-0.06,0-0.12-0.01-0.18-0.05l-7.26-4.19c-0.17-0.1-0.23-0.32-0.13-0.49 c0.1-0.17,0.32-0.23,0.49-0.13l7.26,4.19c0.17,0.1,0.23,0.32,0.13,0.49C253.74,40.05,253.62,40.11,253.5,40.11z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st10\",\n d: \"M246.24,34.32c-0.12,0-0.24-0.06-0.31-0.18c-0.1-0.17-0.04-0.39,0.13-0.49l7.26-4.19 c0.17-0.1,0.39-0.04,0.49,0.13c0.1,0.17,0.04,0.39-0.13,0.49l-7.26,4.19C246.36,34.3,246.3,34.32,246.24,34.32z\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"st13\",\n points: \"235.73,215.48 235.73,193.2 235.73,182.03 243.74,174.03 266.07,174.03 266.07,182.29 266.07,193.2 266.07,215.48 \"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"st15\",\n points: \"243.74,182.03 235.73,182.03 243.74,174.03 \"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"st13\",\n points: \"235.73,182.03 243.74,182.03 235.73,190.03 \"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st18\",\n d: \"M247.13,203.6c0.88,1.67,0.01,4.53-2.17,7.02l0.3,0.31l0.03-0.03l5.02-5.02c-0.14-0.26-0.1-0.59,0.12-0.8 c0.27-0.27,0.7-0.27,0.97,0c0.27,0.27,0.26,0.7,0,0.97c-0.22,0.22-0.54,0.25-0.8,0.12l-5.02,5.02l-0.03,0.03l0.3,0.31 c2.49-2.18,5.35-3.04,7.01-2.17c0.58-0.99,1.29-2.02,2.13-3.04c0.83-1.01,1.69-1.9,2.54-2.66c-0.84-0.6-1.7-1.33-2.54-2.17 c-0.84-0.84-1.57-1.7-2.17-2.53c-0.76,0.85-1.65,1.71-2.66,2.53C249.15,202.31,248.12,203.02,247.13,203.6z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st7\",\n d: \"M270.03,190.48c2.9-2.9-1.12-6.93-4.03-4.03c-4.98,4.78-8.16,7.75-13.14,12.53c1.55,1.55,3.09,3.09,4.64,4.64 C262.27,198.63,265.25,195.46,270.03,190.48z\"\n }), /*#__PURE__*/React.createElement(\"rect\", {\n x: 254.33,\n y: 198.25,\n transform: \"matrix(0.7072 -0.707 0.707 0.7072 -67.9515 239.2126)\",\n className: \"st3\",\n width: 1,\n height: 6.78\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st3\",\n d: \"M264.86,197.39l10.6-10.61c1.13-1.12,1.09-2.98-0.07-4.14l-1.45-1.45c-1.16-1.17-3.02-1.2-4.14-0.07 l-10.6,10.6L264.86,197.39z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st7\",\n d: \"M275.5,187.33l-5.67-5.67c-1.04-1.04-2.63-1.15-3.55-0.24l-6.08,6.08l0,0l-1.05,1.05 c0.86,0.49,1.99,0.46,2.51-0.07c0.26-0.26,0.32-0.59,0.21-0.91l5.29-5.29c0.49-0.49,1.35-0.43,1.91,0.13l5.67,5.67 c0.24,0.24,0.61,0.27,0.82,0.05C275.77,187.94,275.74,187.57,275.5,187.33z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st19\",\n d: \"M210.48,130.46h2.19c0.51,0,1.06-0.39,1.22-0.88l0.41-0.99c0.22-0.46,0.12-1.12-0.24-1.48l-1.55-1.55 c-0.36-0.35-0.36-0.95,0-1.3l2.39-2.4c0.36-0.36,0.95-0.36,1.31,0l1.55,1.55c0.36,0.36,1.02,0.47,1.48,0.24l0.99-0.41 c0.48-0.16,0.88-0.7,0.88-1.22v-2.19c0-0.5,0.42-0.92,0.93-0.92h3.39c0.51,0,0.92,0.42,0.92,0.92v2.19c0,0.51,0.4,1.06,0.88,1.22 l0.99,0.41c0.46,0.23,1.12,0.12,1.49-0.24l1.55-1.55c0.36-0.36,0.95-0.36,1.31,0l2.4,2.4c0.36,0.35,0.36,0.95,0,1.3l-1.55,1.55 c-0.36,0.36-0.46,1.03-0.24,1.48l0.41,0.99c0.16,0.49,0.71,0.88,1.22,0.88h2.2c0.51,0,0.93,0.41,0.93,0.93v3.39 c0,0.51-0.42,0.93-0.93,0.93h-2.2c-0.51,0-1.06,0.39-1.22,0.88l-0.41,0.99c-0.22,0.46-0.12,1.12,0.24,1.48l1.55,1.55 c0.36,0.36,0.36,0.95,0,1.31l-2.4,2.4c-0.36,0.35-0.95,0.35-1.31,0l-1.55-1.56c-0.36-0.36-1.02-0.47-1.49-0.24l-0.99,0.41 c-0.49,0.17-0.88,0.71-0.88,1.22v2.2c0,0.51-0.41,0.93-0.92,0.93h-3.39c-0.51,0-0.93-0.41-0.93-0.93v-2.2 c0-0.51-0.4-1.05-0.88-1.22l-0.99-0.41c-0.46-0.22-1.12-0.12-1.48,0.24l-1.55,1.56c-0.36,0.35-0.95,0.35-1.31,0l-2.39-2.4 c-0.36-0.36-0.36-0.95,0-1.31l1.55-1.55c0.36-0.36,0.46-1.03,0.24-1.48l-0.41-0.99c-0.16-0.48-0.71-0.88-1.22-0.88h-2.19 c-0.51,0-0.93-0.42-0.93-0.93v-3.39C209.55,130.87,209.97,130.46,210.48,130.46z M223.74,137.55c2.47,0,4.47-2,4.47-4.47 c0-2.47-2-4.47-4.47-4.47c-2.47,0-4.47,2-4.47,4.47C219.27,135.55,221.27,137.55,223.74,137.55z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st1\",\n d: \"M223.69,137.55c0.01,0,0.03,0,0.05,0c2.47,0,4.47-2,4.47-4.47c0-2.47-2-4.47-4.47-4.47c-0.02,0-0.03,0-0.05,0 v-9.71h1.74c0.51,0,0.92,0.42,0.92,0.92v2.19c0,0.51,0.4,1.06,0.88,1.22l0.99,0.41c0.46,0.23,1.12,0.12,1.49-0.24l1.55-1.55 c0.36-0.36,0.95-0.36,1.31,0l2.4,2.4c0.36,0.35,0.36,0.95,0,1.3l-1.55,1.55c-0.36,0.36-0.46,1.03-0.24,1.48l0.41,0.99 c0.16,0.49,0.71,0.88,1.22,0.88h2.2c0.51,0,0.93,0.41,0.93,0.93v3.39c0,0.51-0.42,0.93-0.93,0.93h-2.2c-0.51,0-1.06,0.39-1.22,0.88 l-0.41,0.99c-0.22,0.46-0.12,1.12,0.24,1.48l1.55,1.55c0.36,0.36,0.36,0.95,0,1.31l-2.4,2.4c-0.36,0.35-0.95,0.35-1.31,0 l-1.55-1.56c-0.36-0.36-1.02-0.47-1.49-0.24l-0.99,0.41c-0.49,0.17-0.88,0.71-0.88,1.22v2.2c0,0.51-0.41,0.93-0.92,0.93h-1.74 V137.55z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st7\",\n d: \"M197.06,27.91c0,0.58-0.11,1.35-0.33,2.3c-0.21,0.95-0.48,2.08-0.8,3.36c-0.31,1.22-0.66,2.73-1.06,4.55 c-0.4,1.82-0.82,4.06-1.26,6.74l-1.63-0.01c-0.41-2.7-0.79-4.96-1.16-6.76c-0.36-1.8-0.69-3.31-0.98-4.54 c-0.26-1.12-0.5-2.21-0.72-3.29c-0.22-1.07-0.33-1.88-0.32-2.41c0.01-1.09,0.42-2.02,1.23-2.79c0.82-0.76,1.79-1.14,2.93-1.14 c1.12,0.01,2.09,0.4,2.9,1.18C196.67,25.89,197.07,26.82,197.06,27.91z M196.83,51.39c-0.01,1.07-0.42,2-1.25,2.76 c-0.82,0.76-1.78,1.15-2.86,1.14c-1.11-0.01-2.06-0.41-2.87-1.18c-0.81-0.78-1.21-1.71-1.2-2.78c0.01-1.07,0.42-2.01,1.24-2.79 c0.82-0.78,1.79-1.17,2.89-1.16c1.08,0.01,2.04,0.41,2.84,1.2C196.44,49.38,196.84,50.32,196.83,51.39z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st3\",\n d: \"M192.53,47.41c-1,0.05-1.88,0.41-2.63,1.13c-0.82,0.78-1.24,1.71-1.24,2.79c-0.01,1.07,0.39,2.01,1.2,2.78 c0.75,0.71,1.62,1.09,2.62,1.15L192.53,47.41z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st3\",\n d: \"M189.83,33.55c0.29,1.23,0.62,2.73,0.98,4.54c0.37,1.8,0.75,4.06,1.16,6.76l0.57,0.01l0.16-20.91 c-1.03,0.04-1.93,0.41-2.69,1.12c-0.8,0.77-1.22,1.69-1.23,2.79c0,0.54,0.1,1.34,0.32,2.41C189.33,31.33,189.58,32.43,189.83,33.55 z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st20\",\n d: \"M203.34,64.44c0.24-11.39,7.65-19.68,19.37-19.68c14.99,0,19.85,9.33,19.85,15.39 c0,15.23-13.15,13.16-14.51,22.8v3.03H217.3v-3.59c1.11-13.79,12.99-12.51,12.75-21.13c0-4.86-2.55-7.17-6.77-7.17 c-5.74,0-8.21,4.7-8.21,10.36H203.34z M216.18,90.75h12.51v12.28h-12.51V90.75z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st21\",\n d: \"M222.71,44.76c-0.12,0-0.23,0.01-0.34,0.01v9.36c0.29-0.03,0.59-0.04,0.9-0.04c4.22,0,6.77,2.31,6.77,7.17 c0.15,5.16-4.04,6.78-7.68,10.2v14.52h5.68v-3.03c1.36-9.64,14.51-7.57,14.51-22.8C242.56,54.08,237.7,44.76,222.71,44.76z\"\n }), /*#__PURE__*/React.createElement(\"rect\", {\n x: 222.37,\n y: 90.75,\n className: \"st21\",\n width: 6.32,\n height: 12.28\n }), /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"path\", {\n className: \"st22\",\n d: \"M256.47,116.56c0,5.23-4.24,9.48-9.48,9.48c-5.24,0-9.48-4.25-9.48-9.48c0-5.24,4.24-9.48,9.48-9.48 C252.23,107.08,256.47,111.33,256.47,116.56z\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"st10\",\n points: \"250.65,115.41 248.14,115.41 248.14,112.91 245.84,112.91 245.84,115.41 243.34,115.41 243.34,117.71 245.84,117.71 245.84,120.22 248.14,120.22 248.14,117.71 250.65,117.71 \"\n })), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st23\",\n d: \"M189.93,187.92l-11.16-8.93v5.65h-9.61c-1.16,0-2.26,0.54-2.97,1.46l-6.41,8.39H148v7.46h13.61 c1.16,0,2.26-0.54,2.96-1.46l6.41-8.39h7.77v4.75L189.93,187.92z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"st20\",\n d: \"M137.32,180.59l11.16,8.95v-5.66h9.61c1.16,0,2.26-0.54,2.96-1.46l6.41-8.39h11.77v-7.46h-13.62 c-1.16,0-2.26,0.54-2.96,1.47l-6.41,8.39h-7.77v-4.76L137.32,180.59z\"\n }))), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: -561.24,\n y: -650.86,\n className: \"st24\",\n width: 1500,\n height: 1500\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgInquiriesGraphic);\nexport default __webpack_public_path__ + \"static/media/inquiries-graphic.52efa996.svg\";\nexport { ForwardRef as ReactComponent };","import { cloneDeep } from 'lodash';\nimport Cookies from 'js-cookie';\nimport React, { useCallback, useState, useRef, useEffect } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport { Container, Row, Col, Form } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { AccountOptionModel, COOKIES, ProgramModel, FormOption } from '@/lib/models';\nimport { accountService, programSettingService } from '@/lib/services';\nimport { createUseThemedStyles, useAccount, useAlert, useHandleError } from '@/hooks';\nimport { AsyncPage, LoadingButton, Select } from '@/components';\nimport { mediaQueries } from '@/jss';\nimport { mutateBpicLocationFormatToInputFormat, mutateGooglePlaceResultToBpicLocationFormat } from '@/lib/utils';\nimport { Typeahead } from 'react-bootstrap-typeahead';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tformRow: {\n\t\tboxShadow: `${theme.colors.gray300} 0px 2px 8px`,\n\t\tmargin: '0',\n\t},\n\tformCol: {\n\t\tbackground: theme.colors.white,\n\t\tpadding: '40px 55px',\n\t},\n\tfirstFormCol: {\n\t\tborderBottom: `1px solid ${theme.colors.gray200}`,\n\t\t[mediaQueries.lg]: {\n\t\t\tborderRight: `1px solid ${theme.colors.gray200}`,\n\t\t\tborderBottom: '0',\n\t\t},\n\t},\n}));\n\nexport const CompleteProfile = () => {\n\tconst classes = useStyles();\n\tconst handleError = useHandleError();\n\tconst history = useHistory();\n\tconst { account, setAccount } = useAccount();\n\tconst { showAlert } = useAlert();\n\n\tconst autoCompleteRef = useRef();\n\tconst [isLocationValid, setIsLocationValid] = useState(true);\n\tconst [levelOptions, setLevelOptions] = useState([]);\n\tconst [accountFunctionSelectedOptions, setAccountFunctionSelectedOptions] = useState([]);\n\tconst [accountFunctionOptions, setAccountFunctionOptions] = useState([]);\n\n\tconst [programs, setPrograms] = useState([]);\n\tconst [suppressProgramEmails, setSuppressProgramEmails] = useState(false);\n\tconst [formValues, setFormValues] = useState({\n\t\tname: account?.name ?? '',\n\t\ttitle: account?.title ?? '',\n\t\tlevel: account?.userLevelTagId ?? '',\n\t\tfunction: account?.userFunctionTagIds ?? [],\n\t\tlocation: account?.location ? mutateBpicLocationFormatToInputFormat(account.location) : '',\n\t\tofficePhoneNumber: account?.mobileNumber ?? '',\n\t});\n\tconst [isSubmitting, setIsSubmitting] = useState(false);\n\n\tconst fetchData = useCallback(async () => {\n\t\tif (account?.hasAdvisoryProfile) {\n\t\t\thistory.replace('/account/profile');\n\t\t}\n\n\t\tif (!account) {\n\t\t\tthrow new Error('account is undefined.');\n\t\t}\n\n\t\tconst [levelsResponse, functionsResponse, programResponse] = await Promise.all([\n\t\t\taccountService.getAccountOptions('USER_LEVEL').fetch(),\n\t\t\taccountService.getAccountOptions('USER_FUNCTION').fetch(),\n\t\t\tprogramSettingService.getPreferences(account.accountId).fetch(),\n\t\t]);\n\n\t\tsetLevelOptions(levelsResponse.options);\n\t\tconst reformattedOptionArray = functionsResponse.options.map(function(obj) {\n\t\t\tconst rObj = {\n\t\t\t\tid: obj.tagId,\n\t\t\t\tdisplay: obj.name,\n\t\t\t};\n\t\t\treturn rObj;\n\t\t});\n\t\tsetAccountFunctionOptions(reformattedOptionArray);\n\t\tsetPrograms(programResponse.programs);\n\t\tsetSuppressProgramEmails(programResponse.suppressProgramEmail);\n\t\tif (account?.userFunctionTagIds) {\n\t\t\tconst functionSelectedOptionFilter = reformattedOptionArray.filter(({ id }) =>\n\t\t\t\taccount?.userFunctionTagIds?.includes(id)\n\t\t\t);\n\t\t\tsetAccountFunctionSelectedOptions(functionSelectedOptionFilter);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [account, history]);\n\n\tuseEffect(() => {\n\t\tsetFormValues({\n\t\t\t...formValues,\n\t\t\tfunction: accountFunctionSelectedOptions.map((value) => value.id),\n\t\t});\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [accountFunctionSelectedOptions]);\n\n\tconst locationInputRef = useCallback((node: HTMLInputElement | null) => {\n\t\tif (!node) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!window.google?.maps?.places?.Autocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tautoCompleteRef.current = new window.google.maps.places.Autocomplete(node, {\n\t\t\ttypes: ['(cities)'],\n\t\t});\n\n\t\tautoCompleteRef.current.addListener('place_changed', () => {\n\t\t\tif (!autoCompleteRef.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst location = mutateGooglePlaceResultToBpicLocationFormat(autoCompleteRef.current.getPlace());\n\n\t\t\tsetFormValues((previousValue) => {\n\t\t\t\treturn {\n\t\t\t\t\t...previousValue,\n\t\t\t\t\tlocation,\n\t\t\t\t};\n\t\t\t});\n\t\t\tsetIsLocationValid(true);\n\t\t});\n\t}, []);\n\n\tconst handleEmailCommunicationPreferenceSwitchChange = useCallback(\n\t\t({ currentTarget }: React.ChangeEvent) => {\n\t\t\tconst programsClone = cloneDeep(programs);\n\t\t\tconst indexToUpdate = programsClone.findIndex((p) => p.programId === currentTarget.value);\n\n\t\t\tif (indexToUpdate < 0) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tprogramsClone[indexToUpdate].allowEmail = currentTarget.checked;\n\t\t\tsetPrograms(programsClone);\n\t\t},\n\t\t[programs]\n\t);\n\n\tconst handleFormSubmit = useCallback(\n\t\tasync (event: React.FormEvent) => {\n\t\t\tevent.preventDefault();\n\n\t\t\ttry {\n\t\t\t\tif (!account) {\n\t\t\t\t\tthrow new Error('account is undefined.');\n\t\t\t\t}\n\n\t\t\t\tsetIsSubmitting(true);\n\n\t\t\t\tconst [updateAccountResponse] = await Promise.all([\n\t\t\t\t\taccountService\n\t\t\t\t\t\t.updateCurrentAccount(account.accountId, {\n\t\t\t\t\t\t\tname: formValues.name,\n\t\t\t\t\t\t\tlocation: isLocationValid ? formValues.location : '',\n\t\t\t\t\t\t\ttitle: formValues.title,\n\t\t\t\t\t\t\tuserLevelTagId: formValues.level,\n\t\t\t\t\t\t\tuserFunctionTagIds: formValues.function,\n\t\t\t\t\t\t\tmobileNumber: formValues.officePhoneNumber,\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.fetch(),\n\t\t\t\t\tprogramSettingService\n\t\t\t\t\t\t.setPreferences(account.accountId, {\n\t\t\t\t\t\t\taccountCommPreferences: programs\n\t\t\t\t\t\t\t\t.filter(({ allowUserPreferences }) => allowUserPreferences)\n\t\t\t\t\t\t\t\t.map(({ allowEmail, ...rest }) => ({\n\t\t\t\t\t\t\t\t\t...rest,\n\t\t\t\t\t\t\t\t\tallowEmails: allowEmail,\n\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.fetch(),\n\t\t\t\t]);\n\n\t\t\t\tsetAccount(updateAccountResponse.account);\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'success',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tYour account and email communication preferences have been updated.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\t\tconst targetUrl = Cookies.get(COOKIES.TARGET_URL);\n\t\t\t\tif (targetUrl) {\n\t\t\t\t\thistory.push(targetUrl);\n\t\t\t\t} else {\n\t\t\t\t\thistory.push('/');\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tsetIsSubmitting(false);\n\t\t\t\thandleError(error);\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\taccount,\n\t\t\tformValues.name,\n\t\t\tformValues.location,\n\t\t\tformValues.title,\n\t\t\tformValues.level,\n\t\t\tformValues.officePhoneNumber,\n\t\t\tisLocationValid,\n\t\t\tformValues.function,\n\t\t\tprograms,\n\t\t\tsetAccount,\n\t\t\tshowAlert,\n\t\t\thistory,\n\t\t\thandleError,\n\t\t]\n\t);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Complete Your Profile

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tName\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFormValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...formValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tname: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSubmitting}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTitle\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFormValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...formValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttitle: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSubmitting}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tLevel\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFormValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...formValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tlevel: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSubmitting}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{levelOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tFunction\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetAccountFunctionSelectedOptions(selected as FormOption[]);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\toptions={accountFunctionOptions}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"Select Job Function\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tLocation{' '}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetIsLocationValid(!e.target.value.length);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSubmitting}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{!isLocationValid && (\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tLocation should be selected from the suggestion list, otherwise it\n\t\t\t\t\t\t\t\t\t\t\t\t\twill be discarded.\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tOffice Phone Number{' '}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFormValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...formValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tofficePhoneNumber: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSubmitting}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{!suppressProgramEmails ? (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tEmail Communication Preferences\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tEnabling email communication allows you to receive regular push emails\n\t\t\t\t\t\t\t\t\t\t\t\twith program newsletters and invitations to participate in performance\n\t\t\t\t\t\t\t\t\t\t\t\tassessments, webcasts and other events, helping you make the most of\n\t\t\t\t\t\t\t\t\t\t\t\tyour Advisory program membership.\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t{programs.length > 0 ? (\n\t\t\t\t\t\t\t\t\t\t\tprograms\n\t\t\t\t\t\t\t\t\t\t\t\t.filter((p) => p.allowUserPreferences)\n\t\t\t\t\t\t\t\t\t\t\t\t.map((program, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    {program.name}

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t

    No Programs

    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tConfirm\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","var _defs, _g, _polygon, _g2;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgHackettDwcMatrixIcon(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 1500 1500\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"style\", null, \"\\n .cls-1, .cls-2, .cls-3, .cls-4, .cls-5, .cls-6, .cls-7, .cls-8 {\\n fill: none;\\n stroke: #CC3333;\\n stroke-linecap: round;\\n stroke-linejoin: round;\\n }\\n\\n .cls-1, .cls-2, .cls-4, .cls-5, .cls-6, .cls-8 {\\n stroke-width: 8px;\\n }\\n\\n .cls-2 {\\n stroke-dasharray: 39.99 39.99;\\n }\\n\\n .cls-3 {\\n stroke-width: 30px;\\n }\\n\\n .cls-4 {\\n stroke-dasharray: 36.82 36.82;\\n }\\n\\n .cls-5 {\\n stroke-dasharray: 39.64 39.64;\\n }\\n\\n .cls-6 {\\n stroke-dasharray: 38.77 38.77;\\n }\\n\\n .cls-7 {\\n stroke-width: 3px;\\n }\\n\\n .cls-8 {\\n stroke-dasharray: 38.74 38.74;\\n }\\n \"))), _g || (_g = /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"cls-7\",\n points: \"115.03 543.55 115.03 956.03 357.48 1289.73 749.76 1417.19 1142.05 1289.73 1384.5 956.03 1384.5 543.55 1142.05 209.85 749.76 82.39 357.48 209.85 115.03 543.55\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"cls-7\",\n points: \"241.98 584.8 241.98 914.78 435.93 1181.74 749.76 1283.71 1063.59 1181.74 1257.55 914.78 1257.55 584.8 1063.59 317.84 749.76 215.87 435.93 317.84 241.98 584.8\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"cls-7\",\n points: \"368.92 626.05 368.92 873.54 514.39 1073.76 749.76 1150.23 985.14 1073.76 1130.61 873.54 1130.61 626.05 985.14 425.83 749.76 349.35 514.39 425.83 368.92 626.05\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"cls-7\",\n points: \"502.22 669.36 502.22 830.23 596.77 960.37 749.76 1010.08 902.76 960.37 997.31 830.23 997.31 669.36 902.76 539.22 749.76 489.51 596.77 539.22 502.22 669.36\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"cls-7\",\n points: \"625.99 709.58 625.99 790.01 673.27 855.08 749.76 879.94 826.26 855.08 873.54 790.01 873.54 709.58 826.26 644.51 749.76 619.65 673.27 644.51 625.99 709.58\"\n }))), _polygon || (_polygon = /*#__PURE__*/React.createElement(\"polygon\", {\n className: \"cls-3\",\n points: \"1322.5 572.5 749.76 152.15 394.5 262.5 180.45 572.5 180.5 942.5 398.74 1235.92 749.76 1344.74 1099.6 1235.92 1257.55 914.78 1322.5 572.5\"\n })), _g2 || (_g2 = /*#__PURE__*/React.createElement(\"g\", null, /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-1\",\n points: \"1288.99 934.45 1304.11 922.94 1304.11 903.94\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-5\",\n points: \"1304.11 864.3 1304.11 570.36 1135.88 297.54\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-1\",\n points: \"1125.47 280.67 1115.5 264.5 1096.93 260.49\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-4\",\n points: \"1060.93 252.73 749.76 185.63 431.07 254.59\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-1\",\n points: \"413.07 258.48 394.5 262.5 386.79 279.87\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-2\",\n points: \"370.56 316.42 241.98 606.08 187.51 904.14\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-1\",\n points: \"183.92 923.81 180.5 942.5 196.02 953.46\"\n }), /*#__PURE__*/React.createElement(\"line\", {\n className: \"cls-6\",\n x1: 227.68,\n y1: 975.84,\n x2: 718.42,\n y2: 1322.59\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n className: \"cls-1\",\n points: \"734.25 1333.78 749.76 1344.74 764.88 1333.24\"\n }), /*#__PURE__*/React.createElement(\"line\", {\n className: \"cls-8\",\n x1: 795.71,\n y1: 1309.78,\n x2: 1273.57,\n y2: 946.17\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgHackettDwcMatrixIcon);\nexport default __webpack_public_path__ + \"static/media/hackett-dwc-matrix-icon.8c73cad2.svg\";\nexport { ForwardRef as ReactComponent };","export default __webpack_public_path__ + \"static/media/ai-bg.177cc5ca.png\";","export default __webpack_public_path__ + \"static/media/ai-xplr.fcd7d39d.png\";","import React, { useCallback, useState } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Button, Card, Col, Container, Modal, Row } from 'react-bootstrap';\nimport HTMLEllipsis from 'react-lines-ellipsis/lib/html';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport { Helmet } from 'react-helmet';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles, useAlert, useHandleError, useNavigationConfig } from '@/hooks';\nimport {\n\tAspectRatioLockedImage,\n\tAsyncPage,\n\tCarouselSingle,\n\tFeaturedContentTile,\n\tInquiryForm,\n\tSalesLeadCta,\n} from '@/components';\nimport {\n\tadvisorService,\n\tdocumentService,\n\teventsService,\n\tleftNavigationService,\n\trecommendationsService,\n\tsalesLeadService,\n} from '@/lib/services';\nimport { AdvisorModel, DocumentModel, EventModel, LeftNavigationItem, Recommendation } from '@/lib/models';\nimport { mediaQueries } from '@/jss';\n\nimport { ReactComponent as StarIcon } from '@/assets/icons/icon-star.svg';\nimport { ReactComponent as InquiriesGraphic } from '@/assets/illustrations/inquiries-graphic.svg';\nimport aiBg from '@/assets/images/ai-bg.png';\nimport aiXplrPng from '@/assets/images/ai-xplr.png';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tprogramSectionsCol: {\n\t\tminHeight: '100%',\n\t\tpadding: '0 15px 25px',\n\t\t[mediaQueries.lg]: {\n\t\t\tborderRight: `1px solid ${theme.colors.gray300}`,\n\t\t},\n\t},\n}));\n\nconst ResponsiveEllipsis = responsiveHOC()(HTMLEllipsis);\n\nexport const DashboardV2 = () => {\n\tconst classes = useStyles();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst [leftNaviationItems, setLeftNavigationItems] = useState([]);\n\tconst [trendingContent, setTrendingContent] = useState([]);\n\tconst [recommendations, setRecommendations] = useState([]);\n\tconst [upcomingEvents, setUpcomingEvents] = useState([]);\n\tconst [performanceStudy, setPerformanceStudy] = useState();\n\tconst [featuredPodcasts, setFeaturedPodcasts] = useState([]);\n\tconst [advisors, setAdvisors] = useState([]);\n\n\tconst [showInquiriesModal, setShowInquiriesModal] = useState(false);\n\tconst [showAiXplrModal, setShowAiXplrModal] = useState(false);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst [leftNavigationResponse, recommendationsResponse, advisoryTeamResponse] = await Promise.all([\n\t\t\tleftNavigationService.getLeftNavigation().fetch(),\n\t\t\trecommendationsService.getRecommendations().fetch(),\n\t\t\tadvisorService.getAdvisoryTeam({ count: 4 }).fetch(),\n\t\t]);\n\n\t\tsetLeftNavigationItems(leftNavigationResponse.navigationItems);\n\t\tsetTrendingContent(recommendationsResponse.trendingContent);\n\t\tsetRecommendations(recommendationsResponse.recommendedContent.slice(0, 3));\n\t\tsetUpcomingEvents(recommendationsResponse.events);\n\n\t\tsetAdvisors(advisoryTeamResponse.advisors);\n\n\t\tif (navigationConfig?.allowPerformanceStudies) {\n\t\t\tconst performanceStudy = await eventsService.getNearestPerformanceStudy().fetch();\n\t\t\tsetPerformanceStudy(performanceStudy);\n\t\t}\n\n\t\tif (navigationConfig?.allowResearch) {\n\t\t\tconst documentResponse = await documentService\n\t\t\t\t.getDocuments({ documentTypes: ['PODCASTS'], size: '4', page: '0' })\n\t\t\t\t.fetch();\n\t\t\tsetFeaturedPodcasts(documentResponse.documents);\n\t\t}\n\t}, [navigationConfig?.allowPerformanceStudies, navigationConfig?.allowResearch]);\n\n\tconst handleInquiriesConfirm = useCallback(async () => {\n\t\ttry {\n\t\t\tawait salesLeadService.sendExpertIquiryEmail().fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tThank you for your interest. Your Advisory Team will be in contact with you.\n\t\t\t\t\t\t

    \n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tsetShowInquiriesModal(false);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError, showAlert]);\n\n\tconst handleAiXplrConfirm = useCallback(async () => {\n\t\ttry {\n\t\t\tawait salesLeadService.sendAiXplrEmail().fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tThank you for your interest. Your Advisory Team will be in contact with you.\n\t\t\t\t\t\t

    \n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tsetShowAiXplrModal(false);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError, showAlert]);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect\n\t\t\t\n\n\t\t\t {\n\t\t\t\t\tsetShowInquiriesModal(false);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\tExpert Inquiries\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tTo learn more about our Expert Inquiries service please click the \"Confirm\" button below, and a\n\t\t\t\t\t\tmember of your Advisory Team will get in touch with you.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t {\n\t\t\t\t\tsetShowAiXplrModal(false);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\tUnlock the Power of Artificial Intelligence Transformation with AI XPLR™\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tTo learn more about our AI XPLR™ platform please click the \"Confirm\" button below, and a member\n\t\t\t\t\t\tof your Advisory Team will get in touch with you.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tDigital World Class® Programs\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t{leftNaviationItems.map((navigationItem, navigationItemIndex) => {\n\t\t\t\t\t\t\t\t\t\tconst isLast = navigationItemIndex === leftNaviationItems.length - 1;\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t

    {navigationItem.name}

    \n\t\t\t\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t\t\t\t{navigationItem.bundles.map((bundle) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (bundle.comingSoonFlag) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{bundle.name}{' '}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(coming soon)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{bundle.hasAccess && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{bundle.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{bundle.newFlag && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t - NEW\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{!isLast &&
    }\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t

    Related Services

    \n\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tBenchmarking\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tConsulting\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tIPaaS®\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tThe Hackett Institute®\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t= included in your membership\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Trending Insights

    \n\t\t\t\t\t\t\t\t\t\t ({\n\t\t\t\t\t\t\t\t\t\t\t\tto: recommendation.detailsUrl,\n\t\t\t\t\t\t\t\t\t\t\t\ttitle: recommendation.title,\n\t\t\t\t\t\t\t\t\t\t\t\tdescription: recommendation.description,\n\t\t\t\t\t\t\t\t\t\t\t\timageUrl: recommendation.imageUrl ?? '',\n\t\t\t\t\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    We Also Recommend

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{navigationConfig?.allowResearch && All Research}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{recommendations.map((recommendation, recommendationIndex) => (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t{upcomingEvents.length > 0 && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Events

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tAll Events\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{upcomingEvents.slice(0, 4).map((event) => (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t)}\n\n\t\t\t\t{performanceStudy && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    {performanceStudy?.name}

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tStart Survey\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t)}\n\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tThe Hackett Group® Acquires LeewayHertz\n\t\t\t\t\t

    \n\t\t\t\t\t

    \n\t\t\t\t\t\tNow offers a complete, end-to-end capability that accelerates client AI initiatives from\n\t\t\t\t\t\tideation to implementation.\n\t\t\t\t\t

    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\tLearn more\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tUnlock the Power of Artificial Intelligence Transformation with AI XPLR™\n\t\t\t\t\t

    \n\t\t\t\t\t

    \n\t\t\t\t\t\tGenerative artificial intelligence (Gen AI) will transform the way business functions work and\n\t\t\t\t\t\tperform. Our AI XPLR™ platform helps executives understand real-work use cases, determining\n\t\t\t\t\t\treadiness and prioritize implementation. Ask us how or schedule a demo.\n\t\t\t\t\t

    \n\t\t\t\t\t
    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetShowAiXplrModal(true);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tLearn More\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    Featured Podcasts

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tAll Podcasts\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{featuredPodcasts.map((podcast) => (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    Meet Your Team

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tAll Advisors\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{advisors.map((advisor, advisorIndex) => {\n\t\t\t\t\t\t\t\t\t\tconst isFirst = advisorIndex === 0;\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{advisor.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{advisor.role}\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    We're here to help

    \n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\tContact us to get answers to your questions, assistance\n\t\t\t\t\t\t\t\t\twith relevant research and more.\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{!navigationConfig?.inquiriesDisabled && !navigationConfig?.allowClientManagement && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{navigationConfig?.allowAccessToInquiries ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tExpert Inquiries: Tell us what you need help with\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t

    Expert Inquiries

    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\tExpert Inquiries enable designated users at your organization to engage\n\t\t\t\t\t\t\t\t\t\t\t\twith subject-matter advisors for guided insights via curated custom\n\t\t\t\t\t\t\t\t\t\t\t\tmaterials by request.\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\tYour user account has not been designated with inquiry access at this\n\t\t\t\t\t\t\t\t\t\t\t\ttime. To learn more about your organization's designated user access to\n\t\t\t\t\t\t\t\t\t\t\t\tExpert Inquiries, please click below.\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetShowInquiriesModal(true);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tLearn More\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t
    \n\t\t\n\t);\n};\n","import { format } from 'date-fns';\nimport { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { Link, useHistory, useParams } from 'react-router-dom';\nimport { Button, Col, Container, Form, Row } from 'react-bootstrap';\nimport { Typeahead } from 'react-bootstrap-typeahead';\nimport classNames from 'classnames';\nimport { v4 as uuid } from 'uuid';\nimport { ErrorCode, FileRejection } from 'react-dropzone';\n\nimport { contactsTableColumns, contactsTableHeaders, CONTACTS_TABLE_COLUMN_IDS } from '@/lib/__mocks__';\nimport {\n\tAccountModel,\n\tDocumentModel,\n\tEventModel,\n\tFormOption,\n\tUnmatchedAccountModel,\n\tDOCUMENT_UPLOAD_STATUS_ID,\n\tPresignedUploadModel,\n\tdeliverableUploadedAttachment,\n\tDeliverableDocumentUploaded,\n} from '@/lib/models';\nimport { TableRowConfig } from '@/components/table/models';\nimport { documentUploader, deliverablesService } from '@/lib/services';\nimport { createUseThemedStyles, useAlert, useHandleError, useNavigationConfig } from '@/hooks';\n\nimport {\n\tAsyncPage,\n\tDateInput,\n\tDeliverablesContactsModal,\n\tDeliverablesDocumentListItem,\n\tDeliverablesDocumentModal,\n\tDeliverablesEntryListItem,\n\tDeliverablesEntryModal,\n\tDeliverablesExistingModal,\n\tExpandingTextarea,\n\tFadeTransition,\n\tFileInputButton,\n\tLoadingButton,\n\tSelect,\n\tAttachmentDropdown,\n\tFileDropzone,\n} from '@/components';\nimport { TableCell, TableHeader, TableRenderer, TableRow } from '@/components/table';\nimport { mediaQueries } from '@/jss';\n\nimport { ReactComponent as TrashIcon } from '@/assets/icons/icon-trash.svg';\nimport { Helmet } from 'react-helmet';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\tformRow: {\n\t\tboxShadow: `${theme.colors.gray300} 0px 2px 8px`,\n\t\tmargin: '0',\n\t},\n\tformCol: {\n\t\tpadding: '38px 50px 50px',\n\t\tbackground: theme.colors.white,\n\t\t'&:not(:last-child)': {\n\t\t\tborderBottom: `1px solid ${theme.colors.gray200}`,\n\t\t\t[mediaQueries.lg]: {\n\t\t\t\tborderRight: `1px solid ${theme.colors.gray200}`,\n\t\t\t\tborderBottom: '0',\n\t\t\t},\n\t\t},\n\t},\n}));\n\nexport const DeliverablesCreate = () => {\n\tconst history = useHistory();\n\tconst classes = useStyles();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst { deliverableId } = useParams<{ deliverableId: string }>();\n\n\t/* Form state */\n\tconst [createDocumentUrl, setCreateDocumentUrl] = useState('');\n\tconst [createClientUrl, setCreateClientUrl] = useState('');\n\tconst [deliverableTypeOptions, setDeliverableTypeOptions] = useState([]);\n\tconst [topicOptions, setTopicOptions] = useState([]);\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [deliverableForm, setDeliverableForm] = useState({\n\t\ttitle: '',\n\t\ttype: '',\n\t\thours: 0,\n\t\tdeliveryDate: new Date(),\n\t\ttopic: '',\n\t\tprograms: [] as FormOption[],\n\t\tdescription: '',\n\t\tentries: [] as EventModel[],\n\t\tdocuments: [] as DocumentModel[],\n\t\tcontacts: [] as Array,\n\t\tdocumentsUploaded: [] as DeliverableDocumentUploaded[],\n\t});\n\tconst [isSaving, setIsSaving] = useState(false);\n\tconst [isDeleting, setIsDeleting] = useState(false);\n\tconst [documentUploaded, setDocumentUploaded] = useState<\n\t\t{ file: File; fileId: string; deliverableId: string; downloadUrl: string; viewUrl: string }[]\n\t>([]);\n\n\t/* Modal state */\n\tconst [deliverablesEntryModalIsOpen, setDeliverablesEntryModalIsOpen] = useState(false);\n\tconst [deliverablesDocumentModalIsOpen, setDeliverablesDocumentModalIsOpen] = useState(false);\n\tconst [deliverablesExistingModalIsOpen, setDeliverablesExistingModalIsOpen] = useState(false);\n\tconst [deliverablesContactsModalIsOpen, setDeliverablesContactsModalIsOpen] = useState(false);\n\tconst [contactsFileName, setContactsFileName] = useState('');\n\tconst [unmatchedContacts, setUnmatchedContacts] = useState([]);\n\tconst [matchedContacts, setMatchedContacts] = useState([]);\n\n\t/* Contacts table state */\n\tconst [tableIsLoading] = useState(false);\n\tconst [tablePageSize] = useState(1000);\n\tconst [tablePageIndex] = useState(0);\n\tconst [tableColumnsData, setTableColumnsData] = useState(contactsTableColumns);\n\tconst [tableHeadersData] = useState(contactsTableHeaders);\n\tconst [contactsRowData, setContactsRowData] = useState<\n\t\tTableRowConfig[]\n\t>([]);\n\n\tconst handleFileDropzoneChange = useCallback(\n\t\tasync (files: File[], fileRejections: FileRejection[]) => {\n\t\t\tfor (const fileRejection of fileRejections) {\n\t\t\t\tfor (const rejectionError of fileRejection.errors) {\n\t\t\t\t\tif (rejectionError.code === ErrorCode.FileInvalidType) {\n\t\t\t\t\t\tshowAlert({\n\t\t\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tOne or more files is an incorrect file type. Choose files with valid type: any\n\t\t\t\t\t\t\t\t\t\toffice type, pdf or zip.\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif (rejectionError.code === ErrorCode.FileTooLarge) {\n\t\t\t\t\t\tshowAlert({\n\t\t\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t

    File size cannot exceed 100MB. Please try again.

    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfiles.forEach((file) => {\n\t\t\t\tsetDocumentUploaded((previousValue) => [\n\t\t\t\t\t...previousValue,\n\t\t\t\t\t{ file: file, fileId: uuid(), deliverableId: '', downloadUrl: '', viewUrl: '' },\n\t\t\t\t]);\n\t\t\t});\n\t\t},\n\t\t[showAlert]\n\t);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await deliverablesService\n\t\t\t.getDeliverablesForm({ deliverableId: deliverableId ? deliverableId : '' })\n\t\t\t.fetch();\n\n\t\tif (deliverableId) {\n\t\t\tconst deliverableResponse = await deliverablesService.getDeliverableById(deliverableId).fetch();\n\n\t\t\tsetDeliverableForm({\n\t\t\t\ttitle: deliverableResponse.title,\n\t\t\t\ttype: deliverableResponse.deliverableTypeId,\n\t\t\t\thours: deliverableResponse.hours,\n\t\t\t\tdeliveryDate: new Date(deliverableResponse.deliveryDate),\n\t\t\t\ttopic: deliverableResponse.topicId ?? '',\n\t\t\t\tprograms: deliverableResponse.programIds.map((programId) => {\n\t\t\t\t\tconst programOption = response.programs.find((program) => program.id === programId);\n\n\t\t\t\t\tif (programOption) {\n\t\t\t\t\t\treturn programOption;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: programId,\n\t\t\t\t\t\tdisplay: 'Program not found',\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t\tdescription: deliverableResponse.description,\n\t\t\t\tentries: deliverableResponse.events,\n\t\t\t\tdocuments: deliverableResponse.documents,\n\t\t\t\tcontacts: deliverableResponse.contacts.map((contact) => ({\n\t\t\t\t\t...contact,\n\t\t\t\t\tdeliveredDate: contact.deliveryDate ? new Date(contact.deliveryDate) : null,\n\t\t\t\t})),\n\t\t\t\tdocumentsUploaded: deliverableResponse.documentsUploaded,\n\t\t\t});\n\t\t\tsetDocumentUploaded(\n\t\t\t\tdeliverableResponse.documentsUploaded.map((document) => {\n\t\t\t\t\tvar file = new File([document.title], document.title, {\n\t\t\t\t\t\ttype: 'text/plain',\n\t\t\t\t\t});\n\t\t\t\t\treturn {\n\t\t\t\t\t\tfile: file,\n\t\t\t\t\t\tfileId: document.deliverableDocumentUploadedId,\n\t\t\t\t\t\tdeliverableId: document.deliverableId,\n\t\t\t\t\t\tdownloadUrl: document.documentDownloadUrl,\n\t\t\t\t\t\tviewUrl: document.documentViewUrl,\n\t\t\t\t\t};\n\t\t\t\t})\n\t\t\t);\n\t\t}\n\n\t\tsetCreateDocumentUrl(response.createDocumentUrl);\n\t\tsetCreateClientUrl(response.createClientUrl);\n\t\tsetDeliverableTypeOptions(response.deliverableType);\n\t\tsetTopicOptions(response.topics);\n\t\tsetProgramOptions(response.programs);\n\t}, [deliverableId]);\n\n\tconst handleContactsFileChange = async (file: File) => {\n\t\ttry {\n\t\t\tconst response = await deliverablesService.importContactsFromFile(file).fetch();\n\n\t\t\tsetContactsFileName(file.name);\n\t\t\tsetUnmatchedContacts(response.unmatchedContacts);\n\t\t\tsetMatchedContacts(response.matchedAccounts);\n\t\t\tsetDeliverablesContactsModalIsOpen(true);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tconst formattedContacts = deliverableForm.contacts.map((mc) => {\n\t\t\treturn {\n\t\t\t\trowId: mc.accountId,\n\t\t\t\tchecked: false,\n\t\t\t\texpanded: false,\n\t\t\t\tcolumnData: mc,\n\t\t\t};\n\t\t});\n\n\t\tsetContactsRowData(formattedContacts);\n\t}, [deliverableForm.contacts]);\n\n\tconst handleEntryRemove = (entryId: string) => {\n\t\tif (!window.confirm('Are you sure you want to remove this entry?')) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst deliverableFormClone = cloneDeep(deliverableForm);\n\t\tconst indexToRemove = deliverableFormClone.entries.findIndex((e) => e.eventId === entryId);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tdeliverableFormClone.entries.splice(indexToRemove, 1);\n\t\t}\n\n\t\tsetDeliverableForm(deliverableFormClone);\n\t};\n\n\tconst handleDocumentUploadedRemove = useCallback((document: { file: File; fileId: string }) => {\n\t\tif (!window.confirm('Are you sure you want to remove this document?')) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetDocumentUploaded((previousValue) => {\n\t\t\tconst indexToRemove = previousValue.findIndex((v) => v.fileId === document.fileId);\n\n\t\t\tif (indexToRemove > -1) {\n\t\t\t\tpreviousValue.splice(indexToRemove, 1);\n\t\t\t}\n\n\t\t\treturn [...previousValue];\n\t\t});\n\t}, []);\n\n\tconst handleDocumentRemove = (documentId: string) => {\n\t\tif (!window.confirm('Are you sure you want to remove this document?')) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst deliverableFormClone = cloneDeep(deliverableForm);\n\t\tconst indexToRemove = deliverableFormClone.documents.findIndex((d) => d.documentId === documentId);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tdeliverableFormClone.documents.splice(indexToRemove, 1);\n\t\t}\n\n\t\tsetDeliverableForm(deliverableFormClone);\n\t};\n\n\tconst handleContactDateChange = (rowData: TableRowConfig, date: Date | null) => {\n\t\tif (!date) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst deliverableFormClone = cloneDeep(deliverableForm);\n\t\tconst indexToUpdate = deliverableFormClone.contacts.findIndex(\n\t\t\t(c) => c.accountId === rowData.columnData.accountId\n\t\t);\n\n\t\tif (indexToUpdate > -1) {\n\t\t\tdeliverableFormClone.contacts[indexToUpdate].deliveredDate = date;\n\t\t}\n\n\t\tsetDeliverableForm(deliverableFormClone);\n\t};\n\n\tconst handleContactDeleteButtonClick = (rowData: TableRowConfig) => {\n\t\tif (!window.confirm('Are you sure you want to remove this contact?')) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst deliverableFormClone = cloneDeep(deliverableForm);\n\t\tconst indexToRemove = deliverableFormClone.contacts.findIndex(\n\t\t\t(c) => c.accountId === rowData.columnData.accountId\n\t\t);\n\n\t\tif (indexToRemove > -1) {\n\t\t\tdeliverableFormClone.contacts.splice(indexToRemove, 1);\n\t\t}\n\n\t\tsetDeliverableForm(deliverableFormClone);\n\t};\n\n\tconst handleDeliverableDeleteButtonClick = useCallback(async () => {\n\t\tif (!window.confirm('Are you sure you want to delete this entry?')) {\n\t\t\tsetIsDeleting(false);\n\t\t\treturn;\n\t\t}\n\t\tsetIsDeleting(true);\n\n\t\ttry {\n\t\t\tawait deliverablesService.deleteDeliverable(deliverableId).fetch();\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Deliverable deleted.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t\thistory.push('/client-management/deliverables');\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t\tsetIsDeleting(false);\n\t\t}\n\t}, [deliverableId, handleError, history, showAlert]);\n\n\tconst handleFormSubmit = async (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\n\t\ttry {\n\t\t\tsetIsSaving(true);\n\n\t\t\tconst requestBody = {\n\t\t\t\tcontacts: deliverableForm.contacts.map((c) => ({\n\t\t\t\t\tcontactId: c.accountId,\n\t\t\t\t\tdeliveryDate: format(c.deliveredDate ?? deliverableForm.deliveryDate, 'yyyy-MM-dd'),\n\t\t\t\t})),\n\t\t\t\tdeliverableTypeId: deliverableForm.type,\n\t\t\t\thours: deliverableForm.hours,\n\t\t\t\tdeliveryDate: format(deliverableForm.deliveryDate, 'yyyy-MM-dd'),\n\t\t\t\tdescription: deliverableForm.description,\n\t\t\t\tdocumentIds: deliverableForm.documents.map((d) => d.documentId),\n\t\t\t\tdeliverableDocumentUploadedIds: documentUploaded.filter((d) => d.fileId !== '').map((d) => d.fileId),\n\t\t\t\teventIds: deliverableForm.entries.map((e) => e.eventId),\n\t\t\t\tprogramIds: deliverableForm.programs.map((p) => p.id),\n\t\t\t\ttitle: deliverableForm.title,\n\t\t\t\ttopicId: deliverableForm.topic,\n\t\t\t};\n\n\t\t\tlet deliverableIdResponse = deliverableId;\n\t\t\tif (deliverableId) {\n\t\t\t\tawait deliverablesService.updateDeliverable(deliverableId, requestBody).fetch();\n\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'success',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn

    Deliverable updated.

    ;\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst deliverableResponse = await deliverablesService.postDeliverable(requestBody).fetch();\n\t\t\t\tdeliverableIdResponse = deliverableResponse.deliverableId;\n\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'success',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn

    Deliverable created.

    ;\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst presignedUploadPromises = documentUploaded\n\t\t\t\t.filter((d) => d.deliverableId === '')\n\t\t\t\t.map(({ file }) => {\n\t\t\t\t\treturn new Promise((resolve: (presignedUpload: PresignedUploadModel) => void, reject) => {\n\t\t\t\t\t\tdocumentUploader(\n\t\t\t\t\t\t\tfile,\n\t\t\t\t\t\t\tdeliverablesService.getPresignedDocumentUpload({\n\t\t\t\t\t\t\t\tdeliverableId: deliverableIdResponse,\n\t\t\t\t\t\t\t\tcontentType: file.type,\n\t\t\t\t\t\t\t\ttitle: file.name,\n\t\t\t\t\t\t\t}).fetch\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\t.onPresignedUploadObtained(() => {})\n\t\t\t\t\t\t\t.onComplete(async (presignedUpload) => {\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\tawait deliverablesService\n\t\t\t\t\t\t\t\t\t\t.updateDeliverableDocumentUploadedStatus({\n\t\t\t\t\t\t\t\t\t\t\tdocumentUploadStatusId: DOCUMENT_UPLOAD_STATUS_ID.COMPLETE,\n\t\t\t\t\t\t\t\t\t\t\tdeliverableId: deliverableIdResponse,\n\t\t\t\t\t\t\t\t\t\t\tdeliverableDocumentUploadedId: presignedUpload.documentId,\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t.fetch();\n\n\t\t\t\t\t\t\t\t\treturn resolve(presignedUpload);\n\t\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\t\treturn reject(error);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.onError((error) => {\n\t\t\t\t\t\t\t\thandleError(error);\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.start();\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\tawait Promise.all(presignedUploadPromises);\n\n\t\t\thistory.push('/client-management/deliverables');\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t\tsetIsSaving(false);\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t {\n\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\tentries: selectedEntries,\n\t\t\t\t\t}));\n\t\t\t\t\tsetDeliverablesEntryModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t\tshow={deliverablesEntryModalIsOpen}\n\t\t\t\tonHide={() => {\n\t\t\t\t\tsetDeliverablesEntryModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\n\t\t\t {\n\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\tdocuments: selectedDocuments,\n\t\t\t\t\t}));\n\t\t\t\t\tsetDeliverablesDocumentModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t\tshow={deliverablesDocumentModalIsOpen}\n\t\t\t\tonHide={() => {\n\t\t\t\t\tsetDeliverablesDocumentModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\n\t\t\t {\n\t\t\t\t\tconst formatedSelectedContacts = selectedContacts.map((cont) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...cont,\n\t\t\t\t\t\t\tdeliveredDate: null,\n\t\t\t\t\t\t};\n\t\t\t\t\t});\n\n\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\tcontacts: formatedSelectedContacts,\n\t\t\t\t\t}));\n\t\t\t\t\tsetDeliverablesExistingModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t\tshow={deliverablesExistingModalIsOpen}\n\t\t\t\tonHide={() => {\n\t\t\t\t\tsetDeliverablesExistingModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\n\t\t\t {\n\t\t\t\t\tconst formatedSelectedContacts = selectedContacts.map((cont) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...cont,\n\t\t\t\t\t\t\tdeliveredDate: null,\n\t\t\t\t\t\t};\n\t\t\t\t\t});\n\n\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\tcontacts: previousValue.contacts\n\t\t\t\t\t\t\t.concat(formatedSelectedContacts)\n\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t(account, index, self) =>\n\t\t\t\t\t\t\t\t\tindex === self.findIndex((a) => a.accountId === account.accountId)\n\t\t\t\t\t\t\t),\n\t\t\t\t\t}));\n\n\t\t\t\t\tsetDeliverablesContactsModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t\tshow={deliverablesContactsModalIsOpen}\n\t\t\t\tonHide={() => {\n\t\t\t\t\tsetDeliverablesContactsModalIsOpen(false);\n\t\t\t\t}}\n\t\t\t/>\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tHackett Connect - Client Management - Deliverables -{' '}\n\t\t\t\t\t\t{deliverableId ? 'Edit Deliverable' : 'New Deliverable'}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tDeliverables /{' '}\n\t\t\t\t\t\t\t{deliverableId ? 'Edit Deliverable' : 'New Deliverable'}\n\t\t\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t{deliverableId\n\t\t\t\t\t\t\t\t\t\t\t\t? `Edit \"${deliverableForm.title}\"`\n\t\t\t\t\t\t\t\t\t\t\t\t: 'Create a new Deliverable'}\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\thistory.goBack();\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{deliverableId && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tDelete\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tSave\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    Details

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tTitle\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\ttitle: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tType\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\ttype: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{deliverableTypeOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tHours\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tlet value: number;\n\t\t\t\t\t\t\t\t\t\t\t\tconst converted = parseFloat(currentTarget.value);\n\t\t\t\t\t\t\t\t\t\t\t\tlet decimal = converted - parseInt(String(converted), 10);\n\t\t\t\t\t\t\t\t\t\t\t\tdecimal = Math.round(decimal * 10);\n\t\t\t\t\t\t\t\t\t\t\t\tif (decimal === 5) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue = parseInt(String(converted), 10) + 0.5;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tif (decimal < 3 || decimal > 7) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue = Math.round(converted);\n\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue = parseInt(String(converted), 10) + 0.5;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\thours: value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tDelivery Date\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tif (!date) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\tdeliveryDate: date,\n\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTopic{' '}\n\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\ttopic: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{topicOptions\n\t\t\t\t\t\t\t\t\t\t\t.slice(0)\n\t\t\t\t\t\t\t\t\t\t\t.reverse()\n\t\t\t\t\t\t\t\t\t\t\t.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    Programs

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tAdvisory Programs \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\tprograms: selected as FormOption[],\n\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\toptions={programOptions}\n\t\t\t\t\t\t\t\t\t\tplaceholder=\"Select programs...\"\n\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    Description

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tDescription\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\tdescription: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tHackett Client Portal Calendar Entries ({deliverableForm.entries.length}){' '}\n\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetDeliverablesEntryModalIsOpen(true);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tAdd Entry\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{deliverableForm.entries.map((entry) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t handleEntryRemove(entry.eventId)}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tLink Site Content ({deliverableForm.documents.length}){' '}\n\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{navigationConfig?.allowAdminAccess && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tCreate new document\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetDeliverablesDocumentModalIsOpen(true);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tAdd Document\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{deliverableForm.documents.map((document) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t handleDocumentRemove(document.documentId)}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tUpload Custom Content ({documentUploaded.length}){' '}\n\t\t\t\t\t\t\t\t\t\t- Optional\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{documentUploaded.length > 0 &&\n\t\t\t\t\t\t\t\t\t\t\tdocumentUploaded.map((document) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleDocumentUploadedRemove(document);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    Contacts ({deliverableForm.contacts.length})

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{navigationConfig?.allowAdminAccess && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tCreate new contact\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetDeliverablesExistingModalIsOpen(true);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tSelect existing contacts\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\tImport from file\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t{contactsRowData.length > 0 && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t!window.confirm('Are you sure you want to remove all contacts?')\n\t\t\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetDeliverableForm((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontacts: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tRemove All Contacts\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\thidePagination={true}\n\t\t\t\t\t\t\t\t\t\t\thideColumnControls={true}\n\t\t\t\t\t\t\t\t\t\t\ttableHeaderRowRenderer={() => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst tableHeaderProps = {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tkey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortable: false,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortKey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\ttableBodyRowRenderer={(data) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.COMPANY:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.clientName ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.NAME:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.name ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.TITLE:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.title ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.EMAIL:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.emailAddress ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.PHONE:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.mobileNumber ?? '-'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.DELIVERED:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleContactDateChange(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdate ? date : null\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase CONTACTS_TABLE_COLUMN_IDS.ACTIONS:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleContactDeleteButtonClick(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t-\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\thistory.goBack();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{deliverableId && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tDelete\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tSave\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { useCallback, useState } from 'react';\nimport { Row, Col, Container } from 'react-bootstrap';\nimport classNames from 'classnames';\n\nimport { ACTIVITY_TYPE_ID, BannerMessage, EventModel, RecentActivityModel, Recommendation } from '@/lib/models';\nimport { accountService, activityService, eventsService, recommendationsService } from '@/lib/services';\nimport { createUseThemedStyles } from '@/hooks';\nimport {\n\tAsyncPage,\n\tCarousel,\n\tColorBlockContainer,\n\tDashboardRecentlyViewed,\n\tDashboardRecommendation,\n\tGetHelp,\n\tUpcomingEventLink,\n\tWelcomeBanner,\n} from '@/components';\nimport { mediaQueries } from '@/jss';\nimport { Helmet } from 'react-helmet';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\teventsColumn: {\n\t\tmarginBottom: 30,\n\t\t[mediaQueries.xl]: {\n\t\t\tpaddingRight: '10%',\n\t\t\tborderRight: `1px solid ${theme.colors.gray400}`,\n\t\t},\n\t},\n\tsupportColumn: {\n\t\t[mediaQueries.xl]: {\n\t\t\tpaddingLeft: '10%',\n\t\t},\n\t},\n}));\n\nexport const Dashboard = () => {\n\tconst classes = useStyles();\n\n\tconst [bannerMessages, setBannerMessages] = useState([]);\n\tconst [recommendations, setRecommendations] = useState([]);\n\tconst [recentlyViewedContent, setRecentlyViewedContent] = useState([]);\n\tconst [upcomingEvents, setUpcomingEvents] = useState([]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst [bannerMessagesResponse, recommendationsResponse, activityResponse, eventsResponse] = await Promise.all([\n\t\t\taccountService.getBannerMessages().fetch(),\n\t\t\trecommendationsService.getRecommendations().fetch(),\n\t\t\tactivityService.getRecentlyViewed({ limit: 6 }).fetch(),\n\t\t\teventsService.getUpcomingEvents({ size: 4, page: '0' }).fetch(),\n\t\t]);\n\n\t\tsetBannerMessages(bannerMessagesResponse.bannerMessages);\n\t\tsetRecommendations(recommendationsResponse.recommendedContent);\n\t\tsetRecentlyViewedContent(activityResponse.recentActivities);\n\t\tsetUpcomingEvents(eventsResponse.events);\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\tHackett Connect\n\t\t\t{bannerMessages.length > 0 && (\n\t\t\t\t\n\t\t\t)}\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    Our recommendations for you

    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{recommendations.length <= 0 && (\n\t\t\t\t\t\t\t

    There is no recommended content.

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{recommendations.length > 0 && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{recommendations.map((recommendation, index) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t{recentlyViewedContent.length > 0 && (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    Your previously viewed content

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{recentlyViewedContent.map((content) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    Upcoming Events

    \n\t\t\t\t\t\t{upcomingEvents.length <= 0 &&

    There are no upcoming events.

    }\n\t\t\t\t\t\t{upcomingEvents.map((event, eventIndex) => {\n\t\t\t\t\t\t\tconst isLast = upcomingEvents.length - 1 === eventIndex;\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    Support

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useState } from 'react';\nimport { Link, useHistory, useParams } from 'react-router-dom';\nimport { Badge, Card, Col, Container, Row, Form } from 'react-bootstrap';\n\nimport { InquiryModel, INQUIRY_STATUS_ID } from '@/lib/models';\nimport { inquiryService } from '@/lib/services';\nimport { useAlert, useHandleError, useNavigationConfig } from '@/hooks';\nimport { AsyncPage, AttachmentDropdown, LoadingButton, Wysiwyg } from '@/components';\n\nimport { ReactComponent as TrashIcon } from '@/assets/icons/icon-trash.svg';\nimport { Helmet } from 'react-helmet';\n\nexport const InquiryDetailReadOnly = () => {\n\tconst history = useHistory();\n\tconst { showAlert } = useAlert();\n\tconst handleError = useHandleError();\n\tconst { navigationConfig } = useNavigationConfig();\n\n\tconst { inquiryId } = useParams<{ inquiryId: string }>();\n\tconst [inquiry, setInquiry] = useState();\n\tconst [isSaving, setIsSaving] = useState(false);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await inquiryService.getInquiryDetails(inquiryId).fetch();\n\t\tsetInquiry(response.inquiry);\n\t}, [inquiryId]);\n\n\tconst handleResendEmailButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsSaving(true);\n\n\t\t\tif (!inquiry) {\n\t\t\t\tthrow new Error('inquiry is undefined.');\n\t\t\t}\n\n\t\t\tawait inquiryService.resendEmail(inquiry?.inquiryId).fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Email resent.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsSaving(false);\n\t\t}\n\t}, [handleError, inquiry, showAlert]);\n\n\tconst handleReopenInquiryButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tif (!inquiry) {\n\t\t\t\tthrow new Error('Inquiry not found.');\n\t\t\t}\n\n\t\t\tsetIsSaving(true);\n\n\t\t\tconst response = await inquiryService\n\t\t\t\t.updateInquiry({\n\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\tinquiryAccountIds: inquiry.inquiryAccounts.map((a) => a.accountId),\n\t\t\t\t\tinquiryStatus: INQUIRY_STATUS_ID.IN_PROGRESS,\n\t\t\t\t\tuploadedDocumentIds: inquiry.documents.map((d) => d.documentId),\n\t\t\t\t\ttopicIds: inquiry.topicsList.map((t) => t.id),\n\t\t\t\t\tnotes: inquiry.notes,\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Inquiry reopened.

    ;\n\t\t\t\t},\n\t\t\t});\n\n\t\t\thistory.replace(`/client-management/inquiries/${response.inquiry.inquiryId}/edit`);\n\t\t} catch (error) {\n\t\t\tsetIsSaving(false);\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError, history, inquiry, showAlert]);\n\n\tconst handleDeleteButtonClick = useCallback(async () => {\n\t\tif (!window.confirm('All the information in this inquiry will be deleted. Are you sure you want to proceed?')) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSaving(true);\n\n\t\t\tif (!inquiry) {\n\t\t\t\tthrow new Error('inquiry is undefined.');\n\t\t\t}\n\n\t\t\tawait inquiryService.deleteInquiry(inquiry.inquiryId).fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Inquiry deleted.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t\thistory.push('/client-management/inquiries');\n\t\t} catch (error) {\n\t\t\tsetIsSaving(false);\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError, history, inquiry, showAlert]);\n\n\tconst statusBadge = () => {\n\t\treturn (\n\t\t\t\n\t\t\t\tInactive\n\t\t\t\n\t\t);\n\t};\n\n\tconst handlePostComment = useCallback(async () => {\n\t\ttry {\n\t\t\tif (!inquiry) {\n\t\t\t\tthrow new Error('Inquiry not found.');\n\t\t\t}\n\t\t\tsetIsSaving(true);\n\t\t\tconst response = await inquiryService\n\t\t\t\t.postNotesRequester({\n\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\tinquiryAccountIds: inquiry.inquiryAccounts.map((a) => a.accountId),\n\t\t\t\t\tinquiryStatus: inquiry.inquiryStatus,\n\t\t\t\t\tuploadedDocumentIds: inquiry.documents.map((d) => d.documentId),\n\t\t\t\t\ttopicIds: inquiry.topicsList.map((t) => t.id),\n\t\t\t\t\tnotes: inquiry.notes,\n\t\t\t\t\trequesterNotes: inquiry.requesterNotes,\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Notes posted.

    ;\n\t\t\t\t},\n\t\t\t});\n\n\t\t\thistory.replace(`/client-management/inquiries/${response.inquiry.inquiryId}`);\n\t\t} catch (error) {\n\t\t\tsetIsSaving(false);\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError, history, inquiry, showAlert]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Client Management - Inquiries - Inquiry Details\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{navigationConfig?.allowClientManagement ? (\n\t\t\t\t\t\t\tInquiries /\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\tInquiries /\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    {inquiry?.inquiryTitle}

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {inquiry?.inquiryDescription}

    \n\t\t\t\t\t\t\t

    {inquiry?.inquiryStatusDescription}

    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t{navigationConfig?.allowClientManagement && {inquiry?.client.name}}\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t

    Submitted {inquiry?.createdDescription}

    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t{inquiry?.shouldShowNotes && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    {inquiry?.shouldShowNotes && Notes}

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tRecipients\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t{inquiry?.inquiryAccounts\n\t\t\t\t\t\t\t\t\t.map((recipient) => {\n\t\t\t\t\t\t\t\t\t\treturn `${recipient.name} (${recipient.emailAddress})`;\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t.join(', ')}\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t{inquiry?.inquiryStatus === INQUIRY_STATUS_ID.CLOSED && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t{inquiry?.advisorAccount.name}, Inquiry Advisor\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t

    {inquiry?.responseSubmittedDescription}

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{inquiry.documents.map((document) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tNotes (from Requester) \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{!inquiry?.requesterNotes && !navigationConfig?.allowClientManagement && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tinquiry.requesterNotes = content;\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\treadOnly={isSaving}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tPost\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{inquiry?.requesterNotes && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t\t{inquiry?.advisorBookingsUrl && !navigationConfig?.allowClientManagement && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tSchedule a call\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{navigationConfig?.allowClientManagement && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tResend Email\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tReopen Inquiry\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tDelete\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tIn this conversation\n\t\t\t\t\t\t\t\t{inquiry?.client && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tClient\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t

    {inquiry.client.name}

    \n\t\t\t\t\t\t\t\t\t\t

    Submitted {inquiry.createdDescription}

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{inquiry?.requestingAccount && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tRequester\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    {inquiry?.requestingAccount.name}

    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t{inquiry?.requestingAccount.deleted ? statusBadge() : null}\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{inquiry?.advisorAccount && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\tAdvisor\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t

    {inquiry.advisorAccount.name}

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{inquiry?.accountManagerAccount && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\tAccount Manager\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t

    {inquiry.accountManagerAccount.name}

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","var _path, _path2, _path3, _path4, _path5, _path6;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgHackettResearchReportsIcon(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 1500,\n height: 1500,\n viewBox: \"0 0 1500 1500\",\n fill: \"currentColor\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1030.18,766.54H469.83c-8.69,0-15.74,7.05-15.74,15.74s7.05,15.74,15.74,15.74h560.33c8.69,0,15.74-7.05,15.74-15.74s-7.03-15.74-15.72-15.74Z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M925.58,921.96c8.69,0,15.74-7.05,15.74-15.74s-7.05-15.74-15.74-15.74h-351.18c-8.69,0-15.74,7.05-15.74,15.74s7.05,15.74,15.74,15.74h351.18Z\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1005.65,1014.45h-511.3c-8.69,0-15.74,7.05-15.74,15.74s7.05,15.74,15.74,15.74h511.28c8.69,0,15.74-7.05,15.74-15.74s-7.03-15.74-15.72-15.74Z\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M868.79,1138.39h-237.56c-8.69,0-15.74,7.05-15.74,15.74s7.05,15.74,15.74,15.74h237.56c8.69,0,15.74-7.05,15.74-15.74s-7.05-15.74-15.74-15.74Z\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M750,696.32c102.65,0,186.16-83.51,186.16-186.18,0-25.41-5.14-49.64-14.44-71.74-.04-.1-.02-.23-.06-.36-.04-.06-.1-.1-.13-.19-28.28-66.85-94.53-113.87-171.55-113.87-102.67,0-186.18,83.51-186.18,186.16.02,102.67,83.53,186.18,186.2,186.18ZM885.76,436.07l-120.02,50.4v-130.22c51.81,5.27,96.1,36.19,120.02,79.82ZM734.27,356.26v153.88h0c0,.76.34,1.41.44,2.14.19,1.32.25,2.66.8,3.97h0c.02.06.08.1.1.17.73,1.7,1.76,3.13,2.98,4.41.36.38.76.67,1.15,1.01,1.01.88,2.12,1.64,3.32,2.22.5.25.97.5,1.51.71,1.74.65,3.55,1.09,5.41,1.09h.02c2.04,0,4.09-.4,6.08-1.24h0s.02,0,.02-.02l141.8-59.55c4.36,14.27,6.74,29.4,6.74,45.07,0,85.29-69.39,154.7-154.68,154.7s-154.7-69.41-154.7-154.7c.04-79.96,61.08-145.95,139.01-153.86Z\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1349.05,1079.56l-149.5-409.09V234.85c0-8.69-7.05-15.74-15.74-15.74h-149.18l-39.19-107.28c-1.43-3.92-4.36-7.11-8.14-8.88-3.82-1.76-8.08-1.95-12.04-.5l-319.23,116.66h-339.83c-8.69,0-15.74,7.05-15.74,15.74v114.19l-140.12,51.22c-8.16,3-12.36,12.02-9.38,20.18l149.5,409.16v435.57c0,8.69,7.05,15.74,15.74,15.74h149.18l39.22,107.28c1.43,3.92,4.36,7.11,8.16,8.85,2.1.99,4.36,1.47,6.63,1.47,1.83,0,3.65-.34,5.39-.97l319.18-116.66h339.85c8.69,0,15.74-7.05,15.74-15.74v-114.21l140.14-51.2c3.92-1.43,7.11-4.36,8.85-8.14,1.74-3.78,1.93-8.1.5-12.04ZM971.26,137.43l29.88,81.71h-253.42l223.55-81.71ZM185.92,424.43l114.52-41.86v355.29l-114.52-313.43ZM528.75,1362.59l-29.84-81.71h253.4l-223.57,81.71ZM331.93,1249.43V250.59h691.56c.06,0,.1.02.15.02s.08-.02.13-.02h144.32v998.82H331.93v.02ZM1199.55,1117.45v-355.34l114.54,313.45-114.54,41.88Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgHackettResearchReportsIcon);\nexport default __webpack_public_path__ + \"static/media/hackett-research-reports-icon.281b60ee.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _path4, _path5, _path6, _rect, _rect2, _rect3, _path7, _rect4, _rect5, _rect6, _rect7, _rect8, _rect9, _rect10, _path8, _path9, _path10, _rect11;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgHackettCustomContentIcon(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 1500,\n height: 1500,\n viewBox: \"0 0 1500 1500\",\n fill: \"currentColor\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M245.28,1049.06c-23.58,0-41.51,18.87-41.51,41.51s18.87,41.51,41.51,41.51,41.51-18.87,41.51-41.51-18.87-41.51-41.51-41.51ZM245.28,1114.15c-12.26,0-22.64-10.38-22.64-22.64,0-13.21,10.38-22.64,22.64-22.64s22.64,10.38,22.64,22.64-10.38,22.64-22.64,22.64Z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M360.38,1049.06c-23.58,0-41.51,18.87-41.51,41.51s18.87,41.51,41.51,41.51,41.51-18.87,41.51-41.51-17.92-41.51-41.51-41.51ZM360.38,1114.15c-12.26,0-22.64-10.38-22.64-22.64,0-13.21,10.38-22.64,22.64-22.64s22.64,10.38,22.64,22.64-9.43,22.64-22.64,22.64Z\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M476.42,1049.06c-23.58,0-41.51,18.87-41.51,41.51s18.87,41.51,41.51,41.51,41.51-18.87,41.51-41.51-18.87-41.51-41.51-41.51ZM476.42,1114.15c-12.26,0-22.64-10.38-22.64-22.64,0-13.21,10.38-22.64,22.64-22.64s22.64,10.38,22.64,22.64-10.38,22.64-22.64,22.64Z\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1350,396.23c0-26.42-21.7-48.11-48.11-48.11h-141.51v-191.51c0-5.66-3.77-9.43-9.43-9.43H349.06c-5.66,0-9.43,3.77-9.43,9.43v191.51h-141.51c-26.42,0-48.11,21.7-48.11,48.11v744.34c0,29.25,23.58,52.83,52.83,52.83h383.96v140.57h-80.19v18.87h484.91v-18.87h-86.79v-140.57h392.45c29.25,0,52.83-23.58,52.83-52.83V396.23ZM606.6,1333.96v-140.57h280.19v140.57h-280.19ZM358.49,287.74h783.02v720.75H358.49V287.74ZM1300.94,366.98c16.04,0,29.25,13.21,29.25,29.25v612.26h-170.75V366.98s141.51,0,141.51,0ZM358.49,166.04h783.02v102.83H358.49v-102.83ZM198.11,366.98h141.51v641.51h-170.75V396.23c0-16.04,13.21-29.25,29.25-29.25ZM1297.17,1174.53H202.83c-18.87,0-33.96-15.09-33.96-33.96v-113.21h1161.32v113.21c.94,18.87-15.09,33.96-33.02,33.96Z\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1066.98,351.89h-334.91c-5.66,0-9.43,3.77-9.43,9.43v139.62c0,5.66,3.77,9.43,9.43,9.43h334.91c5.66,0,9.43-3.77,9.43-9.43v-139.62c0-4.72-4.72-9.43-9.43-9.43ZM1057.55,491.51h-316.04v-120.75h316.04v120.75Z\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1066.98,546.23h-334.91c-5.66,0-9.43,3.77-9.43,9.43v139.62c0,5.66,3.77,9.43,9.43,9.43h334.91c5.66,0,9.43-3.77,9.43-9.43v-139.62c0-4.72-4.72-9.43-9.43-9.43ZM741.51,685.85v-120.75h316.04v120.75h-316.04Z\"\n })), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: 732.08,\n y: 766.04,\n width: 334.91,\n height: 18.87\n })), _rect2 || (_rect2 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 732.08,\n y: 847.17,\n width: 334.91,\n height: 18.87\n })), _rect3 || (_rect3 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 732.08,\n y: 927.36,\n width: 334.91,\n height: 18.87\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M659.43,351.89h-226.42c-5.66,0-9.43,3.77-9.43,9.43,4.72,588.68-9.43,584.91,9.43,584.91h226.42c5.66,0,9.43-3.77,9.43-9.43V361.32c0-4.72-4.72-9.43-9.43-9.43ZM650,927.36h-207.55V370.75h207.55v556.6Z\"\n })), _rect4 || (_rect4 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 475.47,\n y: 423.58,\n width: 140.57,\n height: 18.87\n })), _rect5 || (_rect5 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 475.47,\n y: 496.23,\n width: 140.57,\n height: 18.87\n })), _rect6 || (_rect6 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 475.47,\n y: 567.92,\n width: 140.57,\n height: 18.87\n })), _rect7 || (_rect7 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 475.47,\n y: 639.62,\n width: 140.57,\n height: 18.87\n })), _rect8 || (_rect8 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 475.47,\n y: 711.32,\n width: 140.57,\n height: 18.87\n })), _rect9 || (_rect9 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 475.47,\n y: 783.96,\n width: 140.57,\n height: 18.87\n })), _rect10 || (_rect10 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 475.47,\n y: 855.66,\n width: 140.57,\n height: 18.87\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M452.83,179.25c-20.75,0-37.74,16.98-37.74,37.74s16.98,37.74,37.74,37.74,37.74-16.98,37.74-37.74-16.98-37.74-37.74-37.74ZM452.83,235.85c-10.38,0-18.87-8.49-18.87-18.87s8.49-18.87,18.87-18.87,18.87,8.49,18.87,18.87-8.49,18.87-18.87,18.87Z\"\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M565.09,179.25c-20.75,0-37.74,16.98-37.74,37.74s16.98,37.74,37.74,37.74,37.74-16.98,37.74-37.74-16.98-37.74-37.74-37.74ZM565.09,235.85c-10.38,0-18.87-8.49-18.87-18.87s8.49-18.87,18.87-18.87,18.87,8.49,18.87,18.87-8.49,18.87-18.87,18.87Z\"\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M676.42,179.25c-20.75,0-37.74,16.98-37.74,37.74s16.98,37.74,37.74,37.74,37.74-16.98,37.74-37.74-16.04-37.74-37.74-37.74ZM676.42,235.85c-10.38,0-18.87-8.49-18.87-18.87s8.49-18.87,18.87-18.87,18.87,8.49,18.87,18.87-7.55,18.87-18.87,18.87Z\"\n })), _rect11 || (_rect11 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 763.21,\n y: 207.55,\n width: 312.26,\n height: 18.87\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgHackettCustomContentIcon);\nexport default __webpack_public_path__ + \"static/media/hackett-custom-content-icon.95831efe.svg\";\nexport { ForwardRef as ReactComponent };","var _g;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgLogoHackett(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 190,\n height: 24,\n viewBox: \"0 0 190 24\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\"\n }, /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"8.392 4.294 2.183 9.901 5.213 9.901 8.392 6.334 8.392 4.294\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"8.392 2.215 .706 2.215 .706 9.901 2.14 9.901 8.392 2.297 8.392 2.215\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"8.392 7.982 6.133 9.9 8.392 9.9 8.392 7.982\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"8.369 14.254 8.369 11.258 3.62 15.443 7.929 10.609 5.302 10.609 2.336 13.13 4.583 10.609 .684 10.609 .684 18.294 8.369 18.294 8.369 14.844 6.056 16.851 8.369 14.254\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"13.255 10.609 9.175 14.147 9.175 17.306 15.137 10.609 13.255 10.609\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"9.174 13.351 11.618 10.609 9.174 10.609 9.174 13.351\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"9.174 18.294 16.86 18.294 16.86 10.764 9.174 17.316 9.174 18.294\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"9.134 17.349 9.175 17.316 9.175 17.306 9.134 17.349\"\n }), /*#__PURE__*/React.createElement(\"polygon\", {\n fill: \"#002344\",\n points: \"10.126 0 19.205 0 19.205 9.082 10.126 9.082\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#002344\",\n d: \"M27.1613793 9.2697931C27.1613793 7.86206897 27.1406897 6.45517241 27.1001379 5.04744828 25.6924138 5.04744828 23.8775172 5.12855172 22.7346207 5.27172414 22.7958621 5.06813793 22.8364138 4.84386207 22.8364138 4.61875862 22.8364138 4.41434483 22.7958621 4.21075862 22.7346207 3.98648276 24.4891034 4.04689655 26.2435862 4.08827586 27.9972414 4.08827586 29.7517241 4.08827586 31.5062069 4.04689655 33.2598621 3.98648276 33.1986207 4.21075862 33.158069 4.41434483 33.158069 4.63944828 33.158069 4.84386207 33.1986207 5.06813793 33.2598621 5.27172414 32.1177931 5.12855172 30.3028966 5.04744828 28.8951724 5.04744828 28.8554483 6.45517241 28.833931 7.86206897 28.833931 9.2697931L28.833931 12.7795862C28.833931 14.5324138 28.9150345 16.3084138 28.9969655 18.062069 28.6502069 18 28.3241379 17.9602759 27.9972414 17.9602759 27.672 17.9602759 27.3451034 18 26.9983448 18.062069 27.0802759 16.3084138 27.1613793 14.5324138 27.1613793 12.7795862L27.1613793 9.2697931M34.464 8.49517241C34.464 6.61737931 34.4234483 3.98648276 34.3009655 2.61931034 34.6071724 2.68055172 34.9125517 2.72193103 35.2195862 2.72193103 35.5257931 2.72193103 35.8311724 2.68055172 36.1373793 2.61931034 36.0148966 3.98648276 35.9743448 6.61737931 35.9743448 8.39255172L35.9743448 9.94344828 36.0148966 9.94344828C36.7688276 8.78068966 37.809931 8.1062069 39.2788966 8.1062069 40.7875862 8.1062069 42.5428966 8.84193103 42.5428966 11.6565517 42.5428966 12.8193103 42.4609655 14.0424828 42.4609655 15.4303448 42.4609655 16.3274483 42.4609655 17.184 42.5006897 18.062069 42.1953103 18 41.9304828 17.9602759 41.6449655 17.9602759 41.3594483 17.9602759 41.0929655 18 40.8082759 18.062069 40.8496552 16.5732414 40.9514483 15.0844138 40.9514483 13.5128276L40.9514483 12.2681379C40.9514483 10.2695172 40.0742069 9.16717241 38.7277241 9.16717241 36.8317241 9.16717241 35.9743448 10.3911724 35.9743448 12.5131034 35.9743448 14.064 36.0148966 16.6957241 36.1373793 18.062069 35.8311724 18 35.5257931 17.9602759 35.2195862 17.9602759 34.9125517 17.9602759 34.6071724 18 34.3009655 18.062069 34.4234483 16.6957241 34.464 14.064 34.464 12.1870345L34.464 8.49517241M49.4788966 8.1062069C52.3348966 8.1062069 53.7012414 10.0038621 53.7012414 12.2689655 53.7012414 12.5329655 53.6805517 12.7986207 53.6606897 13.0642759 52.1908966 13.0444138 50.7426207 13.0038621 49.2943448 13.0038621 48.3964138 13.0038621 47.52 13.0444138 46.622069 13.0642759 46.6030345 13.2678621 46.6030345 13.4532414 46.6030345 13.6353103 46.6030345 15.758069 47.8667586 17.4091034 50.1310345 17.4091034 51.2126897 17.4091034 52.4764138 16.7776552 53.1914483 15.9616552L53.2932414 16.0237241 53.1707586 17.0209655C52.353931 17.6747586 51.0289655 18.2656552 49.7644138 18.2656552 46.8273103 18.2656552 44.8071724 16.185931 44.8071724 13.4722759 44.8071724 10.1668966 46.4788966 8.1062069 49.4788966 8.1062069M46.6634483 12.2888276C47.5001379 12.3086897 48.4584828 12.350069 49.3142069 12.350069 50.2121379 12.350069 51.1713103 12.3086897 52.0278621 12.2888276 52.0278621 10.8397241 51.6405517 8.76082759 49.5202759 8.76082759 47.52 8.76082759 46.766069 10.8206897 46.6634483 12.2888276M72.1613793 9.2697931C72.1613793 7.51531034 72.0811034 5.74096552 71.9983448 3.98648276 72.345931 4.04689655 72.672 4.08827586 72.9988966 4.08827586 73.3249655 4.08827586 73.6510345 4.04689655 73.9977931 3.98648276 73.9166897 5.74096552 73.8347586 7.51531034 73.8347586 9.2697931L73.8347586 12.7795862C73.8347586 14.5324138 73.9166897 16.3084138 73.9977931 18.062069 73.6510345 18 73.3249655 17.9602759 72.9988966 17.9602759 72.672 17.9602759 72.345931 18 71.9983448 18.062069 72.0811034 16.3084138 72.1613793 14.5324138 72.1613793 12.7795862L72.1613793 10.944C70.7346207 10.9216552 69.326069 10.9026207 67.8984828 10.9026207 66.4708966 10.9026207 65.0631724 10.9216552 63.6355862 10.944L63.6355862 12.7795862C63.6355862 14.5324138 63.7166897 16.3084138 63.7977931 18.062069 63.4526897 18 63.1249655 17.9602759 62.7988966 17.9602759 62.4736552 17.9602759 62.145931 18 61.7991724 18.062069 61.8802759 16.3084138 61.9622069 14.5324138 61.9622069 12.7795862L61.9622069 9.2697931C61.9622069 7.51531034 61.8802759 5.74096552 61.7991724 3.98648276 62.145931 4.04689655 62.4736552 4.08827586 62.7988966 4.08827586 63.1249655 4.08827586 63.4526897 4.04689655 63.7977931 3.98648276 63.7166897 5.74096552 63.6355862 7.51531034 63.6355862 9.2697931L63.6355862 9.98317241C65.0631724 10.0038621 66.4708966 10.0452414 67.8984828 10.0452414 69.326069 10.0452414 70.7346207 10.0038621 72.1613793 9.98317241L72.1613793 9.2697931M77.5878621 9.28965517C78.8118621 8.37268966 79.7917241 8.1062069 80.8725517 8.1062069 82.8306207 8.1062069 84.1771034 9.31034483 84.1771034 11.126069 84.1771034 12.6562759 84.096 14.1657931 84.096 15.8797241 84.096 16.5517241 84.096 17.3892414 84.8904828 17.3892414 85.0146207 17.3892414 85.1768276 17.3892414 85.3183448 17.3073103L85.3183448 17.7550345C85.0336552 17.8783448 84.5437241 18.0413793 84.014069 18.0413793 83.1368276 18.0413793 82.6882759 17.4703448 82.6063448 16.7768276 81.6273103 17.7550345 80.7906207 18.2664828 79.4035862 18.2664828 78.0372414 18.2664828 76.6907586 17.3073103 76.6907586 15.7572414 76.6907586 14.1244138 77.7922759 13.2471724 79.5674483 12.9624828 82.5252414 12.4932414 82.6262069 12.3302069 82.6262069 11.534069 82.6262069 10.1668966 82.0146207 8.96358621 80.3826207 8.96358621 79.3009655 8.96358621 78.2813793 9.4742069 77.8129655 10.3514483L77.5878621 10.3514483 77.5878621 9.28965517 77.5878621 9.28965517zM82.6262069 12.9211034C81.2184828 13.3903448 78.3624828 13.2471724 78.3624828 15.4717241 78.3624828 16.7569655 79.2405517 17.4082759 80.1384828 17.4082759 81.1787586 17.4082759 82.0758621 16.7371034 82.5451034 15.9815172L82.6262069 12.9211034 82.6262069 12.9211034zM92.0921379 8.10703448C93.5817931 8.10703448 94.8670345 8.53572414 95.3776552 9.00496552 95.1931034 9.41213793 95.0292414 9.86151724 94.9274483 10.3514483L94.7644138 10.3514483C94.3771034 9.65793103 93.4386207 8.76082759 92.1542069 8.76082759 89.6855172 8.76082759 88.6857931 10.6576552 88.6857931 13.1668966 88.6857931 15.9608276 89.9503448 17.4091034 92.2137931 17.4091034 93.2962759 17.4091034 94.56 16.7768276 95.2750345 15.9608276L95.3776552 16.0228966C95.3155862 16.3481379 95.2750345 16.6965517 95.2543448 17.0217931 94.4383448 17.6755862 93.1108966 18.2664828 91.8471724 18.2664828 89.4811034 18.2664828 86.8891034 16.8388966 86.8891034 13.1867586 86.8891034 9.65793103 89.4811034 8.10703448 92.0921379 8.10703448M97.5798621 8.49517241C97.5798621 6.61737931 97.5401379 3.98648276 97.4151724 2.61931034 97.7230345 2.68055172 98.0292414 2.72193103 98.3346207 2.72193103 98.6408276 2.72193103 98.9478621 2.68055172 99.2532414 2.61931034 99.1291034 3.98648276 99.0902069 6.61737931 99.0902069 8.49517241L99.0902069 12.2077241C99.0902069 12.4526897 99.1704828 12.5950345 99.3351724 12.5950345 99.537931 12.5950345 99.8044138 12.3707586 100.129655 12.1249655 100.617931 11.7583448 102.618207 9.75972414 103.881931 8.31144828 104.107862 8.37268966 104.371862 8.41324138 104.658207 8.41324138 104.942897 8.41324138 105.208552 8.37268966 105.679448 8.31144828 103.984552 9.6777931 102.393103 11.0449655 100.986207 12.4113103 102.537931 14.2882759 104.230345 16.185931 105.902897 18.062069 105.434483 18 105.087724 17.9602759 104.740138 17.9602759 104.392552 17.9602759 104.046621 18 103.699034 18.062069 102.516414 16.512 100.559172 14.2262069 99.6 13.2066207 99.518069 13.1048276 99.3947586 13.0038621 99.2929655 13.0038621 99.1704828 13.0038621 99.0902069 13.0849655 99.0902069 13.2471724L99.0902069 14.4711724C99.0902069 15.6753103 99.1291034 16.8587586 99.2532414 18.062069 98.9478621 18 98.6408276 17.9602759 98.3346207 17.9602759 98.0292414 17.9602759 97.7230345 18 97.4151724 18.062069 97.5401379 16.6957241 97.5798621 14.064 97.5798621 12.1870345L97.5798621 8.49517241M111.451862 8.1062069C114.306207 8.1062069 115.673379 10.0038621 115.673379 12.2689655 115.673379 12.5329655 115.654345 12.7986207 115.633655 13.0642759 114.16469 13.0444138 112.717241 13.0038621 111.268966 13.0038621 110.370207 13.0038621 109.492966 13.0444138 108.594207 13.0642759 108.575172 13.2678621 108.575172 13.4532414 108.575172 13.6353103 108.575172 15.758069 109.840552 17.4091034 112.104828 17.4091034 113.185655 17.4091034 114.449379 16.7776552 115.163586 15.9616552L115.267034 16.0237241 115.142069 17.0209655C114.327724 17.6747586 113.001103 18.2656552 111.737379 18.2656552 108.799448 18.2656552 106.780138 16.185931 106.780138 13.4722759 106.780138 10.1668966 108.45269 8.1062069 111.451862 8.1062069M108.634759 12.2888276C109.472276 12.3086897 110.431448 12.350069 111.288828 12.350069 112.185103 12.350069 113.145103 12.3086897 114.001655 12.2888276 114.001655 10.8397241 113.613517 8.76082759 111.493241 8.76082759 109.492966 8.76082759 108.738207 10.8206897 108.634759 12.2888276M119.569655 5.57710345L119.673103 5.57710345C119.591172 6.59834483 119.548966 7.59724138 119.510069 8.59696552 119.794759 8.59696552 120.733241 8.57627586 121.671724 8.53489655 121.651034 8.67806897 121.651034 8.82124138 121.651034 8.96441379 121.651034 9.10675862 121.651034 9.24993103 121.671724 9.39227586 120.95669 9.35255172 119.999172 9.35255172 119.510069 9.35255172 119.467862 9.55531034 119.366897 12.758069 119.366897 14.5324138 119.366897 16.0626207 119.407448 17.6126897 121.018759 17.6126897 121.243034 17.6126897 121.671724 17.5522759 121.935724 17.4711724L121.935724 17.9602759C121.468138 18.1233103 120.876414 18.2664828 120.367448 18.2664828 118.672552 18.2664828 117.856552 17.3073103 117.856552 15.7158621 117.856552 14.2262069 117.979862 12.3914483 117.999724 9.35255172 117.591724 9.35255172 117.142345 9.35255172 116.613517 9.39227586 116.632552 9.22924138 116.653241 9.08606897 116.653241 8.92386207 116.653241 8.78068966 116.632552 8.6582069 116.613517 8.51503448 117.225931 8.55641379 117.673655 8.57627586 117.95669 8.57627586 117.937655 8.0457931 117.918621 7.16855172 117.878069 6.29213793L119.569655 5.57710345M125.241931 5.57710345L125.343724 5.57710345C125.261793 6.59834483 125.222069 7.59724138 125.179862 8.59696552 125.466207 8.59696552 126.403862 8.57627586 127.343172 8.53489655 127.322483 8.67806897 127.322483 8.82124138 127.322483 8.96441379 127.322483 9.10675862 127.322483 9.24993103 127.343172 9.39227586 126.628138 9.35255172 125.669793 9.35255172 125.179862 9.35255172 125.13931 9.55531034 125.037517 12.758069 125.037517 14.5324138 125.037517 16.0626207 125.078069 17.6126897 126.691034 17.6126897 126.91531 17.6126897 127.343172 17.5522759 127.607172 17.4711724L127.607172 17.9602759C127.137931 18.1233103 126.547034 18.2664828 126.037241 18.2664828 124.343172 18.2664828 123.528828 17.3073103 123.528828 15.7158621 123.528828 14.2262069 123.65131 12.3914483 123.670345 9.35255172 123.262345 9.35255172 122.814621 9.35255172 122.284138 9.39227586 122.304828 9.22924138 122.32469 9.08606897 122.32469 8.92386207 122.32469 8.78068966 122.304828 8.6582069 122.284138 8.51503448 122.895724 8.55641379 123.344276 8.57627586 123.630621 8.57627586 123.609931 8.0457931 123.589241 7.16855172 123.54869 6.29213793L125.241931 5.57710345M146.966069 6.47503448C146.130207 5.47613793 144.538759 4.47558621 142.478069 4.47558621 139.092414 4.47558621 136.500414 6.49572414 136.500414 11.0242759 136.500414 15.0223448 138.745655 17.4711724 142.58069 17.4711724 143.743448 17.4711724 145.150345 17.246069 145.84469 16.8182069 145.864552 16.0022069 145.884414 15.1862069 145.884414 14.3503448 145.884414 13.3903448 145.824828 12.4113103 145.782621 11.553931 146.049103 11.616 146.435586 11.6565517 146.762483 11.6565517 147.06869 11.6565517 147.373241 11.6366897 147.639724 11.553931 147.598345 12.1671724 147.557793 13.4929655 147.557793 15.696 147.557793 16.2256552 147.57931 16.7966897 147.57931 17.3470345 146.414069 17.7550345 143.966897 18.3268966 142.377103 18.3268966 137.521655 18.3268966 134.502621 15.7977931 134.502621 11.0242759 134.502621 6.39393103 137.644138 3.72248276 142.478069 3.72248276 145.232276 3.72248276 146.721931 4.39448276 147.679448 4.90344828 147.475862 5.27172414 147.271448 5.96606897 147.211034 6.47503448L146.966069 6.47503448M155.371862 9.98317241C155.227862 9.82013793 154.77931 9.65793103 154.37131 9.65793103 153.067034 9.65793103 152.289103 10.9026207 152.289103 12.4932414 152.289103 16.041931 152.289103 17.1244138 152.371034 18.062069 152.107862 18 151.821517 17.9602759 151.55669 17.9602759 151.271172 17.9602759 151.005517 18 150.698483 18.062069 150.780414 17.0615172 150.780414 15.4717241 150.780414 13.185931L150.780414 12.5329655C150.780414 11.4736552 150.780414 10.065931 150.698483 8.31144828 151.005517 8.37268966 151.271172 8.41324138 151.55669 8.41324138 151.821517 8.41324138 152.107862 8.37268966 152.371034 8.31144828 152.270897 9.28965517 152.270897 9.78124138 152.270897 10.2893793L152.310621 10.310069C153.086897 8.84193103 154.065931 8.10703448 155.003586 8.10703448 155.248552 8.10703448 155.390897 8.12772414 155.657379 8.22951724 155.515034 8.55641379 155.515034 9.33186207 155.515034 9.88137931L155.371862 9.98317241M161.61269 8.10703448C163.978759 8.10703448 166.569931 9.47503448 166.569931 13.1867586 166.569931 16.9001379 163.978759 18.2664828 161.61269 18.2664828 159.246621 18.2664828 156.655448 16.9001379 156.655448 13.1867586 156.655448 9.47503448 159.246621 8.10703448 161.61269 8.10703448M161.61269 17.6126897C164.020138 17.6126897 164.774897 15.4717241 164.774897 13.1867586 164.774897 10.9026207 164.020138 8.76082759 161.61269 8.76082759 159.205241 8.76082759 158.450483 10.9026207 158.450483 13.1867586 158.450483 15.4717241 159.205241 17.6126897 161.61269 17.6126897M168.895448 11.5547586C168.895448 10.5947586 168.875586 9.45268966 168.854069 8.31227586 169.139586 8.37268966 169.447448 8.41406897 169.711448 8.41406897 169.976276 8.41406897 170.261793 8.37268966 170.54731 8.31227586 170.425655 9.90124138 170.345379 11.9826207 170.345379 13.982069 170.345379 15.3897931 170.628414 16.0626207 170.976828 16.449931 171.36331 16.8777931 171.934345 17.2046897 172.729655 17.2046897 173.873379 17.2046897 174.647172 16.6336552 174.994759 15.8995862 175.403586 15.0215172 175.422621 14.8593103 175.422621 11.6565517 175.422621 10.5558621 175.422621 9.29048276 175.383724 8.31227586 175.667586 8.37268966 175.934069 8.41406897 176.239448 8.41406897 176.544828 8.41406897 176.810483 8.37268966 177.07531 8.31227586 176.952828 10.4325517 176.932138 12.350069 176.932138 14.5117241 176.932138 15.7158621 176.952828 16.9183448 177.014069 18.062069 176.750069 18 176.483586 17.9602759 176.220414 17.9602759 175.954759 17.9602759 175.688276 18 175.422621 18.062069 175.462345 17.4703448 175.462345 16.8777931 175.462345 16.3084138L175.422621 16.3084138C174.729931 17.5729655 173.524966 18.2656552 172.239724 18.2656552 170.120276 18.2656552 168.835034 17.0424828 168.835034 14.9197241 168.835034 13.4929655 168.895448 12.5536552 168.895448 11.5547586M179.950345 14.2468966C179.950345 12.3707586 179.909793 9.73986207 179.788138 8.31144828 180.094345 8.37268966 180.400552 8.41324138 180.705931 8.41324138 181.012138 8.41324138 181.318345 8.37268966 181.623724 8.31144828 181.521103 9.024 181.461517 9.65793103 181.461517 10.310069L181.501241 10.310069C181.910897 9.45351724 182.888276 8.10703448 184.948966 8.10703448 187.030345 8.10703448 189.110069 9.61655172 189.110069 13.1255172 189.110069 16.5931034 186.846621 18.2664828 184.704 18.2664828 183.193655 18.2664828 182.13269 17.5522759 181.501241 16.2662069L181.461517 16.2662069 181.461517 17.5522759C181.461517 19.4284138 181.501241 22.0601379 181.623724 23.4264828 181.318345 23.3652414 181.012138 23.3263448 180.705931 23.3263448 180.400552 23.3263448 180.094345 23.3652414 179.788138 23.4264828 179.909793 22.0601379 179.950345 19.4284138 179.950345 17.5522759L179.950345 14.2468966 179.950345 14.2468966zM184.499586 8.96358621C182.296552 8.96358621 181.461517 10.9224828 181.461517 13.2678621 181.461517 16.0626207 182.49931 17.5125517 184.44 17.5125517 186.396414 17.5125517 187.315034 15.5735172 187.315034 13.1048276 187.315034 9.84082759 185.825379 8.96358621 184.499586 8.96358621L184.499586 8.96358621z\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n fill: \"#5B7E90\",\n points: \"8.965 16.842 9.004 16.809 9.004 16.799 8.965 16.842\"\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgLogoHackett);\nexport default __webpack_public_path__ + \"static/media/logo-hackett.94477983.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconArrows(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 64,\n height: 64,\n viewBox: \"0 0 64 64\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.6216 26.2074C10.7315 26.3181 10.6216 26.3181 10.6216 26.2074C10.7315 26.4289 10.8414 26.5396 10.9513 26.6504L11.0612 26.7611C11.1711 26.8719 11.3909 26.9826 11.5008 26.9826C11.6108 26.9826 11.8306 27.0933 11.9405 27.0933C12.0504 27.0933 12.2702 27.0933 12.3801 26.9826L21.5788 24.4441C22.458 24.2226 22.8892 23.3367 22.6694 22.4593C22.4496 21.5733 21.5788 21.0281 20.6995 21.3604L14.5699 23.013C17.7488 16.3941 24.1997 12.203 31.5383 12.203C39.8577 12.203 47.1963 17.7144 49.7073 25.9944C49.9271 26.8804 50.9078 27.3148 51.6772 27.0933C52.5565 26.8719 52.9877 25.8837 52.7679 25.1085C49.8172 15.5081 41.3795 9 31.5299 9C22.9907 9 15.4407 13.8556 11.7122 21.4626L9.08282 15.8404C8.64318 15.0652 7.77236 14.6307 6.89307 15.0652C6.1237 15.5081 5.80243 16.3856 6.1237 17.2715L10.6131 26.2074H10.6216ZM57.8068 45.2889L53.2075 36.2422C53.2075 36.1315 53.0976 36.1315 53.0976 36.0207C52.9877 35.91 52.9877 35.7993 52.8778 35.7993C52.7679 35.7993 52.7679 35.6885 52.658 35.6885C52.548 35.5778 52.4381 35.5778 52.3282 35.5778H51.6688C51.5589 35.5778 51.4489 35.5778 51.339 35.6885H51.2291L42.1404 39.1044C41.2611 39.4367 40.8299 40.3141 41.1512 41.2C41.4809 42.0859 42.3518 42.5204 43.231 42.1967L49.2507 39.9904C46.2916 47.0522 39.511 51.6863 31.8427 51.6863C23.1936 51.6863 15.6436 45.7319 13.4539 37.1281C13.234 36.2422 12.3632 35.697 11.4839 35.9185C10.6047 36.14 10.0636 37.0174 10.2834 37.9033C12.8029 47.9381 21.6718 55 31.7412 55C40.6101 55 48.4898 49.5907 51.9985 41.5407L54.9576 47.163C55.2873 47.7167 55.8369 48.0489 56.378 48.0489C56.5978 48.0489 56.9275 47.9382 57.1474 47.8274C57.9167 47.0522 58.238 46.0641 57.8068 45.2889Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconArrows);\nexport default __webpack_public_path__ + \"static/media/icon-arrows.a8dda6d2.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useState } from 'react';\nimport { Col, Container, Row, Modal, Button, Ratio } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport classNames from 'classnames';\nimport { createUseThemedStyles, useNavigationConfig } from '@/hooks';\nimport { ReactComponent as DwcMatrixIcon } from '@/assets/icons/hackett-dwc-matrix-icon.svg';\nimport { ReactComponent as ResearchReportsIcon } from '@/assets/icons/hackett-research-reports-icon.svg';\nimport { ReactComponent as CustomContentIcon } from '@/assets/icons/hackett-custom-content-icon.svg';\nimport { ReactComponent as HackettLogo } from '@/assets/logos/logo-hackett.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\ticonOuter: {\n\t\twidth: 160,\n\t\theight: 'auto',\n\t\tdisplay: 'block',\n\t\tmargin: '0 auto 8px',\n\t},\n}));\n\nexport const MarketIntelligence = () => {\n\tconst classes = useStyles();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst [showLearnMoreModal, setShowLearnMoreModal] = useState(false);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Market Intelligence\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Market Intelligence for Buyers

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tIn a digital world, it isn't enough for vendors of software and business process\n\t\t\t\t\t\t\t\toutsourcing services to offer a robust feature set, broad market penetration and, in the\n\t\t\t\t\t\t\t\tcase of service providers, relevant skill sets and experience. Buyers like you want\n\t\t\t\t\t\t\t\tevidence of tangible performance improvement and measurable business impact - before you\n\t\t\t\t\t\t\t\tinvest.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tThe Hackett Group's Market Intelligence service supports your software or service vendor\n\t\t\t\t\t\t\t\tselection process and enables Advisory members to self-assess their pre-implementation\n\t\t\t\t\t\t\t\tplanning and post-implementation optimization. Our market intelligence property and\n\t\t\t\t\t\t\t\texpert analysts can help you navigate today's complex technology landscape.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Resources Available in Hackett Connect

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tFeatured Market Intelligence for Buyers' insights are available to you in your member\n\t\t\t\t\t\t\t\tprograms, including:\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tDigital World Class Matrix™ Reports\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tWith in-depth process knowledge and understanding of what it takes to achieve Digital\n\t\t\t\t\t\t\t\tWorld Class™ performance, we measure the degree to which vendors and their software or\n\t\t\t\t\t\t\t\tservice solutions help companies generate return on investment and achieve better\n\t\t\t\t\t\t\t\tbusiness outcomes\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Vendor Profiles

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tProfiles of software and service vendors, including an overview of the company, their\n\t\t\t\t\t\t\t\tvision and product portfolio, key software features, representative clients, and their\n\t\t\t\t\t\t\t\tmajor partners\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tMarket Intelligence Research\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tAccess to Advisory research including spotlight reports of vendor specific software and\n\t\t\t\t\t\t\t\tservice capabilities, market perspectives offering insights on the evolving technology\n\t\t\t\t\t\t\t\tmarket, topical podcasts, webcasts and key takeaways from vendor conferences and events\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetShowLearnMoreModal(true);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\tLearn More\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowLearnMoreModal(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tClose\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React from 'react';\nimport { Container, Row, Col } from 'react-bootstrap';\n\nexport const NoMatch = () => {\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    No Match

    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","var _path, _path2, _path3, _path4, _path5;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconBarchartUp(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 64,\n height: 64,\n viewBox: \"0 0 64 64\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M13.39 56.35H8.11001V46.66H13.39V56.35ZM14.45 44.5H7.06001C6.42001 44.5 6.00001 44.93 6.00001 45.58V57.43C6.00001 58.08 6.42001 58.51 7.06001 58.51H14.45C15.08 58.51 15.51 58.08 15.51 57.43V45.58C15.51 44.93 15.09 44.5 14.45 44.5Z\",\n fill: \"white\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M27.78 56.31H22.22V37.69H27.78V56.31ZM28.89 35.5H21.11C20.44 35.5 20 35.94 20 36.6V57.41C20 58.07 20.44 58.51 21.11 58.51H28.89C29.56 58.51 30 58.07 30 57.41V36.6C30 35.94 29.56 35.5 28.89 35.5Z\",\n fill: \"white\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M42.28 56.33H36.72V29.17H42.28V56.33ZM43.39 27H35.61C34.94 27 34.5 27.43 34.5 28.09V57.42C34.5 58.07 34.94 58.51 35.61 58.51H43.39C44.06 58.51 44.5 58.08 44.5 57.42V28.09C44.5 27.44 44.06 27 43.39 27Z\",\n fill: \"white\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M56.28 56.31H50.72V20.19H56.28V56.31ZM57.39 18H49.61C48.94 18 48.5 18.44 48.5 19.09V57.4C48.5 58.06 48.94 58.49 49.61 58.49H57.39C58.06 58.49 58.5 58.05 58.5 57.4V19.09C58.5 18.43 58.06 18 57.39 18Z\",\n fill: \"white\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M45.21 8.63L35.68 6.02C35.13 5.91 34.48 6.24 34.37 6.78C34.26 7.32 34.59 7.98 35.14 8.08L42.15 10.04L6.54001 30.37C5.99001 30.7 5.88001 31.35 6.10001 31.89C6.54001 32.54 6.98001 32.65 7.63001 32.32L43.23 11.89L41.37 18.85C41.26 19.39 41.59 20.05 42.14 20.15C42.8 20.26 43.24 19.93 43.45 19.39L45.97 9.93C46.08 9.17 45.86 8.84 45.2 8.63H45.21Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconBarchartUp);\nexport default __webpack_public_path__ + \"static/media/icon-barchart-up.a3a1fbf7.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _path4, _path5;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconRocket(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 64,\n height: 64,\n viewBox: \"0 0 64 64\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M26.5053 25.2211C26.5053 22.288 28.9684 19.9158 32 19.9158C35.0316 19.9158 37.4947 22.288 37.4947 25.2211C37.4947 28.1541 35.0316 30.5263 32 30.5263C28.9684 30.5263 26.5053 28.1541 26.5053 25.2211ZM28.3394 25.2059C28.3394 27.1613 29.9764 28.7453 32 28.7453C34.0236 28.7453 35.6606 27.1613 35.6606 25.2059C35.6606 23.2505 34.0236 21.6665 32 21.6665C29.9764 21.6665 28.3394 23.2505 28.3394 25.2059Z\",\n fill: \"white\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M42.8 30.8901V27.6994C42.8 12.7764 32 4 32 4C32 4 21.2 12.7764 21.2 27.6918V30.8825C16.7512 33.3457 14 37.984 14 43.1225V52.7705L21.2 49.1554V54.4C21.2 54.4 26.2021 52.2931 32 52.2931C38.2072 52.2931 42.8 54.4 42.8 54.4V49.1554L50 52.7705V43.1225C49.9924 37.984 47.2488 33.3533 42.8 30.8901ZM48.2038 49.8451L42.8076 47.1394V32.9971C46.1726 35.2404 48.2038 38.9996 48.2038 43.1377V49.8451ZM41.0038 51.8611C38.3891 51.0274 35.3423 50.4665 32 50.4665C28.9381 50.4665 25.9141 50.9288 23.0038 51.8611V27.6918C23.0038 23.9857 23.7086 20.3629 25.0349 16.9676H38.9726C40.2838 20.3478 41.0038 23.9857 41.0038 27.6918V51.8611ZM32 6.46316C34.592 8.97937 36.6838 11.9427 38.192 15.1714H25.808C27.3238 11.9352 29.408 8.97179 32 6.46316ZM21.2 47.1394L15.8038 49.8451V43.1225C15.8038 38.9844 17.8349 35.2253 21.2 32.9819V47.1394Z\",\n fill: \"white\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M31.0526 53.2632V58.5684H32.9474V53.2632H31.0526Z\",\n fill: \"white\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M34.8421 55.1579H36.3579V60.4632H34.8421V55.1579Z\",\n fill: \"white\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29.1579 55.1579H27.2632V60.4632H29.1579V55.1579Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconRocket);\nexport default __webpack_public_path__ + \"static/media/icon-rocket.dc156edf.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconShield(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 64,\n height: 64,\n viewBox: \"0 0 64 64\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M32.3778 6.47327L51.4259 13.4033C51.8301 13.5552 52.1143 13.9423 52.1143 14.383V35.143C52.1143 39.9955 49.3553 44.0256 45.6132 47.5633C42.4804 50.532 38.5926 53.2394 34.8043 55.8776C34.0719 56.3877 33.3431 56.8952 32.6243 57.4015C32.2561 57.6663 31.7436 57.6662 31.3755 57.4013C30.6285 56.8738 29.8709 56.3452 29.1095 55.814C25.3486 53.1902 21.4959 50.5024 18.387 47.5634C14.6449 44.0258 11.8857 39.9955 11.8857 35.143V14.3746C11.8857 13.9406 12.1556 13.5469 12.5786 13.3933L31.623 6.47606C31.6634 6.45855 31.7044 6.44499 31.7221 6.43916C31.738 6.43392 31.7523 6.42941 31.7625 6.42624L31.7751 6.42237L31.779 6.42122L31.7802 6.42086L31.8246 6.40765L31.8701 6.40418C32.0179 6.39292 32.1972 6.40098 32.3778 6.47327ZM14.0035 15.1041V35.143C14.0035 39.1844 16.2922 42.6893 19.8442 46.0584C22.7793 48.8247 26.5069 51.4183 30.2429 54.0178C30.8308 54.4269 31.4189 54.8361 32.0042 55.2461C32.6165 54.8168 33.2317 54.3888 33.8463 53.9612C37.5616 51.3763 41.2565 48.8057 44.164 46.0587C47.7162 42.6895 50.005 39.1845 50.005 35.143V15.1041L32.0043 8.57L14.0035 15.1041Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconShield);\nexport default __webpack_public_path__ + \"static/media/icon-shield.fb467aa5.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconSignpost(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 64,\n height: 64,\n viewBox: \"0 0 64 64\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M38.3634 29.1657L36.2972 33.6914C36.1966 33.9017 36.1966 34.1486 36.2972 34.368L38.3634 38.8937H15.488L12.7086 34.0297L15.488 29.1657C25.7097 29.1657 31.5794 29.1657 38.3634 29.1657ZM33.5909 23.2229V27.5383H29.952V23.2229H33.5909ZM25.1794 21.6046L27.2457 17.088C27.3463 16.8777 27.3463 16.6309 27.2457 16.4114L25.1794 11.8857H48.0549L50.8252 16.7497L48.0549 21.6046H25.1794ZM29.952 7.104H33.5909V10.2674H29.952V7.104ZM33.5909 57.344H29.952V40.5029H33.5909V57.344ZM15.0217 27.5474C14.7291 27.5474 14.464 27.7029 14.3177 27.9589L11.0811 33.6274C10.9349 33.8743 10.9349 34.1851 11.0811 34.432L14.3177 40.1006C14.464 40.3566 14.7291 40.512 15.0217 40.512H28.3337V57.3531C28.3337 58.2491 29.056 58.9714 29.952 58.9714H33.5909C34.4869 58.9714 35.2092 58.24 35.2092 57.3531V40.512H39.616C39.616 40.512 39.6252 40.512 39.6343 40.512C40.0823 40.512 40.448 40.1463 40.448 39.6983C40.448 39.5246 40.3932 39.36 40.3017 39.2229L37.9246 34.0206L40.3566 28.6811C40.4754 28.4343 40.448 28.1417 40.3017 27.904C40.1554 27.6754 39.8994 27.5291 39.616 27.5291H35.2092V23.2137H48.5212C48.8137 23.2137 49.0789 23.0583 49.2252 22.8023L52.4617 17.1337C52.608 16.8869 52.608 16.576 52.4617 16.3291L49.2252 10.6606C49.0789 10.4046 48.8137 10.2491 48.5212 10.2491H35.2092V7.104C35.2092 6.208 34.4869 5.48572 33.5909 5.48572H29.952C29.056 5.48572 28.3337 6.21715 28.3337 7.104V10.2674H23.9269C23.6526 10.2674 23.3966 10.4046 23.2412 10.6423C23.0949 10.8709 23.0674 11.1634 23.1863 11.4194L25.6183 16.7589L23.1863 22.0891C23.0674 22.336 23.0949 22.6286 23.2412 22.8663C23.3874 23.0949 23.6434 23.2411 23.9269 23.2411H28.3337V27.5566H15.0217V27.5474Z\",\n fill: \"white\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconSignpost);\nexport default __webpack_public_path__ + \"static/media/icon-signpost.13b74f2b.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgIconStarLarge(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 65,\n height: 64,\n viewBox: \"0 0 65 64\",\n fill: \"currentColor\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M42.9444 20.2444L59.1778 22.6111C62.0889 23.0333 63.2555 26.6222 61.1444 28.6778L49.4 40.1222L52.1778 56.2889C52.6778 59.2111 49.6 61.3889 47.0222 60.0333L32.5 52.4L17.9778 60.0333C15.4 61.4 12.3222 59.2111 12.8222 56.2889L15.6 40.1222L3.85554 28.6778C1.74443 26.6222 2.9111 23.0333 5.82221 22.6111L22.0555 20.2444L29.3111 5.53332C30.6222 2.87777 34.3889 2.9111 35.6889 5.53332L42.9444 20.2444Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgIconStarLarge);\nexport default __webpack_public_path__ + \"static/media/icon-star-large.c6cf10cf.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useCallback, useMemo, useState } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { Button, Col, Container, Modal, Row } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport classNames from 'classnames';\n\nimport { createUseThemedStyles, useAlert, useHandleError } from '@/hooks';\nimport { BundleModel, BundleProgramModel, PROGRAM_ACCESS } from '@/lib/models';\nimport { bundleService, salesLeadService } from '@/lib/services';\nimport { AsyncPage } from '@/components';\nimport { mediaQueries } from '@/jss';\n\nimport { ReactComponent as StarIcon } from '@/assets/icons/icon-star.svg';\n\nimport { ReactComponent as ArrowsIcon } from '@/assets/icons/icon-arrows.svg';\nimport { ReactComponent as BarchartIcon } from '@/assets/icons/icon-barchart-up.svg';\nimport { ReactComponent as RocketIcon } from '@/assets/icons/icon-rocket.svg';\nimport { ReactComponent as ShieldIcon } from '@/assets/icons/icon-shield.svg';\nimport { ReactComponent as SignpostIcon } from '@/assets/icons/icon-signpost.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\toneProgramColumn: {\n\t\tcolumnGap: 30,\n\t\tcolumnCount: 1,\n\t\t[mediaQueries.md]: {\n\t\t\tcolumnCount: 2,\n\t\t},\n\t\t[mediaQueries.lg]: {\n\t\t\tcolumnCount: 4,\n\t\t},\n\t},\n\ttwoProgramColumn: {\n\t\tcolumnGap: 30,\n\t\tcolumnCount: 1,\n\t\t[mediaQueries.lg]: {\n\t\t\tcolumnCount: 2,\n\t\t},\n\t},\n\treasonRow: {\n\t\tdisplay: 'flex',\n\t\tflexWrap: 'wrap',\n\t\tmargin: '0 -7.5px',\n\t\tjustifyContent: 'center',\n\t},\n\treasonColumn: {\n\t\twidth: '100%',\n\t\tmarginBottom: 35,\n\t\tpadding: '0 7.5px',\n\t\t[mediaQueries.lg]: {\n\t\t\twidth: '33.33%',\n\t\t},\n\t\t'@media(min-width: 1400px)': {\n\t\t\twidth: '20%',\n\t\t},\n\t},\n\treasonIconOuter: {\n\t\twidth: 160,\n\t\tmargin: '0 auto 25px',\n\t},\n\treasonIcon: {\n\t\tposition: 'relative',\n\t\tpaddingBottom: '100%',\n\t\tbackgroundColor: theme.colors.gray300,\n\t\t'& svg': {\n\t\t\ttop: '50%',\n\t\t\tleft: '50%',\n\t\t\tposition: 'absolute',\n\t\t\ttransform: 'translate(-50%, -50%)',\n\t\t},\n\t},\n}));\n\nexport const ProgramBundle = () => {\n\tconst classes = useStyles();\n\n\tconst { bundleId } = useParams<{ bundleId: string }>();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst [bundle, setBundle] = useState();\n\tconst [showFullAccessModal, setShowFullAccessModal] = useState(false);\n\tconst [showUpgradeModal, setShowUpgradeModal] = useState(false);\n\n\tconst fiveReasons = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tbgClassName: 'bg-dark',\n\t\t\t\ttitle: 'Strategic Insight',\n\t\t\t\tdescription:\n\t\t\t\t\t'Our independent research and analysis from experienced practitioners help functional leaders navigate the complexities of the evolving business services landscape.',\n\t\t\t\tIcon: SignpostIcon,\n\t\t\t},\n\t\t\t{\n\t\t\t\tbgClassName: 'bg-info',\n\t\t\t\ttitle: 'Targeted Improvement',\n\t\t\t\tdescription:\n\t\t\t\t\t'Benchmark metrics and guidance to select the right ones helps leaders to understand performance relative to peer and Digital World Class® to determine next steps on the journey.',\n\t\t\t\tIcon: BarchartIcon,\n\t\t\t},\n\t\t\t{\n\t\t\t\tbgClassName: 'bg-primary',\n\t\t\t\ttitle: 'Accelerate Benefits',\n\t\t\t\tdescription:\n\t\t\t\t\t'Diagnostic tools help you identify opportunities for improvement, fast. On-demand guidance from experienced advisors helps to convert these to action quickly.',\n\t\t\t\tIcon: RocketIcon,\n\t\t\t},\n\t\t\t{\n\t\t\t\tbgClassName: 'bg-warning',\n\t\t\t\ttitle: 'Risk Mitigation',\n\t\t\t\tdescription:\n\t\t\t\t\t'Best practice insight and guidance on how to apply these helps you avoid pitfalls in your journey. An abundance of case material helps you by learning from the best.',\n\t\t\t\tIcon: ShieldIcon,\n\t\t\t},\n\t\t\t{\n\t\t\t\tbgClassName: 'bg-success',\n\t\t\t\ttitle: 'Manage Change',\n\t\t\t\tdescription:\n\t\t\t\t\t'Knowledge empowers you and your direct reports to implement change leveraging a wealth of information available on a dedicated online member portal.',\n\t\t\t\tIcon: ArrowsIcon,\n\t\t\t},\n\t\t],\n\t\t[]\n\t);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await bundleService.getBundleByBundleId(bundleId).fetch();\n\t\tsetBundle(response);\n\t}, [bundleId]);\n\n\tconst handleUpdateConfirm = useCallback(async () => {\n\t\ttry {\n\t\t\tawait salesLeadService.sendProgramBundleEmail(bundleId).fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tThank you for your interest. Your Advisory Team will be in contact with you.\n\t\t\t\t\t\t

    \n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t});\n\t\t\tsetShowFullAccessModal(false);\n\t\t\tsetShowUpgradeModal(false);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [bundleId, handleError, showAlert]);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Program Bundle\n\t\t\t\n\n\t\t\t {\n\t\t\t\t\tsetShowFullAccessModal(false);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\tGet Access Now\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tTo learn more about how you can get access to this program please click the \"Confirm\" button\n\t\t\t\t\t\tbelow, and a member of your Advisory Team will get in touch with you.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t {\n\t\t\t\t\tsetShowUpgradeModal(false);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\tUpgrade Now\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tTo learn more about upgrading your program to the full program scope please click the \"Confirm\"\n\t\t\t\t\t\tbutton below, and a member of your Advisory Team will get in touch with you.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{bundle?.programAccess === PROGRAM_ACCESS.NONE && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetShowFullAccessModal(true);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tGet Access Now\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t{bundle?.programDeliverables ? (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Program Scope

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{(bundle?.programs ?? []).length === 1 && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{(bundle?.programs ?? [])[0].businessProcesses.length <= 4 ? (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{(bundle?.programs ?? []).length === 2 && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{(bundle?.programs ?? []).length >= 3 && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{bundle?.programs.map((program, programIndex) => (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{bundle?.programAccess !== PROGRAM_ACCESS.NONE && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t= included in your membership\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t)}\n\n\t\t\t\t{bundle?.programAccess === PROGRAM_ACCESS.PARTIAL && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetShowUpgradeModal(true);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tUpgrade Now\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t)}\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{bundle?.fiveReasons ? (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tWhy join our Digital World Class® membership\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t

    Five Reasons

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\tWhy join our market intelligence program?\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{fiveReasons.map((reason, reasonIndex) => (\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    {reason.title}

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n\nconst ProgramColumn = ({ className, program }: { className?: string; program?: BundleProgramModel }) => {\n\treturn (\n\t\t<>\n\t\t\t\"\"\n\t\t\t

    \n\t\t\t\t{program?.hasAccess && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t{program?.name}\n\t\t\t

    \n\t\t\t
    \n\t\t\t\t
      \n\t\t\t\t\t{program?.businessProcesses.map((process, processIndex) => (\n\t\t\t\t\t\t
    • {process}
    • \n\t\t\t\t\t))}\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { useState, useCallback } from 'react';\nimport { Link } from 'react-router-dom';\nimport { Container, Row, Col } from 'react-bootstrap';\nimport LinesEllipsis from 'react-lines-ellipsis';\nimport responsiveHOC from 'react-lines-ellipsis/lib/responsiveHOC';\nimport { Helmet } from 'react-helmet';\nimport { ReportListItem } from '@/lib/models';\nimport { jasperServices } from '@/lib/services';\nimport { AsyncPage } from '@/components';\n\nconst ResponsiveEllipsis = responsiveHOC()(LinesEllipsis);\n\nexport const Reports = () => {\n\tconst [reportList, setReportList] = useState([]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst reportItems = await jasperServices.getReportList().fetch();\n\t\tsetReportList(reportItems.reports);\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Client Management - Reports\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    Reports

    \n\t\t\t\t\t\n\t\t\t\t
    \n\n\t\t\t\t{reportList.length > 0 ? (\n\t\t\t\t\treportList.map((report) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{report.description && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\t})\n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useEffect, useState, useRef, useMemo } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\nimport { useQuery, useHandleError } from '@/hooks';\nimport { searchService } from '@/lib/services';\n\nimport { SearchResultDocumentModel, FormOption, DocumentModel, searchSortOptions, SEARCH_SORT } from '@/lib/models';\nimport { constructUrl } from '@/lib/utils';\n\nimport { LinkBox, LoadingButton, Select, RecentlyViewed, SearchListItem } from '@/components';\nimport { cloneDeep } from 'lodash';\nimport { Helmet } from 'react-helmet';\n\nexport const Search = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst handleError = useHandleError();\n\n\tconst loadMoreRef = useRef(false);\n\tconst resultsLengthRef = useRef(0);\n\tconst query = useQuery();\n\tconst searchQuery = useMemo(() => {\n\t\tloadMoreRef.current = false;\n\t\tresultsLengthRef.current = 0;\n\t\treturn query.get('query');\n\t}, [query]);\n\tconst filterQuery = useMemo(() => query.get('filter'), [query]);\n\tconst searchSort = useMemo(() => query.get('searchSort') ?? SEARCH_SORT.RELEVANCE, [query]);\n\tconst [sortingOptions, setSortingOptions] = useState(searchSortOptions);\n\tconst [isLoadingFilters, setIsLoadingFilters] = useState(false);\n\tconst [searchResults, setSearchResults] = useState([]);\n\tconst [totalCount, setTotalCount] = useState(0);\n\tconst [hasNext, setHasNext] = useState(false);\n\tconst [contentTypeFilters, setContentTypeFilters] = useState([]);\n\tconst [loadingSearchResults, setLoadingSearchResults] = useState(false);\n\n\tconst fetchResults = useCallback(async () => {\n\t\ttry {\n\t\t\tsetLoadingSearchResults(true);\n\t\t\tconst response = await searchService\n\t\t\t\t.getSearchResults({\n\t\t\t\t\t...(filterQuery && { filter: filterQuery }),\n\t\t\t\t\t...(searchQuery && { query: searchQuery }),\n\t\t\t\t\t...(searchSort && { searchSort }),\n\t\t\t\t\tfrom: String(resultsLengthRef.current),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetTotalCount(response.count === null ? 0 : response.count);\n\t\t\tsetHasNext(response.hasNext);\n\t\t\tsetSearchResults((previousValue) => {\n\t\t\t\tif (loadMoreRef.current) {\n\t\t\t\t\tconst newValue = previousValue.concat(response.documents);\n\t\t\t\t\tresultsLengthRef.current = newValue.length;\n\n\t\t\t\t\treturn newValue;\n\t\t\t\t}\n\n\t\t\t\tresultsLengthRef.current = response.documents.length;\n\t\t\t\tloadMoreRef.current = false;\n\t\t\t\treturn response.documents;\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetLoadingSearchResults(false);\n\t\t}\n\t}, [filterQuery, searchQuery, searchSort, handleError]);\n\n\n\tconst checkSortOption = () => {\n\t\t// TODO - fix this approach - It's all over this file and it's not good. Use the search params hook instead.\n\t\t// We don't need to use indexOf anymore.\n\t\tif (window.location.href.indexOf('BEST_PRACTICE') > -1 || window.location.href.indexOf(\"PERFORMANCE_METRIC\") > -1\n\t\t|| window.location.href.indexOf('USE_CASE') > -1) {\n\t\t\tsetSortingOptions(searchSortOptions.filter(({ searchSort }) => searchSort !== SEARCH_SORT.DATE_ASC && searchSort !== SEARCH_SORT.DATE_DESC));\n\t\t}\n\t\telse {\n\t\t\tfetchContentTypes();\n\t\t}\n\t};\n\tconst fetchContentTypes = useCallback(async () => {\n\t\tsetIsLoadingFilters(true);\n\n\t\ttry {\n\t\t\tconst response = await searchService.getSearchFilters().fetch();\n\t\t\tsetContentTypeFilters(response.searchFilters);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoadingFilters(false);\n\t\t}\n\t}, [handleError]);\n\n\tconst handleSortByChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tloadMoreRef.current = false;\n\t\tif ((window.location.href.indexOf('BEST_PRACTICE') > -1 && (currentTarget.value === SEARCH_SORT.DATE_ASC || currentTarget.value === SEARCH_SORT.DATE_DESC)) || (window.location.href.indexOf(\"PERFORMANCE_METRIC\") > -1 && (currentTarget.value === SEARCH_SORT.DATE_ASC || currentTarget.value === SEARCH_SORT.DATE_DESC))) {\n\t\t\thistory.replace(constructUrl(pathname, { searchSort: SEARCH_SORT.RELEVANCE, }, search));\n\t\t}\n\t\telse {\n\t\t\thistory.replace(constructUrl(pathname, { searchSort: currentTarget.value }, search));\n\t\t}\n\t};\n\n\tconst handleTypeFilterChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tloadMoreRef.current = false;\n\t\thistory.replace(constructUrl(pathname, { filter: currentTarget.value, searchSort: SEARCH_SORT.RELEVANCE }, search));\n\t\tsetSortingOptions(searchSortOptions);\n\t\tcheckSortOption();\n\t};\n\n\tconst handleClearButtonClick = () => {\n\t\tloadMoreRef.current = false;\n\t\thistory.replace(constructUrl(pathname, { filter: '' }, search));\n\t};\n\n\tconst handleLoadMoreButtonClick = () => {\n\t\tloadMoreRef.current = true;\n\t\tfetchResults();\n\t};\n\n\tuseEffect(() => {\n\t\tfetchResults();\n\t}, [fetchResults]);\n\tuseEffect(() => {\n\t\tfetchContentTypes();\n\t}, [fetchContentTypes]);\n\tuseEffect(() => {\n\t\tcheckSortOption();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst handleListItemChange = useCallback(\n\t\t(document: DocumentModel) => {\n\t\t\tconst searchResultsClone = cloneDeep(searchResults);\n\t\t\tconst indexToUpdate = searchResultsClone.findIndex((d) => d.id === document.documentId);\n\n\t\t\tsearchResultsClone[indexToUpdate] = {\n\t\t\t\t...searchResultsClone[indexToUpdate],\n\t\t\t\tbookmarkFlag: document.bookmarkedFlag,\n\t\t\t};\n\n\t\t\tsetSearchResults(searchResultsClone);\n\t\t},\n\t\t[searchResults]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Search\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t{loadingSearchResults ? (\n\t\t\t\t\t\t\t\t\t'Loading...'\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{searchQuery\n\t\t\t\t\t\t\t\t\t\t\t? totalCount === 1\n\t\t\t\t\t\t\t\t\t\t\t\t? `${totalCount} Result for \"${searchQuery}\"`\n\t\t\t\t\t\t\t\t\t\t\t\t: `${totalCount} Results for \"${searchQuery}\"`\n\t\t\t\t\t\t\t\t\t\t\t: `${totalCount} Results`}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\tSort By\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t{!loadingSearchResults && searchResults.length <= 0 ? (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{searchResults.map((searchItem) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\n\t\t\t\t\t\t\t\t{searchResults.length > 0 && hasNext && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tLoad More\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    Filter by type

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t;\n\t\t\t\t\t\t\t\t\t\t{contentTypeFilters.map((typeFilter) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgHackettConsultationsIcon(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, [\"title\", \"titleId\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 1500,\n height: 1500,\n viewBox: \"0 0 1500 1500\",\n fill: \"currentColor\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M703.81,1350.49h92.48c9.06,0,16.38-7.32,16.38-16.38v-590.83h201.89c9.06,0,16.38-7.32,16.38-16.38v-39.75c0-38.11-31.01-69.12-69.12-69.12h-423.55c-38.11,0-69.12,31.01-69.12,69.12v39.75c0,9.06,7.32,16.38,16.38,16.38h201.89v590.83c0,9.06,7.32,16.38,16.38,16.38ZM501.92,687.16c0-19.98,16.27-36.36,36.36-36.36h423.55c19.98,0,36.36,16.27,36.36,36.36v23.37h-496.27v-23.37ZM720.19,743.28h59.73v574.45h-59.73v-574.45Z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M427.34,339.61c0-76.54-62.24-138.78-138.67-138.78s-138.67,62.24-138.67,138.78,62.24,138.78,138.67,138.78,138.67-62.24,138.67-138.78ZM288.67,233.59c58.42,0,105.91,47.61,105.91,106.02s-47.5,106.02-105.91,106.02-105.91-47.61-105.91-106.02,47.5-106.02,105.91-106.02Z\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M546.69,1350.49c50.88,0,92.37-41.49,92.37-92.37v-334.23c0-50.99-41.38-92.37-92.37-92.37h-165.64v-241.86c0-50.99-41.38-92.37-92.37-92.37s-92.37,41.49-92.37,92.37v334.23c0,50.99,41.38,92.48,92.37,92.48h165.64v241.86c0,50.99,41.38,92.37,92.37,92.37v-.11ZM229.16,923.78v-334.23c0-32.87,26.75-59.62,59.62-59.62s59.62,26.75,59.62,59.62v258.23c0,9.06,7.32,16.38,16.38,16.38h182.02c32.87,0,59.62,26.75,59.62,59.62v334.23c0,32.87-26.75,59.62-59.62,59.62s-59.62-26.75-59.62-59.62v-258.23c0-9.06-7.32-16.38-16.38-16.38h-182.13c-32.87,0-59.62-26.75-59.62-59.73l.11.11Z\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1350,338.08c0-76.54-62.24-138.78-138.67-138.78s-138.67,62.24-138.67,138.78,62.24,138.78,138.67,138.78,138.67-62.24,138.67-138.78ZM1211.33,444.1c-58.42,0-105.91-47.61-105.91-106.02s47.5-106.02,105.91-106.02,105.91,47.61,105.91,106.02-47.5,106.02-105.91,106.02Z\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M953.31,1350.49c50.88,0,92.37-41.49,92.37-92.37v-241.86h165.64c50.88,0,92.37-41.49,92.37-92.48v-334.23c0-50.99-41.38-92.37-92.37-92.37s-92.37,41.49-92.37,92.37v241.86h-165.64c-50.88,0-92.37,41.49-92.37,92.37v334.23c0,50.99,41.38,92.37,92.37,92.37v.11ZM893.69,923.78c0-32.87,26.75-59.62,59.62-59.62h182.02c9.06,0,16.38-7.32,16.38-16.38v-258.23c0-32.87,26.75-59.62,59.62-59.62s59.62,26.75,59.62,59.62v334.23c0,32.87-26.75,59.73-59.62,59.73h-182.02c-9.06,0-16.38,7.32-16.38,16.38v258.23c0,32.87-26.75,59.62-59.62,59.62s-59.62-26.75-59.62-59.62v-334.34Z\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M884.3,149.4h-340.02c-9.06,0-16.38,7.32-16.38,16.38v211.83l-54.38,57.87c-9.83,10.48-2.4,27.63,11.9,27.63h113.78v50.45c0,9.06,7.32,16.38,16.38,16.38h340.02c9.06,0,16.38-7.32,16.38-16.38v-211.83l54.38-57.87c9.83-10.48,2.4-27.63-11.9-27.63h-113.78v-50.45c0-9.06-7.32-16.38-16.38-16.38ZM939.23,295.28v201.89h-307.26v-34.07h252.34c9.06,0,16.38-7.32,16.38-16.38v-197.74h75.89c-36.25,38.54-37.34,37.67-37.34,46.3ZM867.93,430.35h-344.6l32.87-35.05c6.88-7.42,4.48-.98,4.48-213.14h307.26v248.19Z\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M628.8,363.96h171.1c21.62,0,21.62-32.76,0-32.76h-171.1c-21.62,0-21.62,32.76,0,32.76Z\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M628.8,281.19h171.1c21.62,0,21.62-32.76,0-32.76h-171.1c-21.62,0-21.62,32.76,0,32.76Z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgHackettConsultationsIcon);\nexport default __webpack_public_path__ + \"static/media/hackett-consultations-icon.18ca3867.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { Col, Container, Row } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport classNames from 'classnames';\nimport { createUseThemedStyles } from '@/hooks';\n\nimport { ReactComponent as ConsultationsIcon } from '@/assets/icons/hackett-consultations-icon.svg';\nimport { ReactComponent as ResearchReportsIcon } from '@/assets/icons/hackett-research-reports-icon.svg';\nimport { ReactComponent as CustomContentIcon } from '@/assets/icons/hackett-custom-content-icon.svg';\n\nconst useStyles = createUseThemedStyles((theme) => ({\n\ticonOuter: {\n\t\twidth: 160,\n\t\theight: 'auto',\n\t\tdisplay: 'block',\n\t\tmargin: '0 auto 8px',\n\t},\n}));\n\nexport const VendorEnablement = () => {\n\tconst classes = useStyles();\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Vendor Enablement\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Vendor Enablement Program

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tThis program is designed to help software and service vendors stand out\n\t\t\t\t\t\t\t\tfrom your competitors and gain visibility with potential buyers. Our insights, curated\n\t\t\t\t\t\t\t\tfrom our many years of measuring top performance, help identify the buying decision\n\t\t\t\t\t\t\t\tfactors most important to your current and future clients.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tThe program provides clarity on what decision-makers in your market really value and how\n\t\t\t\t\t\t\t\tyou can deliver that value better than the competition. Through the combination of\n\t\t\t\t\t\t\t\tempirical, data-driven insights and a cutting-edge method of competitive evaluation, The\n\t\t\t\t\t\t\t\tHackett Group positions you to accelerate sales.\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Program Deliverables

    \n\t\t\t\t\t\t\t

    Members of the Vendor Enablement Program has access to:

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Consultations

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tRegular consultations with The Hackett Group's analysts who can provide deeper knowledge\n\t\t\t\t\t\t\t\tof your competency area, market and competitors, as well as advice on product road maps\n\t\t\t\t\t\t\t\tand service delivery design\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Research Reports

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tRelevant research reports, including full versions of the Digital World Class Matix™\n\t\t\t\t\t\t\t\treport process-level best practices and emerging trends\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Custom Content

    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tVendor profiles made available to members of The Hackett Group's Advisory member\n\t\t\t\t\t\t\t\tcommunity. Bespoke content such as blog posts and case studies. Our participation in\n\t\t\t\t\t\t\t\tyour events, and your sponsorship or participation in our events\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React from 'react';\nimport {\n\tAccount,\n\tAdvisorInquiries,\n\tAdvisorInquiriesDashboard,\n\tAdvisorInquiriesDetailEdit,\n\tAdvisoryTeam,\n\tBestPracticeDetail,\n\tBestPractices,\n\tBookmarks,\n\tClientInquiries,\n\tCompleteProfile,\n\tContact,\n\tCreateInquiry,\n\tDashboardV2,\n\tDeliverables,\n\tDeliverablesCreate,\n\tEngagement,\n\tEvents,\n\tInquiryDetailReadOnly,\n\tNoMatch,\n\tPerformanceMetrics,\n\tPerformanceMetricsDetail,\n\tReports,\n\tReportDetail,\n\tResearch,\n\tResearchDetail,\n\tSearch,\n\tSignIn,\n\tVersion,\n\tMaintenance,\n\tProgramBundle,\n\tInquiryMarketing,\n\tUseCases,\n\tUseCaseDetail,\n\tVendorEnablement,\n\tMarketIntelligence,\n\tAskHackettAi,\n} from '@/pages';\n\nimport { HeaderNoAuth, Header } from '@/components';\nimport { Redirect } from 'react-router-dom';\n\nexport const routes = [\n\t{\n\t\tpath: '/sign-in',\n\t\texact: true,\n\t\tprivate: false,\n\t\theader: HeaderNoAuth,\n\t\tmain: SignIn,\n\t},\n\t{\n\t\tpath: '/complete-profile',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: HeaderNoAuth,\n\t\tmain: CompleteProfile,\n\t},\n\t{\n\t\tpath: '/',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: DashboardV2,\n\t},\n\t{\n\t\tpath: '/search',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Search,\n\t},\n\t{\n\t\tpath: '/search/:query',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Search,\n\t},\n\t{\n\t\tpath: '/program-bundle/market-intelligence',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: MarketIntelligence,\n\t},\n\t{\n\t\tpath: '/program-bundle/vendor-enablement',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: VendorEnablement,\n\t},\n\t{\n\t\tpath: '/program-bundle/:bundleId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: ProgramBundle,\n\t},\n\t{\n\t\tpath: '/research',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Research,\n\t},\n\t{\n\t\tpath: '/research/:documentId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: ResearchDetail,\n\t},\n\t{\n\t\tpath: '/best-practices',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: BestPractices,\n\t},\n\t{\n\t\tpath: '/best-practices/:bestPracticeId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: BestPracticeDetail,\n\t},\n\t{\n\t\tpath: '/performance-metrics',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: PerformanceMetrics,\n\t},\n\t{\n\t\tpath: '/performance-metrics/:performanceMetricId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: PerformanceMetricsDetail,\n\t},\n\t{\n\t\tpath: '/engagement',\n\t\texact: false,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Engagement,\n\t},\n\t{\n\t\tpath: '/events',\n\t\texact: false,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Events,\n\t},\n\t{\n\t\tpath: '/client-management',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: () => ,\n\t},\n\t{\n\t\tpath: '/client-management/inquiries-dashboard',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: AdvisorInquiriesDashboard,\n\t},\n\t{\n\t\tpath: '/client-management/inquiries',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: AdvisorInquiries,\n\t},\n\t{\n\t\tpath: '/client-management/inquiries/:inquiryId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: InquiryDetailReadOnly,\n\t},\n\t{\n\t\tpath: '/client-management/inquiries/:inquiryId/edit',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: AdvisorInquiriesDetailEdit,\n\t},\n\t{\n\t\tpath: '/client-management/deliverables',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Deliverables,\n\t},\n\t{\n\t\tpath: '/client-management/deliverables/create',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: DeliverablesCreate,\n\t},\n\t{\n\t\tpath: '/client-management/deliverables/:deliverableId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: DeliverablesCreate,\n\t},\n\t{\n\t\tpath: '/client-management/reports',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Reports,\n\t},\n\t{\n\t\tpath: '/client-management/reports/:reportId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: ReportDetail,\n\t},\n\t{\n\t\tpath: '/client-management/ask-hackett-ai',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: AskHackettAi,\n\t},\n\t{\n\t\tpath: '/inquiries',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: ClientInquiries,\n\t},\n\t{\n\t\tpath: '/inquiries/learn-more',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: InquiryMarketing,\n\t},\n\t{\n\t\tpath: '/inquiries/:inquiryId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: InquiryDetailReadOnly,\n\t},\n\t{\n\t\tpath: '/contact',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Contact,\n\t},\n\t{\n\t\tpath: '/contact/create-inquiry',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: CreateInquiry,\n\t},\n\t{\n\t\tpath: '/advisory-team',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: AdvisoryTeam,\n\t},\n\t{\n\t\tpath: '/account',\n\t\texact: false,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Account,\n\t},\n\t{\n\t\tpath: '/bookmarks',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Bookmarks,\n\t},\n\t{\n\t\tpath: '/use-cases',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: UseCases,\n\t},\n\t{\n\t\tpath: '/use-cases/:useCaseId',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: UseCaseDetail,\n\t},\n\t{\n\t\tpath: '/version',\n\t\texact: true,\n\t\tprivate: true,\n\t\theader: Header,\n\t\tmain: Version,\n\t},\n\t{\n\t\tpath: '/maintenance',\n\t\texact: true,\n\t\tprivate: false,\n\t\theader: HeaderNoAuth,\n\t\tmain: Maintenance,\n\t},\n\t{\n\t\tpath: '*',\n\t\texact: false,\n\t\tprivate: false,\n\t\theader: Header,\n\t\tmain: NoMatch,\n\t},\n];\n","import Cookies from 'js-cookie';\nimport React, { useState } from 'react';\nimport { Container, Row, Col, Card, Button, Form } from 'react-bootstrap';\n\nimport config from '@/lib/config';\nimport { accessTokenCookieAttributes, COOKIES } from '@/lib/models';\nimport { publicService } from '@/lib/services';\nimport { useHandleError } from '@/hooks';\nimport { LoadingButton } from '@/components';\nimport { constructUrl } from '@/lib/utils';\nimport { Helmet } from 'react-helmet';\n\nexport const SignIn = () => {\n\tconst handleError = useHandleError();\n\tconst [isLoading, setIsLoading] = useState(false);\n\tconst [emaillAddressInputValue, setEmaillAddressInputValue] = useState('');\n\n\tasync function handleSignInFormSubmit(event: React.FormEvent) {\n\t\tevent.preventDefault();\n\n\t\ttry {\n\t\t\tsetIsLoading(true);\n\n\t\t\tconst { token } = await publicService.authenticate({ emailAddress: emaillAddressInputValue }).fetch();\n\t\t\tconst targetUrl = Cookies.get(COOKIES.TARGET_URL);\n\n\t\t\tCookies.set(COOKIES.ACCESS_TOKEN, token, accessTokenCookieAttributes);\n\n\t\t\tif (targetUrl) {\n\t\t\t\twindow.location.href = targetUrl;\n\t\t\t} else {\n\t\t\t\twindow.location.href = '/';\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tsetIsLoading(false);\n\t\t\thandleError(error);\n\t\t}\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Sign In\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tSign In\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{config.HACKETT_ADVISORY_USE_REAL_AUTH === 'true' ? (\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\twindow.location.href = constructUrl(config.HACKETT_ADVISORY_AUTH_UI_URL, {\n\t\t\t\t\t\t\t\t\t\t\tredirectUrl: encodeURIComponent(window.location.href),\n\t\t\t\t\t\t\t\t\t\t\tplatform: 'hackett-connect',\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\tSign In\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tEmail Address\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetEmaillAddressInputValue(event.currentTarget.value);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tSign In\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{config.HACKETT_ADVISORY_SHOW_DEBUG === 'true' && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    Dev Accounts

    \n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetEmaillAddressInputValue('maa@xmog.com');\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tSuper Admin\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetEmaillAddressInputValue('inquiry-advisor@advisory.com');\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tInquiry Advisor\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetEmaillAddressInputValue('inquiry-client@advisory.com');\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\tInquiry Client\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport { DocumentModel } from '@/lib/models';\nimport { constructUrl, formOptionToMultiSelectOption, getParsedQuery, getValidPaginatorSize } from '@/lib/utils';\nimport { documentService } from '@/lib/services';\nimport { useHandleError, useQuery } from '@/hooks';\nimport {\n\tflattenParentAndChildIdsForSelection,\n\tgetTopLevelParentAndChildrenIds,\n\tLinkBox,\n\tLoader,\n\tLoadingButton,\n\tMultiSelect,\n\tMultiSelectOption,\n\tRecentlyViewed,\n\tResearchListItem,\n\tSelect,\n} from '@/components';\n\nexport const Research = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst handleError = useHandleError();\n\n\tconst query = useQuery();\n\tconst hasQuery = useMemo(() => {\n\t\tconst paramsToIgnore = ['size'];\n\n\t\treturn (\n\t\t\tObject.entries(getParsedQuery(query)).filter(\n\t\t\t\t([key, value]) => !paramsToIgnore.includes(key) && value !== ''\n\t\t\t).length > 0\n\t\t);\n\t}, [query]);\n\tconst topicsQuery = useMemo(\n\t\t() =>\n\t\t\tquery\n\t\t\t\t.get('topics')\n\t\t\t\t?.split('|')\n\t\t\t\t.filter((s) => s),\n\t\t[query]\n\t);\n\tconst parentBusinessProcessesQuery = useMemo(\n\t\t() =>\n\t\t\tquery\n\t\t\t\t.get('parentBusinessProcesses')\n\t\t\t\t?.split('|')\n\t\t\t\t.filter((s) => s),\n\t\t[query]\n\t);\n\tconst businessProcessesQuery = useMemo(\n\t\t() =>\n\t\t\tquery\n\t\t\t\t.get('businessProcesses')\n\t\t\t\t?.split('|')\n\t\t\t\t.filter((s) => s),\n\t\t[query]\n\t);\n\tconst contentTypesQuery = useMemo(\n\t\t() =>\n\t\t\tquery\n\t\t\t\t.get('contentTypes')\n\t\t\t\t?.split('|')\n\t\t\t\t.filter((s) => s),\n\t\t[query]\n\t);\n\tconst size = useMemo(() => getValidPaginatorSize(query), [query]);\n\tconst pageRef = useRef(0);\n\n\tconst [isLoadingFilters, setIsLoadingFilters] = useState(false);\n\n\tconst [topicFilters, setTopicFilters] = useState([]);\n\tconst [businessProcessFilters, setBusinessProcessFilters] = useState([]);\n\tconst [contentTypeFilters, setContentTypeFilters] = useState([]);\n\n\tconst [documents, setDocuments] = useState([]);\n\tconst [totalCount, setTotalCount] = useState(0);\n\tconst [loadingDocuments, setLoadingDocuments] = useState(false);\n\n\tconst fetchFilters = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsLoadingFilters(true);\n\n\t\t\tconst response = await documentService\n\t\t\t\t.getDocumentFilters({\n\t\t\t\t\t...(topicsQuery && { topicIds: topicsQuery }),\n\t\t\t\t\t...(parentBusinessProcessesQuery && { parentBusinessProcessIds: parentBusinessProcessesQuery }),\n\t\t\t\t\t...(businessProcessesQuery && { businessProcessIds: businessProcessesQuery }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetTopicFilters(formOptionToMultiSelectOption(response.topics));\n\t\t\tsetBusinessProcessFilters(formOptionToMultiSelectOption(response.businessProcesses));\n\t\t\tsetContentTypeFilters(formOptionToMultiSelectOption(response.contentTypes));\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsLoadingFilters(false);\n\t\t}\n\t}, [businessProcessesQuery, handleError, parentBusinessProcessesQuery, topicsQuery]);\n\n\tconst allBpSelections = useMemo(() => {\n\t\treturn flattenParentAndChildIdsForSelection(\n\t\t\tbusinessProcessFilters,\n\t\t\tparentBusinessProcessesQuery,\n\t\t\tbusinessProcessesQuery\n\t\t);\n\t}, [businessProcessFilters, businessProcessesQuery, parentBusinessProcessesQuery]);\n\n\tuseEffect(() => {\n\t\tfetchFilters();\n\t}, [fetchFilters]);\n\n\tconst fetchDocuments = useCallback(async () => {\n\t\ttry {\n\t\t\tsetLoadingDocuments(true);\n\n\t\t\tconst response = await documentService\n\t\t\t\t.getDocuments({\n\t\t\t\t\t...(topicsQuery && { topicIds: topicsQuery }),\n\t\t\t\t\t...(parentBusinessProcessesQuery && { parentBusinessProcessIds: parentBusinessProcessesQuery }),\n\t\t\t\t\t...(businessProcessesQuery && { businessProcessIds: businessProcessesQuery }),\n\t\t\t\t\t...(contentTypesQuery && { documentTypes: contentTypesQuery }),\n\t\t\t\t\tsize,\n\t\t\t\t\tpage: String(pageRef.current),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetTotalCount(response.totalCount);\n\t\t\tsetDocuments((previousValue) => {\n\t\t\t\tif (pageRef.current === 0) {\n\t\t\t\t\treturn response.documents;\n\t\t\t\t}\n\n\t\t\t\treturn previousValue.concat(response.documents);\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetLoadingDocuments(false);\n\t\t}\n\t}, [businessProcessesQuery, contentTypesQuery, handleError, parentBusinessProcessesQuery, size, topicsQuery]);\n\n\tuseEffect(() => {\n\t\tpageRef.current = 0;\n\t}, [businessProcessesQuery, contentTypesQuery, parentBusinessProcessesQuery, topicsQuery]);\n\n\tuseEffect(() => {\n\t\tfetchDocuments();\n\t}, [fetchDocuments]);\n\n\tconst handleClearButtonClick = () => {\n\t\tpageRef.current = 0;\n\t\thistory.replace(pathname);\n\t};\n\n\tconst handleTopicsChange = (selectedTopicIds: string[]) => {\n\t\tpageRef.current = 0;\n\t\thistory.replace(constructUrl(pathname, { topics: selectedTopicIds }, search));\n\t};\n\n\tconst handleBusinessProcessesChange = useCallback(\n\t\t(selectedBpIds: string[]) => {\n\t\t\tconst { parentIds, remainingChildrenIds } = getTopLevelParentAndChildrenIds(\n\t\t\t\tbusinessProcessFilters,\n\t\t\t\tselectedBpIds\n\t\t\t);\n\n\t\t\tpageRef.current = 0;\n\t\t\thistory.replace(\n\t\t\t\tconstructUrl(\n\t\t\t\t\tpathname,\n\t\t\t\t\t{\n\t\t\t\t\t\tparentBusinessProcesses: parentIds,\n\t\t\t\t\t\tbusinessProcesses: remainingChildrenIds,\n\t\t\t\t\t},\n\t\t\t\t\tsearch\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\t\t[businessProcessFilters, history, pathname, search]\n\t);\n\n\tconst handleContentTypesChange = (selectedContentTypeIds: string[]) => {\n\t\tpageRef.current = 0;\n\t\thistory.replace(constructUrl(pathname, { contentTypes: selectedContentTypeIds }, search));\n\t};\n\n\tconst handleShowMoreButtonClick = () => {\n\t\tpageRef.current += 1;\n\t\tfetchDocuments();\n\t};\n\n\tconst handlePageSizeChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\tpageRef.current = 0;\n\t\thistory.replace(constructUrl(pathname, { size: currentTarget.value }, search));\n\t};\n\n\tconst handleResearchListItemChange = (document: DocumentModel) => {\n\t\tconst documentsClone = cloneDeep(documents);\n\t\tconst indexToUpdate = documentsClone.findIndex((d) => d.documentId === document.documentId);\n\n\t\tdocumentsClone[indexToUpdate] = {\n\t\t\t...documentsClone[indexToUpdate],\n\t\t\tbookmarkedFlag: document.bookmarkedFlag,\n\t\t};\n\n\t\tsetDocuments(documentsClone);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Research\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t{loadingDocuments ? (\n\t\t\t\t\t\t\t\t\t<>Loading...\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<>{hasQuery ? `Filtered Research` : 'All Research'}\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tPage Size\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t{!loadingDocuments && documents.length === 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{documents.map((document) => (\n\t\t\t\t\t\t\t tag.name)}\n\t\t\t\t\t\t\t\tonChange={handleResearchListItemChange}\n\t\t\t\t\t\t\t\tisPodcast={!!document.podcastUrl}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t{loadingDocuments && documents.length <= 0 && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tShowing 1-{documents.length}\n\t\t\t\t\t\t\t\t{hasQuery && <> of {totalCount}}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{documents.length < totalCount && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tShow {size} More\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    Filters

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tTopics\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tSelect\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tBusiness Processes\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tSelect\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tContent Type\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tSelect\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { useCallback, useState } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { Button, Col, Container, Row } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport classNames from 'classnames';\nimport { DocumentModel } from '@/lib/models';\nimport { documentService } from '@/lib/services';\nimport { useAlert, useCopyTextToClipboard, useHandleError, useNavigationConfig, useAnalytics } from '@/hooks';\nimport { AsyncPage, LinkBox, LoadingButton, RecentlyViewed } from '@/components';\n\nexport const ResearchDetail = () => {\n\tconst handleError = useHandleError();\n\tconst { documentId } = useParams<{ documentId: string }>();\n\tconst { showAlert } = useAlert();\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst analytics = useAnalytics();\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\n\tconst [document, setDocument] = useState();\n\tconst [isBookmarking, setIsBookmarking] = useState(false);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await documentService.getDocumentById(documentId).fetch();\n\t\tsetDocument(response);\n\t}, [documentId]);\n\n\tconst handleSaveBookmarkButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsBookmarking(true);\n\n\t\t\tif (!document) {\n\t\t\t\tthrow new Error('document is undefined');\n\t\t\t}\n\n\t\t\tconst response = await documentService.addBookmark(document.documentId).fetch();\n\t\t\tsetDocument(response);\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Bookmark saved.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsBookmarking(false);\n\t\t}\n\t}, [document, handleError, showAlert]);\n\n\tconst handleRemoveBookmarkButtonClick = useCallback(async () => {\n\t\ttry {\n\t\t\tsetIsBookmarking(true);\n\n\t\t\tif (!document) {\n\t\t\t\tthrow new Error('document is undefined');\n\t\t\t}\n\n\t\t\tconst response = await documentService.removeBookmark(document.documentId).fetch();\n\t\t\tsetDocument(response);\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Bookmark removed.

    ;\n\t\t\t\t},\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetIsBookmarking(false);\n\t\t}\n\t}, [document, handleError, showAlert]);\n\n\tconst handleShareButtonClick = () => {\n\t\tcopyTextToClipboard(window.location.href, 'Link copied to clipboard.');\n\t};\n\n\tconst handleViewClick = useCallback(async () => {\n\t\tconst { viewUrl } = document ?? {};\n\t\tif (!viewUrl) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tawait documentService.trackDocumentView(documentId).fetch();\n\t\t} catch (error) {\n\t\t\t// fail silently because we dont need to report a failed analytics call\n\t\t} finally {\n\t\t\tanalytics.handleClickEvent(viewUrl);\n\t\t\twindow.open(viewUrl, '_blank', 'noopener');\n\t\t}\n\t}, [analytics, document, documentId]);\n\n\tconst handleDownloadClick = useCallback(async () => {\n\t\tconst { downloadUrl } = document ?? {};\n\t\tif (downloadUrl) {\n\t\t\ttry {\n\t\t\t\tawait documentService.trackDocumentDownload(documentId).fetch();\n\t\t\t\tanalytics.handleClickEvent(downloadUrl);\n\t\t\t} catch (error) {\n\t\t\t\t// fail silently because we dont need to report a failed analytics call\n\t\t\t} finally {\n\t\t\t\twindow.open(downloadUrl, '_blank', 'noopener');\n\t\t\t}\n\t\t}\n\t}, [document, documentId, analytics]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Research - Research Detail\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    {document?.documentTypeName}

    \n\t\t\t\t\t\t

    {document?.name}

    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t{document?.topicTags\n\t\t\t\t\t\t\t\t.map((tag) => {\n\t\t\t\t\t\t\t\t\treturn tag.name;\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t.join(', ')}\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t

    {document?.publicationDateDescription}

    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{document && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{!document.podcastUrl && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t{navigationConfig?.allowDownloads &&\n\t\t\t\t\t\t\t\t\t\t\tdocument?.canDownload &&\n\t\t\t\t\t\t\t\t\t\t\tdocument?.downloadUrl && (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{document?.bookmarkedFlag ? (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tRemove Bookmark\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tSave Bookmark\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

    Summary

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{document?.podcastUrl && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { Container, Row, Col, Form } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport { bestPracticeTableColumns, bestPracticeTableHeaders, BEST_PRACTICE_TABLE_COLUMN_IDS } from '@/lib/__mocks__';\nimport { BestPracticeModel, BestPracticeFiltersModel } from '@/lib/models';\nimport { TableRowConfig, BestPracticeDownloadParametersModel } from '@/components/table/models';\nimport { constructUrl, formOptionToMultiSelectOption } from '@/lib/utils';\nimport { bestPracticeService } from '@/lib/services';\nimport { useHandleError, useNavigationConfig, useQuery } from '@/hooks';\nimport {\n\tMultiSelect,\n\tMultiSelectOption,\n\tflattenParentAndChildIdsForSelection,\n\tgetTopLevelParentAndChildrenIds,\n} from '@/components';\nimport {\n\tSORT_DIRECTION,\n\tTableCell,\n\tTableHeader,\n\tTableRenderer,\n\tTableRow,\n\tTableFilterDropdown,\n} from '@/components/table';\nimport config from '@/lib/config';\n\nexport const BestPractices = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst handleError = useHandleError();\n\tconst { navigationConfig } = useNavigationConfig();\n\n\tconst query = useQuery();\n\tconst parentBusinessProcessIds = useMemo(() => query.get('parentBusinessProcessIds'), [query]);\n\tconst businessProcessIds = useMemo(() => query.get('businessProcessIds'), [query]);\n\tconst serviceDeliveryComponentIds = useMemo(() => query.get('serviceDeliveryComponentIds'), [query]);\n\tconst programId = useMemo(() => query.get('programId'), [query]);\n\tconst themeIds = useMemo(() => query.get('themeIds'), [query]);\n\tconst sortField = useMemo(() => query.get('sortField'), [query]);\n\tconst sortDirection = useMemo(() => query.get('sortDirection'), [query]);\n\tconst page = useMemo(() => query.get('page') ?? '0', [query]);\n\tconst size = useMemo(() => query.get('size') ?? '10', [query]);\n\n\tconst clearSelectionsRef = useRef<() => void>();\n\tconst [filtersAreLoading, setFiltersAreLoading] = useState(false);\n\tconst [tableIsLoading, setTableIsLoading] = useState(false);\n\tconst [tableSelectAll, setTableSelectAll] = useState(false);\n\tconst [tableColumnsData, setTableColumnsData] = useState(bestPracticeTableColumns);\n\tconst [tableHeadersData] = useState(bestPracticeTableHeaders);\n\tconst [totalCount, setTotalCount] = useState(0);\n\tconst [totalCountDescription, setTotalCountDescription] = useState('0');\n\tconst [tableFilters, setTableFilters] = useState();\n\n\tconst [uncheckedRowsIds, setUncheckedRowsIds] = useState([]);\n\tconst [businessProcessFilters, setBusinessProcessFilters] = useState([]);\n\tconst [tableRowData, setTableRowData] = useState[]>([]);\n\tconst [downloadData, setDownloadData] = useState();\n\tconst downloadUrl = `${config.HACKETT_ADVISORY_BASE_URL}advisory-service/api/v1/best-practice/download`;\n\tconst [checkedRowsIds, setCheckedRowsIds] = useState([]);\n\t/* ------------------------------------- */\n\t/* Must default a programId */\n\t/* ------------------------------------- */\n\tuseEffect(() => {\n\t\tif (!tableFilters || tableFilters.programs.length <= 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!programId) {\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', programId: tableFilters.programs[0].id }, search));\n\t\t}\n\t}, [history, pathname, programId, search, tableFilters]);\n\n\tconst fetchTableFilters = useCallback(async () => {\n\t\ttry {\n\t\t\tsetFiltersAreLoading(true);\n\n\t\t\tconst response = await bestPracticeService\n\t\t\t\t.getFilters({\n\t\t\t\t\t...(programId && { programId: programId }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetBusinessProcessFilters(formOptionToMultiSelectOption(response.businessProcesses));\n\t\t\tsetTableFilters({\n\t\t\t\tbusinessProcesses: response.businessProcesses,\n\t\t\t\tserviceDeliveryComponents: response.serviceDeliveryComponents,\n\t\t\t\tthemes: response.themes,\n\t\t\t\ttopics: response.topics,\n\t\t\t\tprograms: response.programs,\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetFiltersAreLoading(false);\n\t\t}\n\t}, [handleError, programId]);\n\n\tuseEffect(() => {\n\t\tfetchTableFilters();\n\t}, [fetchTableFilters]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tsetTableIsLoading(true);\n\n\t\tif (!programId) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tconst response = await bestPracticeService\n\t\t\t\t.getBestPractices({\n\t\t\t\t\t...(parentBusinessProcessIds && { parentBusinessProcessIds }),\n\t\t\t\t\t...(businessProcessIds && { businessProcessIds }),\n\t\t\t\t\t...(page && { page }),\n\t\t\t\t\t...(serviceDeliveryComponentIds && {\n\t\t\t\t\t\tserviceDeliveryComponentIds,\n\t\t\t\t\t}),\n\t\t\t\t\t...(size && { size }),\n\t\t\t\t\t...(sortDirection && { sortDirection }),\n\t\t\t\t\t...(sortField && { sortField }),\n\t\t\t\t\t...(themeIds && { themeIds }),\n\t\t\t\t\tprogramId,\n\t\t\t\t})\n\t\t\t\t.fetch();\n\t\t\tconst formattedBestPractices = response.bestPractices.map((bp) => {\n\t\t\t\tlet selectAll = tableSelectAll;\n\t\t\t\tif (uncheckedRowsIds.length && uncheckedRowsIds?.includes(bp.bestPracticeId)) {\n\t\t\t\t\tselectAll = false;\n\t\t\t\t} else if (checkedRowsIds.length && checkedRowsIds?.includes(bp.bestPracticeId)) {\n\t\t\t\t\tselectAll = true;\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\trowId: bp.bestPracticeId,\n\t\t\t\t\tchecked: selectAll,\n\t\t\t\t\texpanded: false,\n\t\t\t\t\tcolumnData: bp,\n\t\t\t\t};\n\t\t\t});\n\n\t\t\tsetTotalCount(response.totalCount);\n\t\t\tsetTotalCountDescription(response.totalCountDescription);\n\t\t\tsetTableRowData(formattedBestPractices);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetTableIsLoading(false);\n\t\t}\n\t}, [\n\t\tbusinessProcessIds,\n\t\thandleError,\n\t\tpage,\n\t\tparentBusinessProcessIds,\n\t\tprogramId,\n\t\tserviceDeliveryComponentIds,\n\t\tsize,\n\t\tsortDirection,\n\t\tsortField,\n\t\tthemeIds,\n\t\ttableSelectAll,\n\t\tcheckedRowsIds,\n\t\tuncheckedRowsIds,\n\t]);\n\n\tuseEffect(() => {\n\t\tfetchData();\n\t}, [fetchData]);\n\n\tconst allBpSelections = useMemo(() => {\n\t\treturn flattenParentAndChildIdsForSelection(\n\t\t\tbusinessProcessFilters,\n\t\t\tparentBusinessProcessIds?.split('|').filter((s) => s),\n\t\t\tbusinessProcessIds?.split('|').filter((s) => s)\n\t\t);\n\t}, [businessProcessFilters, businessProcessIds, parentBusinessProcessIds]);\n\n\tconst updateFilterSelection = useCallback(\n\t\t(filterKey: string, filterValue: string) => {\n\t\t\tif (clearSelectionsRef.current) {\n\t\t\t\tclearSelectionsRef.current();\n\t\t\t}\n\n\t\t\thistory.replace(\n\t\t\t\tconstructUrl(pathname, { page: '0', [filterKey]: filterValue }, filterKey !== 'programId' ? search : '')\n\t\t\t);\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst handleBusinessProcessesChange = useCallback(\n\t\t(selectedBusinessProcessIds: string[]) => {\n\t\t\tif (clearSelectionsRef.current) {\n\t\t\t\tclearSelectionsRef.current();\n\t\t\t}\n\n\t\t\tconst { parentIds, remainingChildrenIds } = getTopLevelParentAndChildrenIds(\n\t\t\t\tbusinessProcessFilters,\n\t\t\t\tselectedBusinessProcessIds\n\t\t\t);\n\n\t\t\thistory.replace(\n\t\t\t\tconstructUrl(\n\t\t\t\t\tpathname,\n\t\t\t\t\t{\n\t\t\t\t\t\tpage: '0',\n\t\t\t\t\t\tparentBusinessProcessIds: parentIds,\n\t\t\t\t\t\tbusinessProcessIds: remainingChildrenIds,\n\t\t\t\t\t},\n\t\t\t\t\tsearch\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\t\t[businessProcessFilters, history, pathname, search]\n\t);\n\n\tconst handleTableSort = useCallback(\n\t\t(sortKey: string, sortDirection: SORT_DIRECTION) => {\n\t\t\tif (clearSelectionsRef.current) {\n\t\t\t\tclearSelectionsRef.current();\n\t\t\t}\n\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', sortField: sortKey, sortDirection }, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst handlePaginationChange = useCallback(\n\t\t({ pageSize, pageIndex }) => {\n\t\t\thistory.replace(constructUrl(pathname, { page: String(pageIndex), size: String(pageSize) }, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tuseEffect(() => {\n\t\tlet checkedRowIds = checkedRowsIds.join('|');\n\t\tlet uncheckedRowIds = '';\n\t\tif (tableSelectAll) {\n\t\t\tuncheckedRowIds = uncheckedRowsIds.join('|');\n\t\t}\n\n\t\tsetDownloadData({\n\t\t\tselectAll: tableSelectAll,\n\t\t\t...(checkedRowsIds.length > 0 && tableSelectAll ? { uncheckedRowIds } : { checkedRowIds }),\n\t\t\tselectedColumns: Object.values(tableColumnsData)\n\t\t\t\t.filter((item) => item.isShowing)\n\t\t\t\t.map((item) => item.columnId)\n\t\t\t\t.join('|'),\n\t\t\t...(businessProcessIds && { businessProcessIds }),\n\t\t\t...(parentBusinessProcessIds && { parentBusinessProcessIds }),\n\t\t\t...(serviceDeliveryComponentIds && { serviceDeliveryComponentIds }),\n\t\t\t...(themeIds && { themeIds }),\n\t\t\t...(programId && { programId }),\n\t\t});\n\t}, [\n\t\tbusinessProcessIds,\n\t\tparentBusinessProcessIds,\n\t\tprogramId,\n\t\tserviceDeliveryComponentIds,\n\t\ttableColumnsData,\n\t\ttableRowData,\n\t\ttableSelectAll,\n\t\tthemeIds,\n\t\tuncheckedRowsIds,\n\t\tcheckedRowsIds,\n\t]);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Best Practices\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tHackett-Certified® Best Practices\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tBusiness Processes\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{businessProcessIds ? 'Select' : 'Any'}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{tableFilters && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{tableFilters && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tclearSelectionsRef.current = clearSelections;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeaderProps = {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tsortable: tableHeader.isSortable,\n\t\t\t\t\t\t\t\t\t\t\t\tsortKey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tonSort: handleTableSort,\n\t\t\t\t\t\t\t\t\t\t\t\tsortDirection:\n\t\t\t\t\t\t\t\t\t\t\t\t\tsortField && sortField === tableHeader.tableHeaderId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (sortDirection as SORT_DIRECTION)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.BEST_PRACTICES:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{totalCountDescription} {tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttableBodyRowRenderer={(\n\t\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\t\t{ id: checkboxId, label: checkboxLabel, ...checkboxProps }\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\thistory.push(`/best-practices/${data.rowId}`);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.BEST_PRACTICES:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.description}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.BUSINESS_PROCESS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.businessProcess}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.SERVICE_DELIVERY_COMPONENT:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.serviceDeliveryComponent}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.CERTIFICATION_STATUS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.certificationStatus}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.THEMES:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.themes}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.LEVEL_OF_EFFORT:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.levelOfEffort}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.TIME_FRAME:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.timeFrame}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase BEST_PRACTICE_TABLE_COLUMN_IDS.CODE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.code}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn N/A;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useHistory, useLocation, useParams } from 'react-router-dom';\nimport { Button, Col, Container, Form, Row, Tab, Tabs } from 'react-bootstrap';\n\nimport { constructUrl } from '@/lib/utils';\nimport { BarModel, BestPracticeItemDetailModel, MetricModel, ProgramFormOption } from '@/lib/models';\nimport { bestPracticeService } from '@/lib/services';\nimport { useCopyTextToClipboard, useQuery } from '@/hooks';\nimport { AsyncPage, Meter, Select } from '@/components';\nimport { Helmet } from 'react-helmet';\n\ninterface MeterLevel {\n\tvalue: number;\n\tcolor: 'primary' | 'secondary' | 'tertiary' | 'success' | 'warning' | 'info' | 'danger';\n}\n\nexport const BestPracticeDetail = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst { bestPracticeId } = useParams<{ bestPracticeId: string }>();\n\tconst query = useQuery();\n\tconst programId = useMemo(() => query.get('programId'), [query]);\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [bestPractice, setBestPractice] = useState();\n\tconst [levelOfEffort, setLevelOfEffort] = useState({ value: 0, color: 'success' });\n\tconst [technicalComplexity, setTechnicalComplexity] = useState({ value: 0, color: 'success' });\n\tconst [organizationalComplexity, setOrganizationalComplexity] = useState({\n\t\tvalue: 0,\n\t\tcolor: 'success',\n\t});\n\tconst [technicalSkills, setTechnicalSkills] = useState({ value: 0, color: 'success' });\n\tconst [businessSkills, setBusinessSkills] = useState({ value: 0, color: 'success' });\n\tconst [bestPracticeMetrics, setBestPracticeMetrics] = useState([]);\n\n\t/* ------------------------------------- */\n\t/* Must default a programId */\n\t/* ------------------------------------- */\n\tuseEffect(() => {\n\t\tif (!programOptions || programOptions.length <= 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!programId) {\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', programId: programOptions[0].id }, search));\n\t\t}\n\t}, [history, pathname, programId, programOptions, search]);\n\n\tconst fetchFilters = useCallback(async () => {\n\t\tconst response = await bestPracticeService.getBestPracticeDetailsFilters(bestPracticeId).fetch();\n\t\tsetProgramOptions(response.programs);\n\t}, [bestPracticeId]);\n\n\tconst fetchBestPractice = useCallback(async () => {\n\t\tconst response = await bestPracticeService.getBestPractice(bestPracticeId).fetch();\n\n\t\tsetBestPractice(response.bestPractice);\n\t\tsetImplementationConsiderations(response.bestPractice.levelOfEffort, setLevelOfEffort);\n\t\tsetImplementationConsiderations(response.bestPractice.technicalComplexity, setTechnicalComplexity);\n\t\tsetImplementationConsiderations(response.bestPractice.organizationalComplexity, setOrganizationalComplexity);\n\t\tsetImplementationConsiderations(response.bestPractice.technicalSkillsRequired, setTechnicalSkills);\n\t\tsetImplementationConsiderations(response.bestPractice.businessSkillsRequired, setBusinessSkills);\n\t}, [bestPracticeId]);\n\n\tconst fetchMetrics = useCallback(async () => {\n\t\tconst response = await bestPracticeService\n\t\t\t.getBestPractice(bestPracticeId, {\n\t\t\t\t...(programId && { programId }),\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tsetBestPracticeMetrics(response.bestPractice.metrics ?? []);\n\t}, [bestPracticeId, programId]);\n\n\tfunction setImplementationConsiderations(implementationValue: string, setFn: Function) {\n\t\tswitch (implementationValue) {\n\t\t\tcase 'LOW':\n\t\t\t\tsetFn({ value: 33, color: 'success' });\n\t\t\t\tbreak;\n\t\t\tcase 'MEDIUM':\n\t\t\t\tsetFn({ value: 66, color: 'warning' });\n\t\t\t\tbreak;\n\t\t\tcase 'HIGH':\n\t\t\t\tsetFn({ value: 99, color: 'danger' });\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tsetFn({ value: 0, color: 'success' });\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tfunction handleShareButtonClick() {\n\t\tcopyTextToClipboard(`${window.location.origin}/best-practices/${bestPracticeId}`, 'Link copied to clipboard.');\n\t}\n\n\tconst handleProgramSelectChange = useCallback(\n\t\t({ currentTarget }: React.ChangeEvent) => {\n\t\t\thistory.replace(constructUrl(pathname, { programId: currentTarget.value }, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst getMeterColor = useCallback((bar: BarModel) => {\n\t\tswitch (bar.barColor) {\n\t\t\tcase 'PURPLE':\n\t\t\t\treturn 'tertiary';\n\t\t\tcase 'GREEN':\n\t\t\t\treturn 'success';\n\t\t\tcase 'DARK_GREEN':\n\t\t\t\treturn 'info';\n\t\t\tcase 'YELLOW':\n\t\t\t\treturn 'warning';\n\t\t\tcase 'RED':\n\t\t\t\treturn 'danger';\n\t\t\tcase 'BLUE':\n\t\t\tdefault:\n\t\t\t\treturn 'primary';\n\t\t}\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Best Practices - Best Practice Detail\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    {bestPractice?.title}

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t{bestPractice?.background && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Background

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{bestPractice?.serviceDeliveries && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Service Delivery Component

    \n\t\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t\t{bestPractice?.serviceDeliveries.map((item, index) => (\n\t\t\t\t\t\t\t\t\t\t\t\t
    • {item}
    • \n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{bestPractice?.additionalInformation && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Additional Talking Points

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{bestPractice?.decisionCriteria && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Decision Criteria

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{bestPractice?.prerequisitesAndEnablers?.length ? (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Prerequisites & Enablers

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{bestPractice?.prerequisitesAndEnablers.map((item, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t) : \"\"}\n\n\t\t\t\t\t\t\t{bestPractice?.benefitsAndRisks?.length ? (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Benefits & Risks

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{bestPractice?.benefitsAndRisks.map((item, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t) : \"\"}\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{bestPractice?.type && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    Best Practice Type

    \n\t\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t\t
    • {bestPractice?.type}
    • \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t{bestPractice?.themes && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    Best Practice Themes

    \n\t\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t\t{bestPractice?.themes.map((item, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn
    • {item}
    • ;\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t{bestPractice?.enablers && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    Primary Enablers

    \n\t\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t\t{bestPractice?.enablers.map((item, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn
    • {item}
    • ;\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t{bestPractice?.timeframeToImplement && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    Time to Implement

    \n\t\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t\t
    • {bestPractice?.timeframeToImplement}
    • \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t{bestPractice?.approach && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    Approach

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t{bestPractice?.otherImplementationIssues && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t

    Other Implementation Issues

    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t{bestPractice?.metrics && bestPractice?.metrics.length > 0 && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    Performance Metrics ({bestPracticeMetrics.length})

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{programOptions.map((po) => (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{bestPracticeMetrics.map((metric, metricIndex) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    {metric.title}

    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric.metricBars.map((barItem, barIndex) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric.businessProcess && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    BUSINESS PROCESS

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    {metric.businessProcess}
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric.driver && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    DRIVER

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    {metric.driver}
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric.category && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    CATEGORY

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    {metric.category}
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric.source && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    Source

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    {metric.source}
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useState, useEffect, useMemo, useRef } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { Col, Container, Form, Row } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport {\n\tperformanceMetricsTableHeaders,\n\tperformanceMetricsTableColumns,\n\tPERFORMANCE_METRICS_TABLE_COLUMN_IDS,\n} from '@/lib/__mocks__';\nimport { PerformanceMetricModel, PerformanceMetricFilterModel } from '@/lib/models';\nimport { TableRowConfig, PerformanceMetricDownloadParametersModel } from '@/components/table/models';\nimport { constructUrl, formOptionToMultiSelectOption } from '@/lib/utils';\nimport { performanceMetricService } from '@/lib/services';\nimport { useHandleError, useNavigationConfig, useQuery } from '@/hooks';\nimport {\n\tflattenParentAndChildIdsForSelection,\n\tgetTopLevelParentAndChildrenIds,\n\tMultiSelect,\n\tMultiSelectOption,\n} from '@/components';\nimport {\n\tSORT_DIRECTION,\n\tTableCell,\n\tTableHeader,\n\tTableRenderer,\n\tTableRow,\n\tTableFilterDropdown,\n} from '@/components/table';\nimport config from '@/lib/config';\nimport { cloneDeep } from 'lodash';\n\nexport const PerformanceMetrics = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst handleError = useHandleError();\n\tconst { navigationConfig } = useNavigationConfig();\n\n\tconst query = useQuery();\n\tconst parentBusinessProcessIds = useMemo(() => query.get('parentBusinessProcessIds'), [query]);\n\tconst businessProcessIds = useMemo(() => query.get('businessProcessIds'), [query]);\n\tconst driverComponentIds = useMemo(() => query.get('driverComponentIds'), [query]);\n\tconst programId = useMemo(() => query.get('programId'), [query]);\n\tconst page = useMemo(() => query.get('page') ?? '0', [query]);\n\tconst size = useMemo(() => query.get('size') ?? '10', [query]);\n\tconst sortDirection = useMemo(() => query.get('sortDirection'), [query]);\n\tconst sortField = useMemo(() => query.get('sortField'), [query]);\n\tconst sourceComponentIds = useMemo(() => query.get('sourceComponentIds'), [query]);\n\n\tconst clearSelectionsRef = useRef<() => void>();\n\tconst firstLoadComplete = useRef(false);\n\tconst [filtersAreLoading, setFiltersAreLoading] = useState(false);\n\tconst [tableIsLoading, setTableIsLoading] = useState(false);\n\tconst [tableSelectAll, setTableSelectAll] = useState(false);\n\tconst [tableColumnsData, setTableColumnsData] = useState(performanceMetricsTableColumns);\n\tconst [tableHeadersData] = useState(performanceMetricsTableHeaders);\n\tconst [totalCount, setTotalCount] = useState(0);\n\tconst [totalCountDescription, setTotalCountDescription] = useState('0');\n\tconst initialTableFilters = useRef();\n\tconst [tableFilters, setTableFilters] = useState();\n\n\tconst [businessProcessFilters, setBusinessProcessFilters] = useState([]);\n\tconst [tableRowData, setTableRowData] = useState[]>([]);\n\tconst [downloadData, setDownloadData] = useState();\n\tconst [uncheckedRowsIds, setUncheckedRowsIds] = useState([]);\n\tconst [checkedRowsIds, setCheckedRowsIds] = useState([]);\n\n\tconst downloadUrl = useMemo(() => {\n\t\treturn constructUrl(`${config.HACKETT_ADVISORY_BASE_URL}advisory-service/api/v1/performance-metric/download`, {\n\t\t\tprogramId,\n\t\t});\n\t}, [programId]);\n\n\t/* ------------------------------------- */\n\t/* Must default a programId */\n\t/* ------------------------------------- */\n\tuseEffect(() => {\n\t\tif (!tableFilters || tableFilters.programs.length <= 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!programId) {\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', programId: tableFilters.programs[0].id }, search));\n\t\t}\n\t}, [history, pathname, programId, search, tableFilters]);\n\n\tconst fetchTableFilters = useCallback(async () => {\n\t\ttry {\n\t\t\tsetFiltersAreLoading(true);\n\n\t\t\tconst response = await performanceMetricService\n\t\t\t\t.getFilters({\n\t\t\t\t\t...(programId && { programId: programId }),\n\t\t\t\t\t...(parentBusinessProcessIds && { parentBusinessProcessIds }),\n\t\t\t\t\t...(businessProcessIds && { businessProcessIds }),\n\t\t\t\t\t...(driverComponentIds && { driverComponentIds }),\n\t\t\t\t\t...(sourceComponentIds && { sourceComponentIds }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetBusinessProcessFilters(formOptionToMultiSelectOption(response.businessProcess));\n\n\t\t\tif (firstLoadComplete.current === false) {\n\t\t\t\tinitialTableFilters.current = {\n\t\t\t\t\tdriver: response.driver,\n\t\t\t\t\tsource: response.source,\n\t\t\t\t\tprograms: response.programs,\n\t\t\t\t};\n\t\t\t\tsetTableFilters({\n\t\t\t\t\tdriver: response.driver,\n\t\t\t\t\tsource: response.source,\n\t\t\t\t\tprograms: response.programs,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tsetTableFilters({\n\t\t\t\t\tdriver: (initialTableFilters.current?.driver ?? []).map((d) => {\n\t\t\t\t\t\tconst match = response.driver.find((d2) => d2.id === d.id);\n\t\t\t\t\t\tif (match) {\n\t\t\t\t\t\t\treturn d;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...d,\n\t\t\t\t\t\t\t\tdisabled: true,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\tsource: (initialTableFilters.current?.source ?? []).map((s) => {\n\t\t\t\t\t\tconst match = response.source.find((s2) => s2.id === s.id);\n\t\t\t\t\t\tif (match) {\n\t\t\t\t\t\t\treturn s;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...s,\n\t\t\t\t\t\t\t\tdisabled: true,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\tprograms: response.programs,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfirstLoadComplete.current = true;\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetFiltersAreLoading(false);\n\t\t}\n\t}, [handleError, programId, parentBusinessProcessIds, businessProcessIds, driverComponentIds, sourceComponentIds]);\n\n\tuseEffect(() => {\n\t\tfetchTableFilters();\n\t}, [fetchTableFilters]);\n\n\tconst fetchData = useCallback(async () => {\n\t\ttry {\n\t\t\tsetTableIsLoading(true);\n\n\t\t\tif (!programId) {\n\t\t\t\tthrow new Error('programId is undefined');\n\t\t\t}\n\n\t\t\tconst response = await performanceMetricService\n\t\t\t\t.getPerformanceMetrics({\n\t\t\t\t\t...(parentBusinessProcessIds && { parentBusinessProcessIds }),\n\t\t\t\t\t...(businessProcessIds && { businessProcessIds }),\n\t\t\t\t\t...(driverComponentIds && { driverComponentIds }),\n\t\t\t\t\t...(page && { page }),\n\t\t\t\t\t...(size && { size }),\n\t\t\t\t\t...(sortDirection && { sortDirection }),\n\t\t\t\t\t...(sortField && { sortField }),\n\t\t\t\t\t...(sourceComponentIds && { sourceComponentIds }),\n\t\t\t\t\tprogramId,\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tconst formattedPerformanceMetrics = response.performanceMetrics.map((pm) => {\n\t\t\t\tlet selectAll = tableSelectAll;\n\t\t\t\tif (uncheckedRowsIds.length && uncheckedRowsIds?.includes(pm.performanceMetricId)) {\n\t\t\t\t\tselectAll = false;\n\t\t\t\t} else if (checkedRowsIds.length && checkedRowsIds?.includes(pm.performanceMetricId)) {\n\t\t\t\t\tselectAll = true;\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\trowId: pm.performanceMetricId,\n\t\t\t\t\tchecked: selectAll,\n\t\t\t\t\texpanded: false,\n\t\t\t\t\tcolumnData: pm,\n\t\t\t\t};\n\t\t\t});\n\n\t\t\tsetTotalCount(response.totalCount);\n\t\t\tsetTotalCountDescription(response.totalCountDescription);\n\t\t\tsetTableRowData(formattedPerformanceMetrics);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetTableIsLoading(false);\n\t\t}\n\t}, [\n\t\tbusinessProcessIds,\n\t\tdriverComponentIds,\n\t\thandleError,\n\t\tpage,\n\t\tparentBusinessProcessIds,\n\t\tprogramId,\n\t\tsize,\n\t\tsortDirection,\n\t\tsortField,\n\t\tsourceComponentIds,\n\t\ttableSelectAll,\n\t\tuncheckedRowsIds,\n\t\tcheckedRowsIds,\n\t]);\n\n\tuseEffect(() => {\n\t\tif (!programId) {\n\t\t\treturn;\n\t\t}\n\n\t\tfetchData();\n\t}, [fetchData, programId]);\n\n\tconst allBpSelections = useMemo(() => {\n\t\treturn flattenParentAndChildIdsForSelection(\n\t\t\tbusinessProcessFilters,\n\t\t\tparentBusinessProcessIds?.split('|').filter((s) => s),\n\t\t\tbusinessProcessIds?.split('|').filter((s) => s)\n\t\t);\n\t}, [businessProcessFilters, businessProcessIds, parentBusinessProcessIds]);\n\n\tconst updateFilterSelection = useCallback(\n\t\t(filterKey: string, filterValue: string) => {\n\t\t\tif (clearSelectionsRef.current) {\n\t\t\t\tclearSelectionsRef.current();\n\t\t\t}\n\n\t\t\tif (filterKey === 'programId') {\n\t\t\t\tfirstLoadComplete.current = false;\n\t\t\t}\n\n\t\t\thistory.replace(\n\t\t\t\tconstructUrl(pathname, { page: '0', [filterKey]: filterValue }, filterKey === 'programId' ? '' : search)\n\t\t\t);\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst handleBusinessProcessesChange = useCallback(\n\t\t(selectedBusinessProcessIds: string[]) => {\n\t\t\tif (clearSelectionsRef.current) {\n\t\t\t\tclearSelectionsRef.current();\n\t\t\t}\n\n\t\t\tconst { parentIds, remainingChildrenIds } = getTopLevelParentAndChildrenIds(\n\t\t\t\tbusinessProcessFilters,\n\t\t\t\tselectedBusinessProcessIds\n\t\t\t);\n\n\t\t\thistory.replace(\n\t\t\t\tconstructUrl(\n\t\t\t\t\tpathname,\n\t\t\t\t\t{ page: '0', parentBusinessProcessIds: parentIds, businessProcessIds: remainingChildrenIds },\n\t\t\t\t\tsearch\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\t\t[businessProcessFilters, history, pathname, search]\n\t);\n\n\tconst handleTableSort = useCallback(\n\t\t(sortKey: string, sortDirection: SORT_DIRECTION) => {\n\t\t\tif (clearSelectionsRef.current) {\n\t\t\t\tclearSelectionsRef.current();\n\t\t\t}\n\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', sortField: sortKey, sortDirection }, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst handlePaginationChange = useCallback(\n\t\t({ pageSize, pageIndex }) => {\n\t\t\thistory.replace(constructUrl(pathname, { page: String(pageIndex), size: String(pageSize) }, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tuseEffect(() => {\n\t\tlet checkedRowIds = checkedRowsIds.join('|');\n\t\tlet uncheckedRowIds = '';\n\t\tif (tableSelectAll) {\n\t\t\tuncheckedRowIds = uncheckedRowsIds.join('|');\n\t\t}\n\t\tsetDownloadData({\n\t\t\tselectAll: tableSelectAll,\n\t\t\t...(checkedRowsIds.length > 0 && tableSelectAll ? { uncheckedRowIds } : { checkedRowIds }),\n\t\t\tselectedColumns: Object.values(tableColumnsData)\n\t\t\t\t.filter((item) => item.isShowing)\n\t\t\t\t.map((item) => item.columnId)\n\t\t\t\t.join('|'),\n\t\t\t...(programId && { programId }),\n\t\t\t...(businessProcessIds && { businessProcessIds }),\n\t\t\t...(parentBusinessProcessIds && { parentBusinessProcessIds }),\n\t\t\t...(sourceComponentIds && { sourceComponentIds }),\n\t\t\t...(driverComponentIds && { driverComponentIds }),\n\t\t});\n\t}, [\n\t\tbusinessProcessIds,\n\t\tdriverComponentIds,\n\t\tparentBusinessProcessIds,\n\t\tprogramId,\n\t\tsourceComponentIds,\n\t\ttableColumnsData,\n\t\ttableRowData,\n\t\ttableSelectAll,\n\t\tuncheckedRowsIds,\n\t\tcheckedRowsIds,\n\t]);\n\n\t/* ---------------------------------- */\n\t/* Optional Column logic */\n\t/* ---------------------------------- */\n\tuseEffect(() => {\n\t\tif (!tableFilters) return;\n\t\tconst selectedProgramId = tableFilters.programs.find((p) => p.id === programId);\n\t\tif (!selectedProgramId) return;\n\n\t\tsetTableColumnsData(() => {\n\t\t\tconst { performanceMetricTypes } = selectedProgramId;\n\t\t\tconst tableColumnsDataClone = cloneDeep(performanceMetricsTableColumns);\n\n\t\t\tperformanceMetricTypes.forEach((type) => {\n\t\t\t\tconst column = tableColumnsDataClone[type as PERFORMANCE_METRICS_TABLE_COLUMN_IDS];\n\t\t\t\tif (!column) return;\n\n\t\t\t\tcolumn.isHidable = true;\n\t\t\t\tcolumn.isShownByDefault = true;\n\t\t\t\tcolumn.isShowing = true;\n\t\t\t});\n\n\t\t\treturn tableColumnsDataClone;\n\t\t});\n\t}, [programId, tableFilters]);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Benchmark Metrics\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    Benchmark Metrics

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tBusiness Processes\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{businessProcessIds ? 'Select' : 'Any'}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tclearSelectionsRef.current = clearSelections;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeaderProps = {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tsortable: tableHeader.isSortable,\n\t\t\t\t\t\t\t\t\t\t\t\tsortKey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tonSort: handleTableSort,\n\t\t\t\t\t\t\t\t\t\t\t\tsortDirection:\n\t\t\t\t\t\t\t\t\t\t\t\t\tsortField && sortField === tableHeader.tableHeaderId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (sortDirection as SORT_DIRECTION)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PERFORMANCE_METRICS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{totalCountDescription} {tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttableBodyRowRenderer={(\n\t\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\t\t{ id: checkboxId, label: checkboxLabel, ...checkboxProps }\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\thistory.push(`/performance-metrics/${data.rowId}?programId=${programId}`);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PERFORMANCE_METRICS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.description}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.BUSINESS_PROCESS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.businessProcess}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.PEER_GROUP:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.peerGroup}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DIGITAL_WORLD_CLASS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.worldClass}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.TOP_PERFORMER:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.topPerformer}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.INDUSTRY_PEER:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.industryPeer}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.FIRST_QUARTILE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.firstQuartile}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DRIVER:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.driver}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.CATEGORY:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.category}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase PERFORMANCE_METRICS_TABLE_COLUMN_IDS.SOURCE:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.source}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn N/A;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useHistory, useLocation, useParams } from 'react-router-dom';\nimport { Card, Col, Container, Form, Row } from 'react-bootstrap';\n\nimport { constructUrl } from '@/lib/utils';\nimport { PerformanceMetricModel, ProgramFormOption } from '@/lib/models';\nimport { performanceMetricService } from '@/lib/services';\nimport { useQuery } from '@/hooks';\nimport { AsyncPage, LinkBox, Meter, Select } from '@/components';\nimport { PERFORMANCE_METRICS_TABLE_COLUMN_IDS } from '@/lib/__mocks__';\nimport { Helmet } from 'react-helmet';\n\nexport const PerformanceMetricsDetail = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst { performanceMetricId } = useParams<{\n\t\tperformanceMetricId: string;\n\t}>();\n\tconst query = useQuery();\n\tconst programId = useMemo(() => query.get('programId'), [query]);\n\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [performanceMetric, setPerformanceMetric] = useState();\n\tconst [metricsToShow, setMetricsToShow] = useState([]);\n\tconst [maxValue, setMaxValue] = useState(100);\n\n\t/* ------------------------------------- */\n\t/* Must default a programId */\n\t/* ------------------------------------- */\n\tuseEffect(() => {\n\t\tif (!programOptions || programOptions.length <= 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!programId) {\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', programId: programOptions[0].id }, search));\n\t\t}\n\t}, [history, pathname, programId, programOptions, search]);\n\n\tconst fetchFilters = useCallback(async () => {\n\t\tconst response = await performanceMetricService.getPerformanceMetricDetailsFilters(performanceMetricId).fetch();\n\t\tsetProgramOptions(response.programs);\n\t}, [performanceMetricId]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tif (!programId) {\n\t\t\tthrow new Error('programId is undefined.');\n\t\t}\n\n\t\tconst response = await performanceMetricService\n\t\t\t.getPerformanceMetricById(performanceMetricId, {\n\t\t\t\tprogramId,\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tconst largestValue = Math.max(\n\t\t\tresponse.peerGroupValue,\n\t\t\tresponse.worldClassValue,\n\t\t\tresponse.industryPeerValue,\n\t\t\tresponse.firstQuartileValue,\n\t\t\tresponse.topPerformerValue\n\t\t);\n\n\t\tsetPerformanceMetric(response);\n\t\tsetMaxValue(largestValue);\n\t}, [performanceMetricId, programId]);\n\n\tconst handleProgramSelectChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\thistory.replace(constructUrl(pathname, { programId: currentTarget.value }, search));\n\t};\n\n\tuseEffect(() => {\n\t\tif (!programId) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst selectedOption = programOptions.find((p) => p.id === programId);\n\n\t\tif (selectedOption) {\n\t\t\tsetMetricsToShow(selectedOption.performanceMetricTypes as PERFORMANCE_METRICS_TABLE_COLUMN_IDS[]);\n\t\t}\n\t}, [programId, programOptions]);\n\n\tconst showDigitalWorldClass = useMemo(() => {\n\t\treturn metricsToShow.includes(PERFORMANCE_METRICS_TABLE_COLUMN_IDS.DIGITAL_WORLD_CLASS);\n\t}, [metricsToShow]);\n\n\tconst showIndustryPeer = useMemo(() => {\n\t\treturn metricsToShow.includes(PERFORMANCE_METRICS_TABLE_COLUMN_IDS.INDUSTRY_PEER);\n\t}, [metricsToShow]);\n\n\tconst showFirstQuartile = useMemo(() => {\n\t\treturn metricsToShow.includes(PERFORMANCE_METRICS_TABLE_COLUMN_IDS.FIRST_QUARTILE);\n\t}, [metricsToShow]);\n\n\tconst showTopPerformer = useMemo(() => {\n\t\treturn metricsToShow.includes(PERFORMANCE_METRICS_TABLE_COLUMN_IDS.TOP_PERFORMER);\n\t}, [metricsToShow]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Benchmark Metrics - Benchmark Metric Detail\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    {performanceMetric?.description}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{showIndustryPeer && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{showTopPerformer && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{showFirstQuartile && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{showDigitalWorldClass && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Business Process

    \n\t\t\t\t\t\t\t\t\t

    {performanceMetric?.businessProcess}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Driver

    \n\t\t\t\t\t\t\t\t\t

    {performanceMetric?.driver}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Category

    \n\t\t\t\t\t\t\t\t\t

    {performanceMetric?.category}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Source

    \n\t\t\t\t\t\t\t\t\t

    {performanceMetric?.source}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useRef } from 'react';\nimport { Switch, Redirect, useRouteMatch, Route } from 'react-router-dom';\n\nimport { EngagementDashboard, EngagementPlan, NoMatch } from '@/pages';\nimport { NavigationSub } from '@/components';\n\nexport const Engagement = () => {\n\tconst { path } = useRouteMatch();\n\n\tconst routes = useRef([\n\t\t{\n\t\t\tpath: path,\n\t\t\texact: true,\n\t\t\tmain: () => ,\n\t\t},\n\t\t{\n\t\t\tpath: `${path}/dashboard`,\n\t\t\texact: true,\n\t\t\tmain: EngagementDashboard,\n\t\t},\n\t\t{\n\t\t\tpath: `${path}/engagement-plan`,\n\t\t\texact: true,\n\t\t\tmain: EngagementPlan,\n\t\t},\n\t\t{\n\t\t\tpath: `${path}/*`,\n\t\t\texact: false,\n\t\t\tmain: NoMatch,\n\t\t},\n\t]).current;\n\n\treturn (\n\t\t<>\n\t\t\t\n\n\t\t\t\n\t\t\t\t{routes.map((route, index) => {\n\t\t\t\t\treturn } />;\n\t\t\t\t})}\n\t\t\t\n\t\t\n\t);\n};\n","import React, { useRef } from 'react';\nimport { Switch, useRouteMatch, Route } from 'react-router-dom';\n\nimport { useNavigationConfig } from '@/hooks';\nimport { BrowseEvents, EventDetail, NoMatch, PerformanceStudies } from '@/pages';\n\nexport const Events = () => {\n\tconst { path } = useRouteMatch();\n\tconst { navigationConfig } = useNavigationConfig();\n\n\tconst routes = useRef([\n\t\t...(navigationConfig?.allowBrowseEvents\n\t\t\t? [\n\t\t\t\t{\n\t\t\t\t\tpath: `${path}/browse-events`,\n\t\t\t\t\texact: true,\n\t\t\t\t\tmain: BrowseEvents,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tpath: `${path}/browse-events/:eventId`,\n\t\t\t\t\texact: true,\n\t\t\t\t\tmain: EventDetail,\n\t\t\t\t},\n\t\t\t]\n\t\t\t: []),\n\t\t...(navigationConfig?.allowPerformanceStudies\n\t\t\t? [\n\t\t\t\t{\n\t\t\t\t\tpath: `${path}/performance-studies`,\n\t\t\t\t\texact: true,\n\t\t\t\t\tmain: PerformanceStudies,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tpath: `${path}/performance-studies/:eventId`,\n\t\t\t\t\texact: true,\n\t\t\t\t\tmain: EventDetail,\n\t\t\t\t},\n\t\t\t]\n\t\t\t: []),\n\t\t{\n\t\t\tpath: `${path}/*`,\n\t\t\texact: false,\n\t\t\tmain: NoMatch,\n\t\t},\n\t]).current;\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\t{routes.map((route, index) => {\n\t\t\t\t\treturn } />;\n\t\t\t\t})}\n\t\t\t\n\t\t\n\t);\n};\n","import { format } from 'date-fns';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { Link, useHistory, useLocation } from 'react-router-dom';\nimport { Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\nimport { Typeahead } from 'react-bootstrap-typeahead';\nimport { cloneDeep } from 'lodash';\nimport { constructUrl } from '@/lib/utils';\nimport { FormOption, InquiryModel, INQUIRY_STATUS_ID, INQUIRY_TYPE_ID } from '@/lib/models';\nimport { inquiryService } from '@/lib/services';\nimport { useQuery } from '@/hooks';\nimport { AsyncPage, ContactRequest, DateInput, MultiSelect, Select } from '@/components';\nimport { TablePagination } from '@/components/table';\nimport { Helmet } from 'react-helmet';\n\nexport const AdvisorInquiries = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\n\tconst searchParams = useQuery();\n\tconst clientId = useMemo(() => searchParams.get('clientId'), [searchParams]);\n\tconst programId = useMemo(() => searchParams.get('programId'), [searchParams]);\n\tconst status = useMemo(() => searchParams.get('status'), [searchParams]);\n\tconst advisorId = useMemo(() => searchParams.get('advisorId'), [searchParams]);\n\tconst grcAdvisorId = useMemo(() => searchParams.get('grcAdvisorId'), [searchParams]);\n\tconst accountManagerId = useMemo(() => searchParams.get('accountManagerId'), [searchParams]);\n\tconst type = useMemo(() => searchParams.get('type'), [searchParams]);\n\tconst topicIds = useMemo(() => searchParams.get('topicIds'), [searchParams]);\n\tconst requestNumber = useMemo(() => searchParams.get('requestNumber'), [searchParams]);\n\tconst fromDate = useMemo(() => searchParams.get('fromDate'), [searchParams]);\n\tconst toDate = useMemo(() => searchParams.get('toDate'), [searchParams]);\n\tconst page = useMemo(() => searchParams.get('page'), [searchParams]);\n\tconst size = 10;\n\n\tconst [inquiries, setInquiries] = useState([]);\n\tconst [totalInquiryCount, setTotalInquiryCount] = useState(0);\n\n\tconst isOrConditionAdvisor = useMemo(() => searchParams.get('isOrConditionAdvisor'), [searchParams]);\n\n\tconst [options, setOptions] = useState({\n\t\tclientOptions: [] as FormOption[],\n\t\tprogramOptions: [] as FormOption[],\n\t\tstatusOptions: [] as FormOption[],\n\t\tadvisorOptions: [] as FormOption[],\n\t\tgrcAdvisorOptions: [] as FormOption[],\n\t\taccountManagerOptions: [] as FormOption[],\n\t\ttypeOptions: [] as FormOption[],\n\t\ttopicsOptions: [] as FormOption[],\n\t\tisOrConditionOptions: [] as FormOption[],\n\t});\n\n\tconst [filterValues, setFilterValues] = useState({\n\t\tclientValue: clientId ?? '',\n\t\tprogramValue: programId ?? '',\n\t\tstatusValue: status ? (status ?? '').split('|').filter((s) => s) : [],\n\t\tadvisorValue: advisorId ?? '',\n\t\tgrcAdvisor: grcAdvisorId ?? '',\n\t\taccountManager: accountManagerId ?? '',\n\t\ttypeValue: type ?? '',\n\t\ttopicsValue: [] as FormOption[],\n\t\trequestNumber: '',\n\t\tfromDate: fromDate ? new Date(fromDate) : null,\n\t\ttoDate: toDate ? new Date(toDate) : null,\n\t\tisOrCondition : isOrConditionAdvisor ?? false,\n\t});\n\n\tconst fetchIquiries = useCallback(async () => {\n\t\tconst response = await inquiryService\n\t\t\t.getInquiries({\n\t\t\t\t...(clientId && { clientId }),\n\t\t\t\t...(programId && { programId }),\n\t\t\t\t...(status && { status: [status] as INQUIRY_STATUS_ID[] }),\n\t\t\t\t...(advisorId && { advisorId }),\n\t\t\t\t...(grcAdvisorId && { grcAdvisorId }),\n\t\t\t\t...(accountManagerId && { accountManagerId }),\n\t\t\t\t...(type && { type: type as INQUIRY_TYPE_ID }),\n\t\t\t\t...(page && { page }),\n\t\t\t\t...(size && { size: String(size) }),\n\t\t\t\t...(topicIds && { topicIds: topicIds.split('|').filter((s) => s) }),\n\t\t\t\t...(requestNumber && { requestNumber }),\n\t\t\t\t...(fromDate && { fromDate }),\n\t\t\t\t...(toDate && { toDate }),\n\t\t\t\t...(isOrConditionAdvisor && { isOrConditionAdvisor }),\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tsetInquiries(response.inquiries);\n\t\tsetTotalInquiryCount(response.totalCount);\n\t}, [\n\t\tadvisorId,\n\t\tclientId,\n\t\tfromDate,\n\t\tgrcAdvisorId,\n\t\taccountManagerId,\n\t\tpage,\n\t\tprogramId,\n\t\trequestNumber,\n\t\tstatus,\n\t\ttoDate,\n\t\ttopicIds,\n\t\ttype,\n\t\tisOrConditionAdvisor,\n\t]);\n\n\tconst fetchFilterOptions = useCallback(async () => {\n\t\tconst response = await inquiryService.getInquiryFilters().fetch();\n\t\tsetOptions({\n\t\t\tclientOptions: response.clients,\n\t\t\tprogramOptions: response.programs,\n\t\t\tstatusOptions: response.status,\n\t\t\tadvisorOptions: response.advisors,\n\t\t\tgrcAdvisorOptions: response.grcAdvisors,\n\t\t\taccountManagerOptions: response.accountManagers,\n\t\t\ttypeOptions: response.type,\n\t\t\ttopicsOptions: response.topics,\n\t\t\tisOrConditionOptions: response.isOrCondition,\n\t\t});\n\t}, []);\n\n\tuseEffect(() => {\n\t\tconst topicIdsFromQuery = (topicIds ?? '').split('|').filter((s) => s);\n\t\tconst selectedTopics: FormOption[] = [];\n\t\ttopicIdsFromQuery.forEach((tid) => {\n\t\t\tconst topic = options.topicsOptions.find((t) => tid === t.id);\n\t\t\tif (topic) {\n\t\t\t\tselectedTopics.push(topic);\n\t\t\t}\n\t\t});\n\n\t\tsetFilterValues((previousValue) => ({\n\t\t\t...previousValue,\n\t\t\ttopicsValue: selectedTopics,\n\t\t}));\n\t}, [topicIds, options.topicsOptions]);\n\n\tconst handleClearFiltersButtonClick = () => {\n\t\tsetFilterValues({\n\t\t\tclientValue: '',\n\t\t\tprogramValue: '',\n\t\t\tstatusValue: [],\n\t\t\tadvisorValue: '',\n\t\t\tgrcAdvisor: '',\n\t\t\taccountManager: '',\n\t\t\ttypeValue: '',\n\t\t\ttopicsValue: [],\n\t\t\trequestNumber: '',\n\t\t\tfromDate: null,\n\t\t\ttoDate: null,\n\t\t\tisOrCondition: false,\n\t\t});\n\n\t\thistory.push(pathname);\n\t};\n\n\tconst handleFilterFormSubmit = (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\n\t\thistory.push(\n\t\t\tconstructUrl(\n\t\t\t\tpathname,\n\t\t\t\t{\n\t\t\t\t\tclientId: filterValues.clientValue,\n\t\t\t\t\tprogramId: filterValues.programValue,\n\t\t\t\t\tstatus: filterValues.statusValue,\n\t\t\t\t\tadvisorId: filterValues.advisorValue,\n\t\t\t\t\tgrcAdvisorId: filterValues.grcAdvisor,\n\t\t\t\t\taccountManagerId: filterValues.accountManager,\n\t\t\t\t\ttype: filterValues.typeValue,\n\t\t\t\t\ttopicIds: filterValues.topicsValue.map((formOption) => formOption.id),\n\t\t\t\t\tpage: '0',\n\t\t\t\t\tsize: String(size),\n\t\t\t\t\trequestNumber: filterValues.requestNumber,\n\t\t\t\t\tfromDate: filterValues.fromDate ? format(filterValues.fromDate, 'yyyy-MM-dd') : '',\n\t\t\t\t\ttoDate: filterValues.toDate ? format(filterValues.toDate, 'yyyy-MM-dd') : '',\n\t\t\t\t\tisOrConditionAdvisor: filterValues.isOrCondition,\n\t\t\t\t},\n\t\t\t\tsearch\n\t\t\t)\n\t\t);\n\t};\n\n\tconst getActiveFilterLength = () => {\n\t\treturn Object.entries(filterValues).reduce((filterLengthAccumulator, [key, value]) => {\n\t\t\tif (value) {\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tlet arrayListTarget: string[] = [];\n\t\t\t\t\tlet plainFilterValues: string[] = [];\n\t\t\t\t\tif (key === 'statusValue') {\n\t\t\t\t\t\tarrayListTarget = options.statusOptions.map((item) => item.id);\n\t\t\t\t\t\tplainFilterValues = cloneDeep(filterValues.statusValue);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tarrayListTarget = options.topicsOptions.map((item) => item.id);\n\t\t\t\t\t\tplainFilterValues = filterValues.topicsValue.map((item) => item.id);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn plainFilterValues.some((item) => arrayListTarget.includes(item))\n\t\t\t\t\t\t? filterLengthAccumulator + 1\n\t\t\t\t\t\t: filterLengthAccumulator;\n\t\t\t\t}\n\t\t\t\tif (value instanceof Date) {\n\t\t\t\t\treturn filterLengthAccumulator;\n\t\t\t\t}\n\t\t\t\tif ( typeof value == 'boolean' ) {\n\t\t\t\t\treturn filterLengthAccumulator;\n\t\t\t\t}\n\t\t\tconst referenceOption: { [key: string]: FormOption[] } = {\n\t\t\t\t\tclientValue: options.clientOptions,\n\t\t\t\t\tprogramValue: options.programOptions,\n\t\t\t\t\tadvisorValue: options.advisorOptions,\n\t\t\t\t\tgrcAdvisor: options.grcAdvisorOptions,\n\t\t\t\t\taccountManager: options.accountManagerOptions,\n\t\t\t\t\ttypeValue: options.typeOptions,\n\t\t\t\t};\n\n\t\t\t\tfilterLengthAccumulator = (referenceOption?.[key] ?? []).map((o) => o.id).includes(value)\n\t\t\t\t\t? filterLengthAccumulator + 1\n\t\t\t\t\t: filterLengthAccumulator;\n\t\t\t}\n\n\t\t\treturn filterLengthAccumulator;\n\t\t}, 0);\n\t};\n\n\tconst handlePaginationChange = ({ pageIndex }: { pageIndex: number }) => {\n\t\thistory.push(constructUrl(pathname, { page: String(pageIndex) }, search));\n\t};\n\n\treturn (\n\t\t\n\t\t\tHackett Connect - Client Management - Inquiries\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tInquiry Dashboard /\n\t\t\t\t\t

    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    Inquiries

    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\n\t\t\t\t\t\n\t\t\t\t\t\t{inquiries.length <= 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{inquiries.map((inquiry) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    {inquiry.inquiryListDescription}

    \n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t{inquiry.advisorAccount.name} • {inquiry.grcAdvisorAccount.name}\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t{inquiries.length > 0 && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tClient\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclientValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{options.clientOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tprogramValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{options.programOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tStatus\n\t\t\t\t\t\t\t\t\t\t ({\n\t\t\t\t\t\t\t\t\t\t\t\tid: option.id,\n\t\t\t\t\t\t\t\t\t\t\t\ttitle: option.display,\n\t\t\t\t\t\t\t\t\t\t\t\tvalue: option.id,\n\t\t\t\t\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t\t\t\t\t\tselected={\n\t\t\t\t\t\t\t\t\t\t\t\toptions.statusOptions\n\t\t\t\t\t\t\t\t\t\t\t\t\t.filter((o) => filterValues.statusValue.includes(o.id))\n\t\t\t\t\t\t\t\t\t\t\t\t\t.map((o) => o.id) ?? []\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(selectedValues) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tstatusValue: selectedValues,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\tSelect status...\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tAdvisor\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tadvisorValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{options.advisorOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\tCondition to apply\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tisOrCondition: (currentTarget.value==='true'),\n\t\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tInquiry Advisor\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tgrcAdvisor: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{options.grcAdvisorOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tAccount Manager\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\taccountManager: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{options.accountManagerOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tType\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttypeValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{options.typeOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTopics\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttopicsValue: selected as FormOption[],\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\toptions={options.topicsOptions}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"Select topics...\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tInquiry #\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\trequestNumber: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"Enter Inquiry #...\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tFrom Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfromDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTo Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttoDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useState } from 'react';\nimport { Link, useHistory, useParams } from 'react-router-dom';\nimport { Badge, Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\nimport { Typeahead } from 'react-bootstrap-typeahead';\nimport { ErrorCode, FileRejection } from 'react-dropzone';\n\nimport {\n\tAccountModel,\n\tDOCUMENT_UPLOAD_STATUS_ID,\n\tFormOption,\n\tInquiryDocument,\n\tInquiryModel,\n\tINQUIRY_STATUS_ID,\n\tinquiryAttachment,\n\tPresignedUploadModel,\n} from '@/lib/models';\nimport { inquiryService, documentUploader } from '@/lib/services';\nimport { useAlert, useCopyTextToClipboard, useHandleError } from '@/hooks';\nimport {\n\tAsyncPage,\n\tAttachmentDropdown,\n\tFadeTransition,\n\tFileDropzone,\n\tLoadingButton,\n\tMeter,\n\tSelect,\n\tWysiwyg,\n} from '@/components';\n\nimport { ReactComponent as LinkIcon } from '@/assets/icons/icon-link.svg';\nimport { ReactComponent as TrashIcon } from '@/assets/icons/icon-trash.svg';\nimport { Helmet } from 'react-helmet';\n\nexport const AdvisorInquiriesDetailEdit = () => {\n\tconst history = useHistory();\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst { copyTextToClipboard } = useCopyTextToClipboard();\n\n\tconst { inquiryId } = useParams<{ inquiryId: string }>();\n\tconst [inquiry, setInquiry] = useState();\n\n\tconst [recipientOptions, setRecipientOptions] = useState([]);\n\tconst [advisorAccountManagerCcOptions, setAdvisorAccountManagerCcOptions] = useState([]);\n\tconst [managerOptions, setManagerOptions] = useState([]);\n\tconst [advisorOptions, setAdvisorOptions] = useState([]);\n\tconst [grcAdvisorOptions, setGrcAdvisorOptions] = useState([]);\n\tconst [statusOptions, setStatusOptions] = useState([]);\n\tconst [typeOptions, setTypeOptions] = useState([]);\n\tconst [topicsOptions, setTopicsOptions] = useState([]);\n\tconst [programOptions, setProgramOptions] = useState([]);\n\n\tconst [inquiryFormValues, setInquiryFormValues] = useState({\n\t\ttitleValue: '',\n\t\ttextValue: '',\n\t\tnotesValue: '',\n\t\trecipientsValue: [] as AccountModel[],\n\t\tccValue: [] as FormOption[],\n\t\tanswerValue: '',\n\t\trequesterNotes: '',\n\t\tisShowAdvisorEmail: false,\n\t\tisShowAdvisorBookingsUrl: false,\n\t});\n\n\tconst [inquiryDetailsValues, setInquiryDetailsValues] = useState({\n\t\taccountManagerValue: '',\n\t\tadvisorValue: '',\n\t\tgrcAdvisorValue: '',\n\t\tstatusValue: '',\n\t\ttypeValue: '',\n\t\ttopicsValue: [] as FormOption[],\n\t\tprogramValue: '',\n\t});\n\n\tconst [isUploading, setIsUploading] = useState(false);\n\tconst [uploadProgressPercentages, setUploadProgressPercentages] = useState>({});\n\tconst [isSaving, setIsSaving] = useState(false);\n\n\tconst [isRecipientNotificationRequired, setIsRecipientNotificationRequired] = useState(true);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst [inquiryResponse, optionsResponse] = await Promise.all([\n\t\t\tinquiryService.getInquiryDetails(inquiryId).fetch(),\n\t\t\tinquiryService.getInquiryFormOptions({ inquiryId }).fetch(),\n\t\t]);\n\n\t\tconst recipientResponse = await inquiryService\n\t\t\t.getAccounts({ clientId: inquiryResponse.inquiry.client.clientId })\n\t\t\t.fetch();\n\n\t\tsetInquiry(inquiryResponse.inquiry);\n\n\t\tsetInquiryFormValues({\n\t\t\ttitleValue: inquiryResponse.inquiry.inquiryTitle ?? '',\n\t\t\ttextValue: inquiryResponse.inquiry.inquiryText ?? '',\n\t\t\tnotesValue: inquiryResponse.inquiry.notes ?? '',\n\t\t\trecipientsValue: inquiryResponse.inquiry.inquiryAccounts ?? [],\n\t\t\tccValue: (inquiryResponse.inquiry.inquiryCcAccounts ?? []).map((a) => ({\n\t\t\t\tid: a.accountId,\n\t\t\t\tdisplay: a.name,\n\t\t\t})),\n\t\t\tanswerValue: inquiryResponse.inquiry.responseText ?? '',\n\t\t\trequesterNotes: inquiryResponse.inquiry.requesterNotes ?? '',\n\t\t\tisShowAdvisorEmail: inquiryResponse.inquiry.showAdvisorEmail ?? false,\n\t\t\tisShowAdvisorBookingsUrl: inquiryResponse.inquiry.showAdvisorBookingsUrl ?? false,\n\t\t});\n\n\t\tsetInquiryDetailsValues({\n\t\t\taccountManagerValue: inquiryResponse.inquiry.accountManagerAccount.accountId,\n\t\t\tadvisorValue: inquiryResponse.inquiry.advisorAccount.accountId,\n\t\t\tgrcAdvisorValue: inquiryResponse.inquiry.grcAdvisorAccount.accountId,\n\t\t\tstatusValue: inquiryResponse.inquiry.inquiryStatus,\n\t\t\ttypeValue: inquiryResponse.inquiry.inquiryType,\n\t\t\ttopicsValue: inquiryResponse.inquiry.topicsList,\n\t\t\tprogramValue: inquiryResponse.inquiry.program.programId,\n\t\t});\n\n\t\tsetRecipientOptions(recipientResponse.accounts);\n\t\tsetAdvisorAccountManagerCcOptions(\n\t\t\t[...optionsResponse.advisors, ...optionsResponse.accountManagers]\n\t\t\t\t.filter((a) => a.id !== inquiryResponse.inquiry.accountManagerAccount.accountId)\n\t\t\t\t.filter((a) => a.id !== inquiryResponse.inquiry.advisorAccount.accountId)\n\t\t);\n\t\tsetManagerOptions(optionsResponse.accountManagers);\n\t\tsetAdvisorOptions(optionsResponse.advisors);\n\t\tsetGrcAdvisorOptions(optionsResponse.grcAdvisors);\n\t\tsetStatusOptions(optionsResponse.inquiryStatus);\n\t\tsetTypeOptions(optionsResponse.inquiryType);\n\t\tsetTopicsOptions(optionsResponse.topics);\n\t\tsetProgramOptions(optionsResponse.programs);\n\t}, [inquiryId]);\n\n\tconst handleCopyLinkButtonClick = useCallback(() => {\n\t\tcopyTextToClipboard(window.location.href, 'Link was copied to clipboard.');\n\t}, [copyTextToClipboard]);\n\n\tconst handleFileDropzoneChange = useCallback(\n\t\tasync (files: File[], fileRejections: FileRejection[]) => {\n\t\t\tif (!inquiry) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tfor (const fileRejection of fileRejections) {\n\t\t\t\tfor (const rejectionError of fileRejection.errors) {\n\t\t\t\t\tif (rejectionError.code === ErrorCode.FileInvalidType) {\n\t\t\t\t\t\tshowAlert({\n\t\t\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tOne or more files is an incorrect file type. Choose files with valid type: any\n\t\t\t\t\t\t\t\t\t\toffice type, pdf or zip.\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tif (rejectionError.code === ErrorCode.FileTooLarge) {\n\t\t\t\t\t\tshowAlert({\n\t\t\t\t\t\t\tvariant: 'danger',\n\t\t\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t

    File size cannot exceed 100MB. Please try again.

    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst presignedUploadPromises = files.map((file) => {\n\t\t\t\treturn new Promise((resolve: (presignedUpload: PresignedUploadModel) => void, reject) => {\n\t\t\t\t\tlet newDocumentName = file.name.split(',').join('');\n\t\t\t\t\tdocumentUploader(\n\t\t\t\t\t\tfile,\n\t\t\t\t\t\tinquiryService.getPresignedDocumentUpload({\n\t\t\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\t\t\tcontentType: file.type,\n\t\t\t\t\t\t\ttitle: newDocumentName,\n\t\t\t\t\t\t}).fetch\n\t\t\t\t\t)\n\t\t\t\t\t\t.onBeforeUpload(() => {\n\t\t\t\t\t\t\tsetUploadProgressPercentages((previousValue) => ({\n\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t[newDocumentName]: 0,\n\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.onPresignedUploadObtained(() => {})\n\t\t\t\t\t\t.onProgress((percentage) => {\n\t\t\t\t\t\t\tsetUploadProgressPercentages((previousValue) => ({\n\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t[newDocumentName]: percentage,\n\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.onComplete(async (presignedUpload) => {\n\t\t\t\t\t\t\tsetUploadProgressPercentages((previousValue) => ({\n\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t[newDocumentName]: 100,\n\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tawait inquiryService\n\t\t\t\t\t\t\t\t\t.updateInquiryDocumentStatus({\n\t\t\t\t\t\t\t\t\t\tdocumentUploadStatusId: DOCUMENT_UPLOAD_STATUS_ID.COMPLETE,\n\t\t\t\t\t\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\t\t\t\t\t\tinquiryDocumentId: presignedUpload.documentId,\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t.fetch();\n\n\t\t\t\t\t\t\t\treturn resolve(presignedUpload);\n\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\treturn reject(error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.onError((error) => {\n\t\t\t\t\t\t\treturn reject(error);\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.start();\n\t\t\t\t});\n\t\t\t});\n\n\t\t\ttry {\n\t\t\t\tsetIsUploading(true);\n\n\t\t\t\tconst presignedUploadResponse = await Promise.all(presignedUploadPromises);\n\n\t\t\t\tsetIsUploading(false);\n\t\t\t\tsetUploadProgressPercentages({});\n\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'success',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn

    Documents successfully uploaded, adding to inquiry...

    ;\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\t\tsetIsSaving(true);\n\n\t\t\t\tconst response = await inquiryService\n\t\t\t\t\t.updateInquiry({\n\t\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\t\tuploadedDocumentIds: [\n\t\t\t\t\t\t\t...(inquiry.documents ?? []).map((d) => d.documentId),\n\t\t\t\t\t\t\t...presignedUploadResponse.map((u) => u.documentId),\n\t\t\t\t\t\t],\n\t\t\t\t\t\tnotes: inquiry.notes ?? '',\n\t\t\t\t\t\tinquiryAccountIds: (inquiry.inquiryAccounts ?? []).map((a) => a.accountId),\n\t\t\t\t\t\tinquiryCcIds: (inquiry.inquiryCcAccounts ?? []).map((a) => a.accountId),\n\t\t\t\t\t})\n\t\t\t\t\t.fetch();\n\n\t\t\t\tsetInquiry(response.inquiry);\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'success',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn

    Documents added to inquiry.

    ;\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t} catch (error) {\n\t\t\t\thandleError(error);\n\t\t\t} finally {\n\t\t\t\tsetIsSaving(false);\n\t\t\t}\n\t\t},\n\t\t[handleError, inquiry, showAlert]\n\t);\n\n\tconst handleDocumentRemove = useCallback(\n\t\tasync (document: InquiryDocument) => {\n\t\t\ttry {\n\t\t\t\tif (!inquiry) {\n\t\t\t\t\tthrow new Error('Inquiry not found.');\n\t\t\t\t}\n\n\t\t\t\tconst documentsClone = [...inquiry.documents];\n\t\t\t\tconst documentIndexToRemove = inquiry.documents.findIndex((d) => d.documentId === document.documentId);\n\t\t\t\tdocumentsClone.splice(documentIndexToRemove, 1);\n\n\t\t\t\tsetIsSaving(true);\n\n\t\t\t\tconst response = await inquiryService\n\t\t\t\t\t.updateInquiry({\n\t\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\t\tuploadedDocumentIds: documentsClone.map((d) => d.documentId),\n\t\t\t\t\t\tnotes: inquiry.notes ?? '',\n\t\t\t\t\t\tinquiryAccountIds: (inquiry.inquiryAccounts ?? []).map((a) => a.accountId),\n\t\t\t\t\t\tinquiryCcIds: (inquiry.inquiryCcAccounts ?? []).map((a) => a.accountId),\n\t\t\t\t\t})\n\t\t\t\t\t.fetch();\n\n\t\t\t\tsetInquiry(response.inquiry);\n\t\t\t\tsetIsSaving(false);\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'success',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn

    Document removed.

    ;\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t} catch (error) {\n\t\t\t\tsetIsSaving(false);\n\t\t\t\thandleError(error);\n\t\t\t}\n\t\t},\n\t\t[handleError, inquiry, showAlert]\n\t);\n\n\tconst handleFormSubmit = useCallback(\n\t\tasync (event: React.FormEvent) => {\n\t\t\tevent.preventDefault();\n\n\t\t\ttry {\n\t\t\t\tif (!inquiry) {\n\t\t\t\t\tthrow new Error('Inquiry not found.');\n\t\t\t\t}\n\n\t\t\t\tsetIsSaving(true);\n\n\t\t\t\tconst response = await inquiryService\n\t\t\t\t\t.updateInquiry({\n\t\t\t\t\t\tinquiryId: inquiry.inquiryId,\n\t\t\t\t\t\taccountManagerAccountId: inquiryDetailsValues.accountManagerValue,\n\t\t\t\t\t\tadvisorAccountId: inquiryDetailsValues.advisorValue,\n\t\t\t\t\t\tgrcAdvisorAccountId: inquiryDetailsValues.grcAdvisorValue,\n\t\t\t\t\t\tinquiryStatus: inquiryDetailsValues.statusValue,\n\t\t\t\t\t\tinquiryTypeId: inquiryDetailsValues.typeValue,\n\t\t\t\t\t\t...(inquiryDetailsValues.topicsValue.length > 0 && {\n\t\t\t\t\t\t\ttopicIds: inquiryDetailsValues.topicsValue.map((topic) => topic.id),\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tinquiryTitle: inquiryFormValues.titleValue,\n\t\t\t\t\t\tinquiryText: inquiryFormValues.textValue,\n\t\t\t\t\t\tnotes: inquiryFormValues.notesValue,\n\t\t\t\t\t\tinquiryAccountIds: inquiryFormValues.recipientsValue.map((a) => a.accountId),\n\t\t\t\t\t\tinquiryCcIds: inquiryFormValues.ccValue.map((a) => a.id),\n\t\t\t\t\t\tresponseText: inquiryFormValues.answerValue,\n\t\t\t\t\t\tuploadedDocumentIds: inquiry.documents.map((d) => d.documentId),\n\t\t\t\t\t\tisRecipientNotificationRequired: isRecipientNotificationRequired,\n\t\t\t\t\t\tprogramId: inquiryDetailsValues.programValue,\n\t\t\t\t\t\trequesterNotes: inquiryFormValues.requesterNotes,\n\t\t\t\t\t\tisShowAdvisorEmail: inquiryFormValues.isShowAdvisorEmail,\n\t\t\t\t\t\tisShowAdvisorBookingsUrl: inquiryFormValues.isShowAdvisorBookingsUrl,\n\t\t\t\t\t})\n\t\t\t\t\t.fetch();\n\n\t\t\t\tshowAlert({\n\t\t\t\t\tvariant: 'success',\n\t\t\t\t\tchildren: () => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t{response.inquiry.inquiryStatus === INQUIRY_STATUS_ID.CLOSED\n\t\t\t\t\t\t\t\t\t? 'Inquiry saved and sent.'\n\t\t\t\t\t\t\t\t\t: 'Inquiry saved.'}\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\t\tif (response.inquiry.inquiryStatus === INQUIRY_STATUS_ID.CLOSED) {\n\t\t\t\t\thistory.replace(`/client-management/inquiries/${response.inquiry.inquiryId}`);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetInquiry(response.inquiry);\n\n\t\t\t\tsetInquiryFormValues({\n\t\t\t\t\ttitleValue: response.inquiry.inquiryTitle ?? '',\n\t\t\t\t\ttextValue: response.inquiry.inquiryText ?? '',\n\t\t\t\t\tnotesValue: response.inquiry.notes ?? '',\n\t\t\t\t\trecipientsValue: response.inquiry.inquiryAccounts ?? [],\n\t\t\t\t\tccValue: (response.inquiry.inquiryCcAccounts ?? []).map((a) => ({\n\t\t\t\t\t\tid: a.accountId,\n\t\t\t\t\t\tdisplay: a.name,\n\t\t\t\t\t})),\n\t\t\t\t\tanswerValue: response.inquiry.responseText ?? '',\n\t\t\t\t\trequesterNotes: response.inquiry.requesterNotes ?? '',\n\t\t\t\t\tisShowAdvisorEmail: response.inquiry.showAdvisorEmail ?? false,\n\t\t\t\t\tisShowAdvisorBookingsUrl: response.inquiry.showAdvisorBookingsUrl ?? false,\n\t\t\t\t});\n\n\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\taccountManagerValue: response.inquiry.accountManagerAccount.accountId,\n\t\t\t\t\tadvisorValue: response.inquiry.advisorAccount.accountId,\n\t\t\t\t\tgrcAdvisorValue: response.inquiry.grcAdvisorAccount.accountId,\n\t\t\t\t\tstatusValue: response.inquiry.inquiryStatus,\n\t\t\t\t\ttypeValue: response.inquiry.inquiryType,\n\t\t\t\t\ttopicsValue: response.inquiry.topicsList,\n\t\t\t\t\tprogramValue: response.inquiry.program.programId,\n\t\t\t\t});\n\t\t\t\tsetIsSaving(false);\n\t\t\t} catch (error) {\n\t\t\t\tsetIsSaving(false);\n\t\t\t\thandleError(error);\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\thandleError,\n\t\t\thistory,\n\t\t\tinquiry,\n\t\t\tinquiryDetailsValues,\n\t\t\tinquiryFormValues,\n\t\t\tshowAlert,\n\t\t\tisRecipientNotificationRequired,\n\t\t]\n\t);\n\n\tconst handleDeleteButtonClick = useCallback(async () => {\n\t\tif (!window.confirm('All the information in this inquiry will be deleted. Are you sure you want to proceed?')) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSaving(true);\n\n\t\t\tif (!inquiry) {\n\t\t\t\tthrow new Error('inquiry is undefined.');\n\t\t\t}\n\n\t\t\tawait inquiryService.deleteInquiry(inquiry.inquiryId).fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn

    Inquiry deleted.

    ;\n\t\t\t\t},\n\t\t\t});\n\n\t\t\thistory.push('/client-management/inquiries');\n\t\t} catch (error) {\n\t\t\tsetIsSaving(false);\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError, history, inquiry, showAlert]);\n\n\tconst statusBadge = () => {\n\t\treturn (\n\t\t\t\n\t\t\t\tInactive\n\t\t\t\n\t\t);\n\t};\n\n\tfunction showSaveAndNotifyButton() {\n\t\tif (inquiryDetailsValues.statusValue === INQUIRY_STATUS_ID.CLOSED) {\n\t\t\treturn (\n\t\t\t\t
    \n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetIsRecipientNotificationRequired(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\tSave Without Client Notification\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t);\n\t\t}\n\t}\n\n\tconst handleIncludeAdvisorEmail = useCallback(\n\t\t({ currentTarget }: React.ChangeEvent) => {\n\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t...previousValue,\n\t\t\t\tisShowAdvisorEmail: currentTarget.checked,\n\t\t\t}));\n\t\t},\n\t\t[inquiry]\n\t);\n\tconst handleIncludeAdvisorBookingsUrl = useCallback(\n\t\t({ currentTarget }: React.ChangeEvent) => {\n\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t...previousValue,\n\t\t\t\tisShowAdvisorBookingsUrl: currentTarget.checked,\n\t\t\t}));\n\t\t},\n\t\t[inquiry]\n\t);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Client Management - Inquiries - Inquiry Details Edit\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tInquiries /\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    {inquiry?.inquiryTitle}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    {inquiry?.inquiryDescription}

    \n\t\t\t\t\t\t\t\t

    {inquiry?.inquiryStatusDescription}

    \n\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tInquiry Subject\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\ttitleValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tInquiry Details\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\ttextValue: content,\n\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\treadOnly={isSaving}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tNotes (For Internal Use) \n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\tnotesValue: content,\n\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\treadOnly={isSaving}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tRecipients\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tconst selectedAccountIds = inquiryFormValues.recipientsValue.map(\n\t\t\t\t\t\t\t\t\t\t\t(a) => a.accountId\n\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t!selectedAccountIds.includes((option as AccountModel).accountId) &&\n\t\t\t\t\t\t\t\t\t\t\t((option as AccountModel).name\n\t\t\t\t\t\t\t\t\t\t\t\t.toLowerCase()\n\t\t\t\t\t\t\t\t\t\t\t\t.indexOf(props.text.toLowerCase()) !== -1 ||\n\t\t\t\t\t\t\t\t\t\t\t\t(option as AccountModel).emailAddress\n\t\t\t\t\t\t\t\t\t\t\t\t\t.toLowerCase()\n\t\t\t\t\t\t\t\t\t\t\t\t\t.indexOf(props.text.toLowerCase()) !== -1)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tid=\"typeahead--recipients\"\n\t\t\t\t\t\t\t\t\tlabelKey={(option) =>\n\t\t\t\t\t\t\t\t\t\t`${(option as AccountModel).name} (${(option as AccountModel).emailAddress})`\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\t\t\tselected={inquiryFormValues.recipientsValue}\n\t\t\t\t\t\t\t\t\tonChange={(selected) => {\n\t\t\t\t\t\t\t\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\trecipientsValue: selected as AccountModel[],\n\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\toptions={recipientOptions}\n\t\t\t\t\t\t\t\t\tplaceholder=\"Select recipients...\"\n\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tAdvisor/Account Manager CC\n\t\t\t\t\t\t\t\t `${(option as FormOption).display}`}\n\t\t\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\t\t\tselected={inquiryFormValues.ccValue}\n\t\t\t\t\t\t\t\t\tonChange={(selected) => {\n\t\t\t\t\t\t\t\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\tccValue: selected as FormOption[],\n\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\toptions={advisorAccountManagerCcOptions}\n\t\t\t\t\t\t\t\t\tplaceholder=\"Select recipients...\"\n\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tAnswer\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetInquiryFormValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\tanswerValue: content,\n\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\treadOnly={isSaving}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tNotes (Requester Response) \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tAttachments\n\t\t\t\t\t\t\t\t{inquiry?.documents.map((document) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\thandleDocumentRemove(document);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{Object.entries(uploadProgressPercentages).map(([key, value]) => (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{inquiryDetailsValues.statusValue === INQUIRY_STATUS_ID.CLOSED && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tShow Advisor Signature\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleIncludeAdvisorEmail(currentTarget);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tShow MS Booking URL{' '}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{inquiry?.advisorAccount.bookingsUrl === ''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'You need to add your Microsoft Booking URL'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''}{' '}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleIncludeAdvisorBookingsUrl(currentTarget);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetIsRecipientNotificationRequired(true);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{inquiryDetailsValues.statusValue === INQUIRY_STATUS_ID.CLOSED\n\t\t\t\t\t\t\t\t\t\t\t? 'Save and Send Client Notification'\n\t\t\t\t\t\t\t\t\t\t\t: 'Save'}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{showSaveAndNotifyButton()}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\thistory.goBack();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tdisabled={isUploading || isSaving}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tDelete\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\tInquiry Details\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{inquiry?.client && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\tClient\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t

    {inquiry.client.name}

    \n\t\t\t\t\t\t\t\t\t\t\t

    Submitted {inquiry.createdDescription}

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{inquiry?.requestingAccount && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\tRequester\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t

    {inquiry?.requestingAccount.name}

    \n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{inquiry?.requestingAccount.deleted ? statusBadge() : null}\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tAccount Manager\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inquiryDetailsValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\taccountManagerValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{managerOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tAdvisor\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inquiryDetailsValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tadvisorValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{advisorOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tInquiry Advisor\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inquiryDetailsValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tgrcAdvisorValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{grcAdvisorOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inquiryDetailsValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tprogramValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{programOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tStatus\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inquiryDetailsValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\tstatusValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{statusOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tType\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inquiryDetailsValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttypeValue: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{typeOptions.map((option) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTopics\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetInquiryDetailsValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...inquiryDetailsValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttopicsValue: selected as FormOption[],\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\toptions={topicsOptions}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"Select topics...\"\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isSaving}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import { format } from 'date-fns';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { useHistory, useLocation, useRouteMatch } from 'react-router-dom';\nimport { Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\nimport { Helmet } from \"react-helmet\";\nimport { constructUrl } from '@/lib/utils';\nimport { DeliverableModel, FormOption } from '@/lib/models';\nimport { deliverablesService } from '@/lib/services';\nimport { useDebouncedState, useQuery } from '@/hooks';\nimport { AsyncPage, DateInput, DeliverableListItem, SearchInput, Select } from '@/components';\nimport { SORT_DIRECTION, TablePagination } from '@/components/table';\n\nexport const Deliverables = () => {\n\tconst history = useHistory();\n\tconst { path } = useRouteMatch();\n\tconst { pathname, search } = useLocation();\n\n\tconst searchParams = useQuery();\n\tconst clientId = searchParams.get('clientId');\n\tconst contactLastName = searchParams.get('contactLastName');\n\tconst deliverableTypeId = searchParams.get('deliverableTypeId');\n\tconst emailAddress = searchParams.get('emailAddress');\n\tconst fromDate = searchParams.get('fromDate');\n\tconst page = searchParams.get('page') ?? '0';\n\tconst programIds = searchParams.get('programIds');\n\tconst query = searchParams.get('query') ?? '';\n\tconst sortField = searchParams.get('sortField');\n\tconst sortDirection = searchParams.get('sortDirection');\n\tconst size = 10;\n\tconst toDate = searchParams.get('toDate');\n\n\tconst [searchValue, setSearchValue] = useState(query);\n\tconst debouncedSearchValue = useDebouncedState(searchValue);\n\tconst [sortOptions, setSortOptions] = useState([]);\n\tconst [companyOptions, setCompanyOptions] = useState([]);\n\tconst [deliverableTypeOptions, setDeliverableTypeOptions] = useState([]);\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [filterValues, setFilterValues] = useState({\n\t\tcompany: clientId ?? '',\n\t\tcontactLastName: contactLastName ?? '',\n\t\tcontactEmail: emailAddress ?? '',\n\t\tdeliverableType: deliverableTypeId ?? '',\n\t\tprograms: programIds ?? '',\n\t\tfromDate: fromDate ? new Date(fromDate) : null,\n\t\ttoDate: toDate ? new Date(toDate) : null,\n\t});\n\n\tconst [deliverables, setDeliverables] = useState([]);\n\tconst [totalDeliverables, setTotalDeliverables] = useState(0);\n\n\tconst fetchFilters = useCallback(async () => {\n\t\tconst response = await deliverablesService.getDeliverableFilters().fetch();\n\n\t\tsetSortOptions(response.sortFields);\n\t\tsetCompanyOptions(response.clients);\n\t\tsetDeliverableTypeOptions(response.deliverableType);\n\t\tsetProgramOptions(response.programs);\n\t}, []);\n\n\tconst fetchDeliverables = useCallback(async () => {\n\t\tconst response = await deliverablesService\n\t\t\t.getDeliverables({\n\t\t\t\tsize: String(size),\n\t\t\t\t...(clientId && { clientId }),\n\t\t\t\t...(contactLastName && { contactLastName }),\n\t\t\t\t...(deliverableTypeId && { deliverableTypeId }),\n\t\t\t\t...(emailAddress && { emailAddress }),\n\t\t\t\t...(fromDate && { fromDate }),\n\t\t\t\t...(page && { page }),\n\t\t\t\t...(programIds && { programIds }),\n\t\t\t\t...(query && { query }),\n\t\t\t\t...(sortDirection && { sortDirection }),\n\t\t\t\t...(sortField && { sortField }),\n\t\t\t\t...(toDate && { toDate }),\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tsetDeliverables(response.deliverables);\n\t\tsetTotalDeliverables(response.totalCount);\n\t}, [\n\t\tclientId,\n\t\tcontactLastName,\n\t\tdeliverableTypeId,\n\t\temailAddress,\n\t\tfromDate,\n\t\tpage,\n\t\tprogramIds,\n\t\tquery,\n\t\tsortDirection,\n\t\tsortField,\n\t\ttoDate,\n\t]);\n\n\tuseEffect(() => {\n\t\thistory.replace(constructUrl(pathname, { page: '0', query: debouncedSearchValue }, search));\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [debouncedSearchValue, history, pathname]);\n\n\tconst handlesortFieldChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\thistory.push(constructUrl(pathname, { page: '0', sortField: currentTarget.value }, search));\n\t};\n\n\tconst handlesortDirectionChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\thistory.push(constructUrl(pathname, { page: '0', sortDirection: currentTarget.value }, search));\n\t};\n\n\tconst handlePaginationChange = ({ pageIndex }: { pageIndex: number }) => {\n\t\thistory.push(constructUrl(pathname, { page: String(pageIndex) }, search));\n\t};\n\n\tconst handleClearFiltersButtonClick = () => {\n\t\tsetFilterValues({\n\t\t\tcompany: '',\n\t\t\tcontactLastName: '',\n\t\t\tcontactEmail: '',\n\t\t\tdeliverableType: '',\n\t\t\tprograms: '',\n\t\t\tfromDate: null,\n\t\t\ttoDate: null,\n\t\t});\n\t\thistory.replace(pathname);\n\t};\n\n\tconst handleFilterFormSubmit = (event: React.FormEvent) => {\n\t\tevent.preventDefault();\n\n\t\thistory.replace(\n\t\t\tconstructUrl(pathname, {\n\t\t\t\t...(filterValues.company && { clientId: filterValues.company }),\n\t\t\t\t...(filterValues.contactLastName && {\n\t\t\t\t\tcontactLastName: filterValues.contactLastName,\n\t\t\t\t}),\n\t\t\t\t...(filterValues.deliverableType && {\n\t\t\t\t\tdeliverableTypeId: filterValues.deliverableType,\n\t\t\t\t}),\n\t\t\t\t...(filterValues.contactEmail && {\n\t\t\t\t\temailAddress: filterValues.contactEmail,\n\t\t\t\t}),\n\t\t\t\t...(filterValues.fromDate && {\n\t\t\t\t\tfromDate: format(filterValues.fromDate, 'yyyy-MM-dd'),\n\t\t\t\t}),\n\t\t\t\t...(filterValues.programs && {\n\t\t\t\t\tprogramIds: filterValues.programs,\n\t\t\t\t}),\n\t\t\t\t...(filterValues.toDate && {\n\t\t\t\t\ttoDate: format(filterValues.toDate, 'yyyy-MM-dd'),\n\t\t\t\t}),\n\t\t\t})\n\t\t);\n\t};\n\n\treturn (\n\t\t\n\t\t\tHackett Connect - Client Management - Deliverables\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t

    Deliverables

    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\thistory.push(`${path}/create`);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t+ Create New Deliverable\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetSearchValue(currentTarget.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tSort By\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tSort Order\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{deliverables.length <= 0 && (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{deliverables.map((deliverable) => (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t))}\n\t\t\t\t\t\t{deliverables.length > 0 && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tCompany\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tcompany: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{companyOptions.map((o) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tContact Last Name\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontactLastName: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tContact Email\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontactEmail: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tDeliverable Type\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tdeliverableType: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{deliverableTypeOptions.map((o) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tPrograms\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tprograms: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{programOptions.map((o) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tFrom Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfromDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tTo Date\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttoDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import { flattenDeep } from 'lodash';\nimport React, { useState, useEffect, useCallback, useRef } from 'react';\nimport { useParams, Link } from 'react-router-dom';\nimport { Col, Container, Row } from 'react-bootstrap';\nimport * as Sentry from '@sentry/react';\n\nimport {\n\tAuthReportModel,\n\tJasperBookmarkModel,\n\tLinkReportModel,\n\tVisualizeModel,\n\tReportModel,\n\tReportExtensionModel,\n\tReportParametersModel,\n\tSourceModel,\n\tInputControlModel,\n\tOptionStateModel,\n\tOutputUrlReportModel,\n\tOutputUrlErrorReportModel,\n} from '@/lib/models';\nimport { useAlert, useHandleError } from '@/hooks';\nimport { jasperServices } from '@/lib/services';\nimport {\n\tAsyncPage,\n\tLoader,\n\tReportPagination,\n\tReportOptions,\n\tReportInputControlsModal,\n\tLoadingButton,\n} from '@/components';\nimport { Helmet } from 'react-helmet';\n\nexport const ReportDetail = () => {\n\tconst handleError = useHandleError();\n\tconst { showAlert } = useAlert();\n\tconst { reportId } = useParams<{ reportId: string }>();\n\tconst [isReportInProgress, setReportInProgress] = useState(false);\n\tconst [inputControlsAreLoading, setInputControlsAreLoading] = useState(false);\n\tconst [isFirstRender, setIsFirstRender] = useState(true);\n\n\tconst [bookmarks, setBookmarks] = useState([]);\n\tconst [currentBookmark, setCurrentBookmark] = useState(1);\n\tconst [totalPages, setTotalPages] = useState(0);\n\tconst [currentPage, setCurrentPage] = useState(1);\n\tconst [report, setReport] = useState();\n\tconst [reportTitle, setReportTitle] = useState('');\n\tconst [inputControls, setInputControls] = useState([]);\n\tconst [downloadReportExtensions, setDownloadReportExtensions] = useState();\n\tconst [currentReportOutput, setCurrentReportOutput] = useState('');\n\tconst [isDownloadInProgress, setIsDownloadInProgress] = useState(false);\n\tconst [reportHeight, setReportHeight] = useState('auto');\n\tconst [authConfig, setAuthConfig] = useState();\n\n\tconst reportTimeoutRef = useRef();\n\tconst reportTimeoutDuration = useRef(10000);\n\n\tconst [filtersModalIsShowing, setFiltersModalIsShowing] = useState(false);\n\n\tconst [reportResources, setReportResources] = useState({\n\t\tresourceType: '',\n\t\tchartParams: {\n\t\t\tmaster_client_id: [''],\n\t\t},\n\t});\n\n\tconst [drillDowns, setDrilldowns] = useState([]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst [reportDetailResponse, authTokenResponse] = await Promise.all([\n\t\t\tjasperServices.getReportDetail(reportId).fetch(),\n\t\t\tjasperServices.getAuthToken().fetch(),\n\t\t]);\n\n\t\tsetReportTitle(reportDetailResponse.name);\n\t\tsetDownloadReportExtensions(reportDetailResponse.reportDownloadExtensions);\n\t\tsetReportResources({\n\t\t\tresourceType: reportDetailResponse.reportUrl,\n\t\t\tchartParams: {\n\t\t\t\tmaster_client_id: [reportDetailResponse.masterClientId],\n\t\t\t},\n\t\t});\n\t\tsetAuthConfig({\n\t\t\tauthToken: authTokenResponse.jasperToken,\n\t\t\tconnecting: false,\n\t\t\tisAuth: false,\n\t\t\tjasperTokenUrl: '/jasper/authenticationToken',\n\t\t});\n\t}, [reportId]);\n\n\tuseEffect(() => {\n\t\tif (!authConfig) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetInputControlsAreLoading(true);\n\n\t\tglobalThis\n\t\t\t.visualize({\n\t\t\t\tscripts: 'optimized-scripts',\n\t\t\t\tauth: {\n\t\t\t\t\ttoken: encodeURIComponent(authConfig.authToken),\n\t\t\t\t\tpreAuth: true,\n\t\t\t\t\ttokenName: 'pp',\n\t\t\t\t},\n\t\t\t})\n\t\t\t.done((v: VisualizeModel) => {\n\t\t\t\tv.inputControls({\n\t\t\t\t\tresource: reportResources.resourceType,\n\t\t\t\t\tparams: reportResources.chartParams,\n\t\t\t\t\tsuccess: (data: InputControlModel[]) => {\n\t\t\t\t\t\tif (data.length <= 0) {\n\t\t\t\t\t\t\tsetInputControls([]);\n\t\t\t\t\t\t\tsetInputControlsAreLoading(false);\n\t\t\t\t\t\t\tsetIsFirstRender(false);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst rawInputControls = data.map((inputControlItem: InputControlModel) => {\n\t\t\t\t\t\t\tconst value =\n\t\t\t\t\t\t\t\tinputControlItem.state.value ||\n\t\t\t\t\t\t\t\t(inputControlItem.state.options || [])\n\t\t\t\t\t\t\t\t\t.filter((opt: OptionStateModel) => opt.selected)\n\t\t\t\t\t\t\t\t\t.map((opt: OptionStateModel) => opt.value);\n\n\t\t\t\t\t\t\tinputControlItem.state.value =\n\t\t\t\t\t\t\t\tArray.isArray(value) || /multi/i.test(inputControlItem.type) ? value : [value];\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tinputControlItem.type === 'bool' &&\n\t\t\t\t\t\t\t\t/^(false|true)$/i.test(\n\t\t\t\t\t\t\t\t\tArray.isArray(inputControlItem.state.value)\n\t\t\t\t\t\t\t\t\t\t? inputControlItem.state.value[0]\n\t\t\t\t\t\t\t\t\t\t: inputControlItem.state.value\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tinputControlItem.state.value = `${/^true$/i.test(\n\t\t\t\t\t\t\t\t\tArray.isArray(inputControlItem.state.value)\n\t\t\t\t\t\t\t\t\t\t? inputControlItem.state.value[0]\n\t\t\t\t\t\t\t\t\t\t: inputControlItem.state.value\n\t\t\t\t\t\t\t\t)}`;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (inputControlItem.state.value === '~NULL~') {\n\t\t\t\t\t\t\t\tinputControlItem.state.value = '';\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn inputControlItem;\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tsetInputControls(rawInputControls);\n\t\t\t\t\t\tsetInputControlsAreLoading(false);\n\t\t\t\t\t},\n\t\t\t\t\terror: (error: any) => {\n\t\t\t\t\t\tsetInputControls([]);\n\t\t\t\t\t\tsetInputControlsAreLoading(false);\n\t\t\t\t\t\thandleError(error);\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t})\n\t\t\t.fail((_error: any) => {\n\t\t\t\tconst visualizeError = {\n\t\t\t\t\tcode: 'VISUALIZE_ERROR',\n\t\t\t\t\tmessage: 'Visualize input controls failed to initialize.',\n\t\t\t\t};\n\n\t\t\t\tsetInputControls([]);\n\t\t\t\thandleError(visualizeError);\n\t\t\t\tsetInputControlsAreLoading(false);\n\t\t\t});\n\t}, [authConfig, handleError, reportResources]);\n\n\tconst clearReportTimeout = useCallback(() => {\n\t\tif (!reportTimeoutRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tclearTimeout(reportTimeoutRef.current);\n\t\treportTimeoutRef.current = undefined;\n\t}, []);\n\n\tconst startReportTimeout = useCallback(() => {\n\t\tif (reportTimeoutRef.current) {\n\t\t\tclearReportTimeout();\n\t\t}\n\n\t\treportTimeoutRef.current = setTimeout(() => {\n\t\t\treportTimeoutRef.current = undefined;\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'warning',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tWe're sorry, this report is taking longer than usual to load. Please be patient or try\n\t\t\t\t\t\t\t\trefreshing the page.\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t

    \n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tSentry.captureMessage(`Report has taken longer than ${reportTimeoutDuration.current}ms to load.`, {\n\t\t\t\textra: {\n\t\t\t\t\treportResources,\n\t\t\t\t\treportResourcesStringified: JSON.stringify(reportResources),\n\t\t\t\t},\n\t\t\t});\n\t\t}, reportTimeoutDuration.current);\n\t}, [clearReportTimeout, reportResources, showAlert]);\n\n\tuseEffect(() => {\n\t\tif (!authConfig || isFirstRender) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetReportInProgress(true);\n\t\tsetReportHeight('auto');\n\t\tstartReportTimeout();\n\n\t\tglobalThis\n\t\t\t.visualize({\n\t\t\t\tscripts: 'optimized-scripts',\n\t\t\t\tauth: {\n\t\t\t\t\ttoken: encodeURIComponent(authConfig.authToken),\n\t\t\t\t\tpreAuth: true,\n\t\t\t\t\ttokenName: 'pp',\n\t\t\t\t},\n\t\t\t})\n\t\t\t.done((v: VisualizeModel) => {\n\t\t\t\tsetReport(\n\t\t\t\t\tv.report({\n\t\t\t\t\t\tresource: reportResources.resourceType,\n\t\t\t\t\t\tcontainer: '#jasper-report',\n\t\t\t\t\t\tscale: 'width',\n\t\t\t\t\t\tautoresize: true,\n\t\t\t\t\t\tloadingOverlay: true,\n\t\t\t\t\t\tparams: reportResources.chartParams,\n\t\t\t\t\t\trunImmediately: false,\n\t\t\t\t\t\terror: (_error: any) => {\n\t\t\t\t\t\t\tconst visualizeError = {\n\t\t\t\t\t\t\t\tcode: 'VISUALIZE_ERROR',\n\t\t\t\t\t\t\t\tmessage: 'Report failed to initialize.',\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\thandleError(visualizeError);\n\t\t\t\t\t\t\tsetReportInProgress(false);\n\t\t\t\t\t\t\tclearReportTimeout();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tevents: {\n\t\t\t\t\t\t\treportPartsReady: (bookmarks: JasperBookmarkModel[]) => setBookmarks(bookmarks),\n\t\t\t\t\t\t\tchangeTotalPages: (pages: number) => setTotalPages(pages),\n\t\t\t\t\t\t\treportCompleted: (status: string, error: any) => {\n\t\t\t\t\t\t\t\tif (status === 'ready') {\n\t\t\t\t\t\t\t\t\tsetReportHeight(\n\t\t\t\t\t\t\t\t\t\t(document.getElementsByClassName('jrPage')?.[0]?.getBoundingClientRect()\n\t\t\t\t\t\t\t\t\t\t\t.height as unknown) as string\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} else if (status === 'failed') {\n\t\t\t\t\t\t\t\t\tconst visualizeError = {\n\t\t\t\t\t\t\t\t\t\tcode: 'VISUALIZE_ERROR',\n\t\t\t\t\t\t\t\t\t\tmessage: 'Report load failed.',\n\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\thandleError(visualizeError);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tsetReportInProgress(false);\n\t\t\t\t\t\t\t\tclearReportTimeout();\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tlinkOptions: {\n\t\t\t\t\t\t\tevents: {\n\t\t\t\t\t\t\t\tclick: function(_event: any, link: LinkReportModel) {\n\t\t\t\t\t\t\t\t\tif (!link) {\n\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tlet targetParametersReport: ReportParametersModel = {\n\t\t\t\t\t\t\t\t\t\tmaster_client_id: [''],\n\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\tswitch (link.type) {\n\t\t\t\t\t\t\t\t\t\tcase 'LocalAnchor':\n\t\t\t\t\t\t\t\t\t\t\t//'this' is the report itself\n\t\t\t\t\t\t\t\t\t\t\tif (link.anchor && this) {\n\t\t\t\t\t\t\t\t\t\t\t\t((this as unknown) as ReportModel)\n\t\t\t\t\t\t\t\t\t\t\t\t\t.pages({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tanchor: link.anchor,\n\t\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t\t.run()\n\t\t\t\t\t\t\t\t\t\t\t\t\t.fail((error: string) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleError(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`${error}, Unexpected error processing a LocalAnchor`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\tcase 'ReportExport':\n\t\t\t\t\t\t\t\t\t\t\thandleReportDetailsLoading(true);\n\t\t\t\t\t\t\t\t\t\t\tif (link.parameters && link.parameters.output) {\n\t\t\t\t\t\t\t\t\t\t\t\tfor (let key in link.parameters) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (!Array.isArray(link.parameters[key])) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlink.parameters[key] = [link.parameters[key]];\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\tlink.parameters.download = [true];\n\n\t\t\t\t\t\t\t\t\t\t\t\tconst innerReport = v.report({\n\t\t\t\t\t\t\t\t\t\t\t\t\tresource: link.parameters._report[0],\n\t\t\t\t\t\t\t\t\t\t\t\t\tparams: link.parameters,\n\t\t\t\t\t\t\t\t\t\t\t\t\trunImmediately: false,\n\t\t\t\t\t\t\t\t\t\t\t\t\terror: (error: string) => handleError(error),\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\t\t\t\tinnerReport.run(() => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tinnerReport.export(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toutputFormat: link.parameters.output[0].replace(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'NoPag',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t''\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tignorePagination:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlink.parameters.output[0].indexOf('NoPag') !== -1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(_link: LinkReportModel) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tglobalThis.location.href = _link.href\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? _link.href\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ((_link as unknown) as string);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleReportDetailsLoading(false);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(error: string) => handleError(error)\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\tcase 'ReportExecution':\n\t\t\t\t\t\t\t\t\t\t\tObject.keys(link.parameters)\n\t\t\t\t\t\t\t\t\t\t\t\t.filter((key) => key !== '_report' && key !== 'decorate')\n\t\t\t\t\t\t\t\t\t\t\t\t.map((key) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tconst linkParameterItem =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlink.parameters[key as keyof ReportParametersModel];\n\t\t\t\t\t\t\t\t\t\t\t\t\ttargetParametersReport[key as keyof ReportParametersModel] =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttypeof linkParameterItem === 'string'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? [linkParameterItem]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: linkParameterItem;\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn linkParameterItem;\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\t\t\t// this verification prevents the same drill down\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\tJSON.stringify([targetParametersReport, link.resource]) !==\n\t\t\t\t\t\t\t\t\t\t\t\tJSON.stringify([\n\t\t\t\t\t\t\t\t\t\t\t\t\treportResources.chartParams,\n\t\t\t\t\t\t\t\t\t\t\t\t\treportResources.resourceType,\n\t\t\t\t\t\t\t\t\t\t\t\t])\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\tconst innerReport: SourceModel = {\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceType: link.resource,\n\t\t\t\t\t\t\t\t\t\t\t\t\tchartParams: targetParametersReport,\n\t\t\t\t\t\t\t\t\t\t\t\t\tinputControls: [],\n\t\t\t\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\t\t\t\tlink.resource &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetDrilldowns((prevState) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn flattenDeep([...prevState, reportResources]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\t\t\t\tsetCurrentPage(1);\n\t\t\t\t\t\t\t\t\t\t\t\tsetReportResources(innerReport);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\tcase 'Reference':\n\t\t\t\t\t\t\t\t\t\t\tlink.target === 'Blank'\n\t\t\t\t\t\t\t\t\t\t\t\t? globalThis.open(link.href)\n\t\t\t\t\t\t\t\t\t\t\t\t: (globalThis.location = (link.href as unknown) as Location);\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\thandleError(\n\t\t\t\t\t\t\t\t\t\t\t\t`${link.type} link type is not supported or it is missing some data`\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t})\n\t\t\t.fail((_error: any) => {\n\t\t\t\tconst visualizeError = {\n\t\t\t\t\tcode: 'VISUALIZE_ERROR',\n\t\t\t\t\tmessage: 'Visualize failed to initialize.',\n\t\t\t\t};\n\n\t\t\t\thandleError(visualizeError);\n\t\t\t\tsetReportInProgress(false);\n\t\t\t\tclearReportTimeout();\n\t\t\t});\n\t}, [authConfig, clearReportTimeout, handleError, isFirstRender, reportResources, startReportTimeout]);\n\n\tuseEffect(() => {\n\t\tif (!report) {\n\t\t\treturn;\n\t\t}\n\n\t\treport.pages(currentPage).run();\n\t}, [currentPage, currentBookmark, inputControls, report]);\n\n\tconst handleDownloadReport = ({ target }: React.ChangeEvent) => {\n\t\tconst outputFormat = target.value;\n\t\tif (!outputFormat) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst downloadParams = { ...reportResources.chartParams, ...{ download: [true] } };\n\n\t\tsetIsDownloadInProgress(true);\n\n\t\tglobalThis.visualize((v: VisualizeModel) => {\n\t\t\tconst reportFile = v.report({\n\t\t\t\tresource: reportResources.resourceType,\n\t\t\t\tparams: downloadParams,\n\t\t\t\trunImmediately: false,\n\t\t\t\terror: (err: string) => {\n\t\t\t\t\thandleError(`${err} Unexpected chart error`);\n\t\t\t\t\tsetIsDownloadInProgress(false);\n\t\t\t\t},\n\t\t\t});\n\n\t\t\treportFile.run((_resourceLookups: OutputUrlReportModel) => {\n\t\t\t\treportFile.export(\n\t\t\t\t\t{\n\t\t\t\t\t\toutputFormat,\n\t\t\t\t\t\tignorePagination: outputFormat === 'xlsx',\n\t\t\t\t\t},\n\t\t\t\t\t(url: OutputUrlReportModel) => {\n\t\t\t\t\t\tsetCurrentReportOutput(outputFormat);\n\t\t\t\t\t\tsetIsDownloadInProgress(false);\n\t\t\t\t\t\tglobalThis.location.href = url.href;\n\t\t\t\t\t},\n\t\t\t\t\t(error: OutputUrlErrorReportModel) => {\n\t\t\t\t\t\thandleError(`${error}, Unexpected error exporting data`);\n\t\t\t\t\t\tsetIsDownloadInProgress(false);\n\t\t\t\t\t\tsetCurrentReportOutput('');\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t});\n\t\t});\n\t};\n\n\tconst handlePageChange = (targetPage: number) => {\n\t\tfor (let index = 0; index < bookmarks.length; index++) {\n\t\t\tif (targetPage < bookmarks[index].page) {\n\t\t\t\tsetCurrentBookmark(bookmarks[index - 1].page);\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\ttargetPage === bookmarks[index].page ||\n\t\t\t\t(targetPage > bookmarks[index].page && index === bookmarks.length - 1)\n\t\t\t) {\n\t\t\t\tsetCurrentBookmark(bookmarks[index].page);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tsetCurrentPage(targetPage);\n\t};\n\n\tconst handleOnBackButtonClick = () => {\n\t\tconst newDrillDownList = drillDowns.slice(0, -1);\n\t\tconst nextReportReference = drillDowns[drillDowns.length - 1];\n\n\t\tsetTotalPages(1);\n\t\tsetCurrentPage(1);\n\t\tsetDrilldowns(newDrillDownList);\n\t\tsetReportResources({\n\t\t\tresourceType: nextReportReference.resourceType,\n\t\t\tchartParams: nextReportReference.chartParams,\n\t\t});\n\t};\n\n\tconst handleBookmarkChange = (targetPage: number) => {\n\t\tif (typeof targetPage === 'undefined' || targetPage === null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst targetBookmarkPage = bookmarks.find((bookmark) => bookmark.page === targetPage);\n\t\ttargetBookmarkPage && setCurrentPage(targetBookmarkPage.page);\n\t\tsetCurrentBookmark(targetPage);\n\t};\n\n\tconst handleReportDetailsLoading = (loading: boolean) => {\n\t\tconst reportExportLink = document.querySelectorAll('._jrHyperLink.ReportExport')[0] as HTMLSpanElement;\n\t\tif (reportExportLink?.innerText !== 'Details Export' && reportExportLink?.innerText !== 'Export Report') return;\n\n\t\tif (loading) {\n\t\t\tconst downloadingWrapper = document.createElement('div');\n\t\t\tconst downloadingIcon = document.createElement('div');\n\t\t\tconst downloadingAnimation = document.createElement('style');\n\t\t\tconst spinAnimation = document.createTextNode(\n\t\t\t\t`@keyframes rotate {from {transform: rotate(0deg)} to {transform: rotate(360deg)}}`\n\t\t\t);\n\t\t\tdownloadingAnimation.appendChild(spinAnimation);\n\t\t\tdownloadingWrapper.setAttribute('id', 'downloadingWrapper');\n\t\t\tdownloadingWrapper.classList.add('text-center', 'd-flex', 'justify-content-center', 'align-items-center');\n\t\t\tdownloadingIcon.setAttribute(\n\t\t\t\t'style',\n\t\t\t\t`\n\t\t\t\twidth: 20px;\n\t\t\t\theight: 20px;\n\t\t\t\tborder-width: 7.84px;\n\t\t\t\tborder-style: solid;\n\t\t\t\tborder-color: rgb(19, 87, 137) rgb(233, 236, 239) rgb(233, 236, 239);\n\t\t\t\tborder-image: initial;\n\t\t\t\tanimation: rotate 2s linear infinite;\n\t\t\t\tborder-radius: 50%;`\n\t\t\t);\n\t\t\tdownloadingWrapper.append(downloadingIcon);\n\t\t\tdownloadingWrapper.append(downloadingAnimation);\n\t\t\treportExportLink.parentElement?.append(downloadingWrapper);\n\t\t\treportExportLink.style.display = 'none';\n\t\t} else {\n\t\t\tdocument.getElementById('downloadingWrapper')?.remove();\n\t\t\treportExportLink.style.display = 'inline';\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Client Management - Reports - Report Detail\n\t\t\t\n\t\t\t {\n\t\t\t\t\tsetIsFirstRender(false);\n\t\t\t\t\tsetReportResources(updatedReportResources);\n\t\t\t\t\tsetFiltersModalIsShowing(false);\n\t\t\t\t\thandlePageChange(1);\n\t\t\t\t}}\n\t\t\t\tonHide={() => {\n\t\t\t\t\tsetFiltersModalIsShowing(false);\n\t\t\t\t}}\n\t\t\t/>\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tReports\n\t\t\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t
    \n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    {reportTitle}

    \n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t{!!inputControls.length && (\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetFiltersModalIsShowing(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{!isFirstRender && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{drillDowns.length > 0 && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tBack ({drillDowns.length})\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
    \n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{isFirstRender && inputControlsAreLoading ? (\n\t\t\t\t\t\t\t\tPlease wait...\n\t\t\t\t\t\t\t) : !!inputControls.length && isFirstRender ? (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\tThere are no results to show.\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tPlease click on Filters box and complete any required information to run the\n\t\t\t\t\t\t\t\t\t\treport\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\n\t\t\t\t{!isReportInProgress && !isFirstRender && (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{isReportInProgress && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { Link, useHistory, useLocation } from 'react-router-dom';\nimport { Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\n\nimport { constructUrl } from '@/lib/utils';\nimport { AdvisorModel, InquiryModel, INQUIRY_STATUS_ID, FormOption } from '@/lib/models';\nimport { advisorService, inquiryService } from '@/lib/services';\nimport { useQuery } from '@/hooks';\nimport { TablePagination } from '@/components/table';\nimport { AsyncPage, Avatar, ContactRequest, DateInput, FilterTabs } from '@/components';\nimport { format } from 'date-fns';\nimport { Typeahead } from 'react-bootstrap-typeahead';\nimport { Helmet } from 'react-helmet';\n\nexport const ClientInquiries = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\n\tconst searchParams = useQuery();\n\tconst status = searchParams.get('status') ?? INQUIRY_STATUS_ID.OPEN;\n\tconst page = searchParams.get('page') ?? '0';\n\tconst size = 10;\n\n\tconst [inquiries, setInquiries] = useState([]);\n\tconst [totalInquiryCount, setTotalInquiryCount] = useState(0);\n\tconst [yourTeam, setYourTeam] = useState([]);\n\n\tconst topicIds = useMemo(() => searchParams.get('topicIds'), [searchParams]);\n\tconst requestNumber = useMemo(() => searchParams.get('requestNumber'), [searchParams]);\n\tconst fromDate = useMemo(() => searchParams.get('fromDate'), [searchParams]);\n\tconst toDate = useMemo(() => searchParams.get('toDate'), [searchParams]);\n\tconst [topicsOptions, setTopicsOptions] = useState([]);\n\tconst [filterValues, setFilterValues] = useState({\n\t\ttopicsValue: [] as FormOption[],\n\t\trequestNumber: '',\n\t\tfromDate: fromDate ? new Date(fromDate) : null,\n\t\ttoDate: toDate ? new Date(toDate) : null,\n\t});\n\tconst [oldFilterValues, setOldFilterValues] = useState({\n\t\ttopicsValue: [] as FormOption[],\n\t\trequestNumber: '',\n\t\tfromDate: fromDate ? new Date(fromDate) : null,\n\t\ttoDate: toDate ? new Date(toDate) : null,\n\t});\n\tconst [originalFilter, setOriginalFilter] = useState(true);\n\n\tconst getStatusToSubmit = () => {\n\t\tlet statusToSubmit = [];\n\n\t\t// OPEN is not a real status, submit all that are not CLOSED instead\n\t\tif (status === INQUIRY_STATUS_ID.OPEN) {\n\t\t\tstatusToSubmit = [\n\t\t\t\tINQUIRY_STATUS_ID.INQUIRY_RECEIVED,\n\t\t\t\tINQUIRY_STATUS_ID.INQUIRY_CONFIRMED,\n\t\t\t\tINQUIRY_STATUS_ID.IN_PROGRESS,\n\t\t\t\tINQUIRY_STATUS_ID.QC_REVIEW,\n\t\t\t];\n\t\t} else {\n\t\t\tstatusToSubmit = [INQUIRY_STATUS_ID.CLOSED];\n\t\t}\n\n\t\treturn statusToSubmit;\n\t};\n\n\tconst fetchInquiryData = useCallback(async () => {\n\t\tlet statusToSubmit = getStatusToSubmit();\n\n\t\tconst response = await inquiryService\n\t\t\t.getInquiries({\n\t\t\t\t...(statusToSubmit.length > 0 && { status: statusToSubmit }),\n\t\t\t\t...(page && { page }),\n\t\t\t\t...(size && { size: String(size) }),\n\t\t\t\t...(topicIds && { topicIds: topicIds.split('|').filter((s) => s) }),\n\t\t\t\t...(requestNumber && { requestNumber }),\n\t\t\t\t...(fromDate && { fromDate }),\n\t\t\t\t...(toDate && { toDate }),\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tsetInquiries(response.inquiries);\n\t\tsetTotalInquiryCount(response.totalCount);\n\t}, [page, status]);\n\n\tconst fetchFilterOptions = useCallback(async () => {\n\t\tconst response = await inquiryService.getInquiryFilters().fetch();\n\n\t\tsetTopicsOptions(response.topics);\n\t}, []);\n\n\tuseEffect(() => {\n\t\tconst topicIdsFromQuery = (topicIds ?? '').split('|').filter((s) => s);\n\t\tlet selectedTopics: FormOption[] = [];\n\t\ttopicIdsFromQuery.forEach((tid) => {\n\t\t\ttopicsOptions.forEach((t) => {\n\t\t\t\tif (tid === t.id) {\n\t\t\t\t\tselectedTopics.push(t);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\tsetFilterValues((previousValue) => ({\n\t\t\t...previousValue,\n\t\t\ttopicsValue: selectedTopics,\n\t\t}));\n\t}, [topicIds, topicsOptions]);\n\n\tconst handleTabChange = useCallback(\n\t\t(status: string) => {\n\t\t\tlet topics =\n\t\t\t\toldFilterValues.topicsValue.length > 0\n\t\t\t\t\t? oldFilterValues.topicsValue.map((formOption) => formOption.id)\n\t\t\t\t\t: ([] as String[]);\n\t\t\tlet params = {\n\t\t\t\tstatus,\n\t\t\t\tpage: '0',\n\t\t\t\tsize: String(size),\n\t\t\t\trequestNumber: oldFilterValues.requestNumber,\n\t\t\t\tfromDate: oldFilterValues.fromDate ? format(oldFilterValues.fromDate, 'yyyy-MM-dd') : '',\n\t\t\t\ttoDate: oldFilterValues.toDate ? format(oldFilterValues.toDate, 'yyyy-MM-dd') : '',\n\t\t\t\ttopicIds: topics,\n\t\t\t};\n\n\t\t\tif (originalFilter && oldFilterValues.topicsValue.length >= 1) {\n\t\t\t\tparams.topicIds = oldFilterValues.topicsValue.map((formOption) => formOption.id);\n\t\t\t}\n\n\t\t\thistory.push(constructUrl(pathname, params, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst handlePaginationChange = ({ pageIndex }: { pageIndex: number }) => {\n\t\thistory.push(constructUrl(pathname, { page: String(pageIndex) }, search));\n\t};\n\n\tconst fetchYourTeam = useCallback(async () => {\n\t\tconst response = await advisorService.getAdvisoryTeam().fetch();\n\t\tconst firstThree = response.advisors.splice(0, 3);\n\t\tsetYourTeam(firstThree);\n\t}, []);\n\n\tconst handleFilterFormSubmit = useCallback(async () => {\n\t\tlet statusToSubmit = getStatusToSubmit();\n\t\tlet topicIds = filterValues.topicsValue.map((formOption) => formOption.id);\n\t\tlet requestNumber = filterValues.requestNumber;\n\t\tlet fromDate = filterValues.fromDate ? format(filterValues.fromDate, 'yyyy-MM-dd') : '';\n\t\tlet toDate = filterValues.toDate ? format(filterValues.toDate, 'yyyy-MM-dd') : '';\n\n\t\tconst response = await inquiryService\n\t\t\t.getInquiries({\n\t\t\t\t...(statusToSubmit.length > 0 && { status: statusToSubmit }),\n\t\t\t\t...(page && { page }),\n\t\t\t\t...(size && { size: String(size) }),\n\t\t\t\t...(topicIds && { topicIds }),\n\t\t\t\t...(requestNumber && { requestNumber }),\n\t\t\t\t...(fromDate && { fromDate }),\n\t\t\t\t...(toDate && { toDate }),\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tsetInquiries(response.inquiries);\n\t\tsetTotalInquiryCount(response.totalCount);\n\t\tsetOriginalFilter(true);\n\t\tsetOldFilterValues(filterValues);\n\n\t\thistory.push(\n\t\t\tconstructUrl(\n\t\t\t\tpathname,\n\t\t\t\t{ status: status, page: '0', size: String(size), topicIds, requestNumber, fromDate, toDate },\n\t\t\t\tsearch\n\t\t\t)\n\t\t);\n\t}, [requestNumber, status, filterValues]);\n\n\tconst handleClearFiltersButtonClick = useCallback(async () => {\n\t\tsetFilterValues({\n\t\t\ttopicsValue: [],\n\t\t\trequestNumber: '',\n\t\t\tfromDate: null,\n\t\t\ttoDate: null,\n\t\t});\n\t\tsetOldFilterValues({\n\t\t\ttopicsValue: [],\n\t\t\trequestNumber: '',\n\t\t\tfromDate: null,\n\t\t\ttoDate: null,\n\t\t});\n\t\tsetOriginalFilter(true);\n\n\t\tlet statusToSubmit = getStatusToSubmit();\n\n\t\tconst response = await inquiryService\n\t\t\t.getInquiries({\n\t\t\t\t...(statusToSubmit.length > 0 && { status: statusToSubmit }),\n\t\t\t\t...(page && { page }),\n\t\t\t\t...(size && { size: String(size) }),\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tsetInquiries(response.inquiries);\n\t\tsetTotalInquiryCount(response.totalCount);\n\n\t\thistory.push(constructUrl(pathname, { status: status, page: '0', size: String(size) }, search));\n\t}, [status]);\n\n\tconst getActiveFilterLength = () => {\n\t\treturn Object.values(filterValues).filter((fv) => {\n\t\t\tif (Array.isArray(fv)) {\n\t\t\t\treturn fv.length;\n\t\t\t}\n\n\t\t\treturn fv;\n\t\t}).length;\n\t};\n\n\tconst showFilterChangedMessage = () => {\n\t\tlet message = 'Please click Apply button to show results.';\n\t\tif (originalFilter) {\n\t\t\tmessage = '';\n\t\t}\n\t\treturn message;\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Expert Inquiries\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    Inquiries

    \n\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\thistory.push('/contact/create-inquiry');\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tCreate a new inquiry\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{inquiries.length === 0 ? (\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tYour Advisory Team is here to help.\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tReach out to us for knowledge, insight, or assistance.\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{inquiries.map((inquiry) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t

    {inquiry.inquiryListDescription}

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t

    {inquiry.advisorAccount.name}

    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    {showFilterChangedMessage()}
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tTopics\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttopicsValue: selected as FormOption[],\n\t\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetOriginalFilter(false);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\toptions={topicsOptions}\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"Select topics...\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tInquiry #\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentTarget.value = currentTarget.value.replace(/[^0-9]+/gi, '');\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...filterValues,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\trequestNumber: currentTarget.value,\n\t\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (currentTarget.value.length) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetOriginalFilter(false);\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder=\"Enter Inquiry #...\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tFrom Date\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfromDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetOriginalFilter(false);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tTo Date\n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetFilterValues((previousValue) => ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...previousValue,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttoDate: date,\n\t\t\t\t\t\t\t\t\t\t\t\t\t}));\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetOriginalFilter(false);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tApply Filters\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tYour Team\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{yourTeam.map((advisor) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{advisor.role}\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t

    {advisor.name}

    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\tSee All\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { useCallback, useState } from 'react';\nimport { Button, Col, Container, Modal, Row } from 'react-bootstrap';\n\nimport { salesLeadService } from '@/lib/services';\nimport { useAlert, useHandleError } from '@/hooks';\n\nimport { ReactComponent as InquiriesGraphic } from '@/assets/illustrations/inquiries-graphic.svg';\n\nexport const InquiryMarketing = () => {\n\tconst { showAlert } = useAlert();\n\tconst handleError = useHandleError();\n\tconst [showInquiriesModal, setShowInquiriesModal] = useState(false);\n\n\tconst handleInquiriesConfirm = useCallback(async () => {\n\t\ttry {\n\t\t\tawait salesLeadService.sendExpertIquiryEmail().fetch();\n\n\t\t\tshowAlert({\n\t\t\t\tvariant: 'success',\n\t\t\t\tchildren: () => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tThank you for your interest. Your Advisory Team will be in contact with you.\n\t\t\t\t\t\t

    \n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tsetShowInquiriesModal(false);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t}\n\t}, [handleError, showAlert]);\n\n\treturn (\n\t\t<>\n\t\t\t {\n\t\t\t\t\tsetShowInquiriesModal(false);\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\tExpert Inquiries\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\tTo learn more about our Expert Inquiries service please click the \"Confirm\" button below, and a\n\t\t\t\t\t\tmember of your Advisory Team will get in touch with you.\n\t\t\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t

    Expert Inquiries

    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tExpert Inquiries enable designated users at your organization to engage with subject-matter\n\t\t\t\t\t\t\tadvisors for guided insights via curated custom materials by request.\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tYour user account has not been designated with inquiry access at this time. To learn more\n\t\t\t\t\t\t\tabout your organization's designated user access to Expert Inquiries, please click below.\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetShowInquiriesModal(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tLearn More\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Helmet } from \"react-helmet\";\nimport { Container, Row, Col } from 'react-bootstrap';\n\nimport { useNavigationConfig } from '@/hooks';\nimport { FreshDeskLink } from '@/components';\n\nexport const Contact = () => {\n\tconst { navigationConfig } = useNavigationConfig();\n\treturn (\n\t\t\n\t\t\tHackett Connect - Contact\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    Contact Hackett

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tHow can we help you?\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tI have a question about my program or the site\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{navigationConfig?.allowAccessToInquiries && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tI have an inquiry for an advisor\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tI want to schedule a meeting with an advisor\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tCreate or view my support tickets\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Container, Row, Col } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\n\nimport { useNavigationConfig } from '@/hooks';\nimport { GetHelp, InquiryForm } from '@/components';\n\nexport const CreateInquiry = () => {\n\tconst { navigationConfig } = useNavigationConfig();\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Contact - Create Inquiry\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    \n\t\t\t\t\t\t{navigationConfig?.allowClientManagement ? (\n\t\t\t\t\t\t\tInquiry Dashboard /\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\tContact Hackett /\n\t\t\t\t\t\t)}\n\t\t\t\t\t

    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    Create a New Inquiry

    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{!navigationConfig?.allowClientManagement && }\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useCallback, useMemo, useState } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { Container, Row, Col, Card, Form } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport { constructUrl } from '@/lib/utils';\nimport { AdvisorModel, ProgramModel } from '@/lib/models';\nimport { accountService, advisorService } from '@/lib/services';\nimport { useAccount, useNavigationConfig, useQuery } from '@/hooks';\nimport { Advisor, AsyncPage, LinkBox, Select } from '@/components';\n\nexport const AdvisoryTeam = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst { account } = useAccount();\n\tconst query = useQuery();\n\tconst programId = useMemo(() => query.get('programId'), [query]);\n\tconst { navigationConfig } = useNavigationConfig();\n\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [advisors, setAdvisors] = useState([]);\n\n\tconst fetchPrograms = useCallback(async () => {\n\t\tif (!account) {\n\t\t\tthrow new Error('account is undefined');\n\t\t}\n\n\t\tconst response = await accountService.getPrograms(account.accountId, { activeOnly: true }).fetch();\n\t\tsetProgramOptions(response.programs);\n\t}, [account]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await advisorService\n\t\t\t.getAdvisoryTeam({\n\t\t\t\t...(programId && { programId }),\n\t\t\t})\n\t\t\t.fetch();\n\n\t\tsetAdvisors(response.advisors);\n\t}, [programId]);\n\n\tconst handleProgramSelectChange = ({ currentTarget }: React.ChangeEvent) => {\n\t\thistory.push(constructUrl(pathname, { programId: currentTarget.value }, search));\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Advisory Team\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

    Meet Your Team

    \n\t\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{advisors.map((advisor, index) => {\n\t\t\t\t\t\t\tconst isLast = advisors.length - 1 === index;\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{!isLast &&
    }\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\tFilters\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n","import React, { useRef } from 'react';\nimport { Redirect, Route, Switch, useRouteMatch } from 'react-router-dom';\n\nimport { Inquiries, NoMatch, Profile, Programs } from '@/pages';\nimport { NavigationSub } from '@/components';\nimport { useNavigationConfig } from '@/hooks';\n\n\nexport const Account = () => {\n\tconst { navigationConfig } = useNavigationConfig();\n\tconst { path } = useRouteMatch();\n\n\tconst routes = useRef([\n\t\t{\n\t\t\tpath: path,\n\t\t\texact: true,\n\t\t\tmain: () => ,\n\t\t},\n\t\t{\n\t\t\tpath: `${path}/profile`,\n\t\t\texact: true,\n\t\t\tmain: Profile,\n\t\t},\n\t\t{\n\t\t\tpath: `${path}/programs`,\n\t\t\texact: true,\n\t\t\tmain: Programs,\n\t\t},\n\t\t...(navigationConfig?.allowClientManagement && navigationConfig?.allowAccessToInquiries\n\t\t\t? [{\n\t\t\t\tpath: `${path}/inquiry-settings`,\n\t\t\t\texact: true,\n\t\t\t\tmain: Inquiries,\n\t\t\t}] \n\t\t\t: []),\n\t\t{\n\t\t\tpath: `${path}/*`,\n\t\t\texact: false,\n\t\t\tmain: NoMatch,\n\t\t},\n\t]).current;\n\n\treturn (\n\t\t<>\n\t\t\t\n\n\t\t\t\n\t\t\t\t{routes.map((route, index) => {\n\t\t\t\t\treturn } />;\n\t\t\t\t})}\n\t\t\t\n\t\t\n\t);\n};\n","import { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { Col, Container, Row } from 'react-bootstrap';\n\nimport { DocumentModel } from '@/lib/models';\nimport { documentService } from '@/lib/services';\nimport { useHandleError } from '@/hooks';\nimport { LinkBox, LoadingButton, RecentlyViewed, ResearchListItem } from '@/components';\nimport { Helmet } from 'react-helmet';\n\nexport const Bookmarks = () => {\n\tconst handleError = useHandleError();\n\n\tconst pageRef = useRef(0);\n\tconst sizeRef = useRef(10);\n\n\tconst [documents, setDocuments] = useState([]);\n\tconst [totalCount, setTotalCount] = useState(0);\n\tconst [loadingDocuments, setLoadingDocuments] = useState(false);\n\n\tconst fetchDocuments = useCallback(async () => {\n\t\ttry {\n\t\t\tsetLoadingDocuments(true);\n\n\t\t\tconst response = await documentService\n\t\t\t\t.getDocuments({\n\t\t\t\t\tpage: String(pageRef.current),\n\t\t\t\t\tsize: String(sizeRef.current),\n\t\t\t\t\tbookmarked: true,\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetTotalCount(response.totalCount);\n\t\t\tsetDocuments((previousValue) => {\n\t\t\t\tif (pageRef.current === 0) {\n\t\t\t\t\treturn response.documents;\n\t\t\t\t}\n\n\t\t\t\treturn previousValue.concat(response.documents);\n\t\t\t});\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetLoadingDocuments(false);\n\t\t}\n\t}, [handleError]);\n\n\tuseEffect(() => {\n\t\tfetchDocuments();\n\t}, [fetchDocuments]);\n\n\tconst handleResearchListItemChange = (document: DocumentModel) => {\n\t\tconst documentsClone = cloneDeep(documents);\n\t\tconst indexToUpdate = documentsClone.findIndex((d) => d.documentId === document.documentId);\n\n\t\tdocumentsClone[indexToUpdate] = {\n\t\t\t...documentsClone[indexToUpdate],\n\t\t\tbookmarkedFlag: document.bookmarkedFlag,\n\t\t};\n\n\t\tsetDocuments(documentsClone);\n\t};\n\n\tconst handleShowMoreButtonClick = () => {\n\t\tpageRef.current += 1;\n\t\tfetchDocuments();\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Bookmarks\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t

    \n\t\t\t\t\t\t\tYour {totalCount} Bookmark{totalCount === 1 ? '' : 's'}\n\t\t\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{documents.length === 0 ? (\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tNo Results\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{documents.map((document) => (\n\t\t\t\t\t\t\t\t\t tag.name)}\n\t\t\t\t\t\t\t\t\t\tonChange={handleResearchListItemChange}\n\t\t\t\t\t\t\t\t\t\tisPodcast={!!document.podcastUrl}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t{documents.length < totalCount && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tShow 10 More\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { Helmet } from 'react-helmet';\nimport { Col, Container, Form, Row } from 'react-bootstrap';\nimport { useHandleError, useQuery } from '@/hooks';\nimport {\n\tMultiSelect,\n\tMultiSelectOption,\n\tSelect,\n\tflattenParentAndChildIdsForSelection,\n\tgetTopLevelParentAndChildrenIds,\n} from '@/components';\nimport { SORT_DIRECTION, TableCell, TableHeader, TableRenderer, TableRow } from '@/components/table';\nimport { USE_CASES_TABLE_COLUMN_IDS, useCasesTableColumns, useCasesTableHeaders } from '@/lib/__mocks__';\nimport { constructUrl, formOptionToMultiSelectOption } from '@/lib/utils';\nimport { TableRowConfig } from '@/components/table/models';\nimport { FormOption, UseCase } from '@/lib/models';\nimport { useCaseService } from '@/lib/services';\n\nexport const UseCases = () => {\n\tconst history = useHistory();\n\tconst { pathname, search } = useLocation();\n\tconst handleError = useHandleError();\n\n\tconst query = useQuery();\n\tconst programId = useMemo(() => query.get('programId') ?? '', [query]);\n\tconst parentBusinessProcessIds = useMemo(() => query.get('parentBusinessProcessIds'), [query]);\n\tconst businessProcessIds = useMemo(() => query.get('businessProcessIds'), [query]);\n\tconst industryIds = useMemo(() => query.get('industryIds') ?? '', [query]);\n\tconst aiToolIds = useMemo(() => query.get('aiToolIds') ?? '', [query]);\n\tconst valueRatingIds = useMemo(() => query.get('valueRatingIds') ?? '', [query]);\n\tconst page = useMemo(() => query.get('page') ?? '0', [query]);\n\tconst size = useMemo(() => query.get('size') ?? '10', [query]);\n\tconst sortDirection = useMemo(() => query.get('sortDirection'), [query]);\n\tconst sortField = useMemo(() => query.get('sortField'), [query]);\n\n\tconst [filtersAreLoading, setFiltersAreLoading] = useState(false);\n\tconst [programOptions, setProgramOptions] = useState([]);\n\tconst [businessProcessOptions, setBusinessProcessOptions] = useState([]);\n\tconst [industryOptions, setIndustryOptions] = useState([]);\n\tconst [aiToolOptions, setAiToolOptions] = useState([]);\n\tconst [valueRatingOptions, setValueRatingOptions] = useState([]);\n\n\tconst [tableIsLoading, setTableIsLoading] = useState(false);\n\tconst [totalCount, setTotalCount] = useState(0);\n\tconst [totalCountDescription, setTotalCountDescription] = useState('');\n\tconst [tableColumnsData, setTableColumnsData] = useState(useCasesTableColumns);\n\tconst [tableHeadersData] = useState(useCasesTableHeaders);\n\tconst clearSelectionsRef = useRef<() => void>();\n\tconst [tableRowData, setTableRowData] = useState[]>([]);\n\n\t/* ------------------------------------- */\n\t/* Must default a programId */\n\t/* ------------------------------------- */\n\tuseEffect(() => {\n\t\tif (!programOptions || programOptions.length <= 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!programId) {\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', programId: programOptions[0].id }, search));\n\t\t}\n\t}, [history, pathname, programId, programOptions, search]);\n\n\tconst allBpSelections = useMemo(() => {\n\t\treturn flattenParentAndChildIdsForSelection(\n\t\t\tbusinessProcessOptions,\n\t\t\tparentBusinessProcessIds?.split('|').filter((s) => s),\n\t\t\tbusinessProcessIds?.split('|').filter((s) => s)\n\t\t);\n\t}, [businessProcessIds, businessProcessOptions, parentBusinessProcessIds]);\n\n\tconst fetchFilters = useCallback(async () => {\n\t\ttry {\n\t\t\tsetFiltersAreLoading(true);\n\n\t\t\tconst { programs, businessProcesses, industries, aiTools, valueRatings } = await useCaseService\n\t\t\t\t.getUseCaseFilters({\n\t\t\t\t\t...(programId && { programId }),\n\t\t\t\t\t...(parentBusinessProcessIds && { parentBusinessProcessIds }),\n\t\t\t\t\t...(businessProcessIds && { businessProcessIds }),\n\t\t\t\t\t...(industryIds && { industryIds }),\n\t\t\t\t\t...(aiToolIds && { aiToolIds }),\n\t\t\t\t\t...(valueRatingIds && { valueRatingIds }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tsetProgramOptions(programs);\n\t\t\tsetBusinessProcessOptions(formOptionToMultiSelectOption(businessProcesses));\n\t\t\tsetIndustryOptions(industries);\n\t\t\tsetAiToolOptions(aiTools);\n\t\t\tsetValueRatingOptions(valueRatings);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetFiltersAreLoading(false);\n\t\t}\n\t}, [aiToolIds, businessProcessIds, handleError, industryIds, parentBusinessProcessIds, programId, valueRatingIds]);\n\n\tconst fetchData = useCallback(async () => {\n\t\tif (!programId) {\n\t\t\treturn;\n\t\t}\n\t\ttry {\n\t\t\tsetTableIsLoading(true);\n\n\t\t\tconst response = await useCaseService\n\t\t\t\t.getUseCases({\n\t\t\t\t\t...(page && { page }),\n\t\t\t\t\t...(size && { size }),\n\t\t\t\t\t...(sortField && { sortField }),\n\t\t\t\t\t...(sortDirection && { sortDirection }),\n\t\t\t\t\t...(programId && { programId }),\n\t\t\t\t\t...(parentBusinessProcessIds && { parentBusinessProcessIds }),\n\t\t\t\t\t...(businessProcessIds && { businessProcessIds }),\n\t\t\t\t\t...(industryIds && { industryIds }),\n\t\t\t\t\t...(aiToolIds && { aiToolIds }),\n\t\t\t\t\t...(valueRatingIds && { valueRatingIds }),\n\t\t\t\t})\n\t\t\t\t.fetch();\n\n\t\t\tconst formattedUseCases = response.useCases.map((uc) => {\n\t\t\t\treturn {\n\t\t\t\t\trowId: uc.useCaseId,\n\t\t\t\t\tchecked: false,\n\t\t\t\t\texpanded: false,\n\t\t\t\t\tcolumnData: uc,\n\t\t\t\t};\n\t\t\t});\n\n\t\t\tsetTotalCount(response.totalCount);\n\t\t\tsetTotalCountDescription(response.totalCountDescription);\n\t\t\tsetTableRowData(formattedUseCases);\n\t\t} catch (error) {\n\t\t\thandleError(error);\n\t\t} finally {\n\t\t\tsetTableIsLoading(false);\n\t\t}\n\t}, [\n\t\taiToolIds,\n\t\tbusinessProcessIds,\n\t\thandleError,\n\t\tindustryIds,\n\t\tpage,\n\t\tparentBusinessProcessIds,\n\t\tprogramId,\n\t\tsize,\n\t\tsortDirection,\n\t\tsortField,\n\t\tvalueRatingIds,\n\t]);\n\n\tuseEffect(() => {\n\t\tfetchFilters();\n\t}, [fetchFilters]);\n\n\tuseEffect(() => {\n\t\tfetchData();\n\t}, [fetchData]);\n\n\tconst handleBusinessProcessesChange = useCallback(\n\t\t(selectedBusinessProcessIds: string[]) => {\n\t\t\tif (clearSelectionsRef.current) {\n\t\t\t\tclearSelectionsRef.current();\n\t\t\t}\n\n\t\t\tconst { parentIds, remainingChildrenIds } = getTopLevelParentAndChildrenIds(\n\t\t\t\tbusinessProcessOptions,\n\t\t\t\tselectedBusinessProcessIds\n\t\t\t);\n\n\t\t\thistory.replace(\n\t\t\t\tconstructUrl(\n\t\t\t\t\tpathname,\n\t\t\t\t\t{\n\t\t\t\t\t\tpage: '0',\n\t\t\t\t\t\tparentBusinessProcessIds: parentIds,\n\t\t\t\t\t\tbusinessProcessIds: remainingChildrenIds,\n\t\t\t\t\t},\n\t\t\t\t\tsearch\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\t\t[businessProcessOptions, history, pathname, search]\n\t);\n\n\tconst handleFilterChange = useCallback(\n\t\t({ currentTarget }: React.ChangeEvent) => {\n\t\t\tclearSelectionsRef.current?.();\n\t\t\thistory.replace(\n\t\t\t\tconstructUrl(\n\t\t\t\t\tpathname,\n\t\t\t\t\t{ page: '0', [currentTarget.name]: currentTarget.value },\n\t\t\t\t\tcurrentTarget.name === 'programId' ? '' : search\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst handleTableSort = useCallback(\n\t\t(sortKey: string, sortDirection: SORT_DIRECTION) => {\n\t\t\tclearSelectionsRef.current?.();\n\t\t\thistory.replace(constructUrl(pathname, { page: '0', sortField: sortKey, sortDirection }, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\tconst handlePaginationChange = useCallback(\n\t\t({ pageSize, pageIndex }) => {\n\t\t\thistory.replace(constructUrl(pathname, { page: String(pageIndex), size: String(pageSize) }, search));\n\t\t},\n\t\t[history, pathname, search]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - AI Use Cases\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    AI Use Cases

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tProgram\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{programOptions.map(({ id, display, disabled }) => (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tBusiness Process\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{businessProcessIds ? 'Select' : 'Any'}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tIndustry\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{industryOptions.map(({ id, display, disabled }) => (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tAI Technology\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{aiToolOptions.map(({ id, display, disabled }) => (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tValue Rating\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{valueRatingOptions.map(({ id, display, disabled }) => (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tclearSelectionsRef.current = clearSelections;\n\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeader = tableHeadersData[columnConfig.columnId];\n\t\t\t\t\t\t\t\t\t\t\tconst tableHeaderProps = {\n\t\t\t\t\t\t\t\t\t\t\t\tkey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tsortable: tableHeader.isSortable,\n\t\t\t\t\t\t\t\t\t\t\t\tsortKey: tableHeader.tableHeaderId,\n\t\t\t\t\t\t\t\t\t\t\t\tonSort: handleTableSort,\n\t\t\t\t\t\t\t\t\t\t\t\tsortDirection:\n\t\t\t\t\t\t\t\t\t\t\t\t\tsortField && sortField === tableHeader.tableHeaderId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? (sortDirection as SORT_DIRECTION)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase USE_CASES_TABLE_COLUMN_IDS.USE_CASES:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{totalCountDescription} {tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{tableHeader.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\ttableBodyRowRenderer={(data, _checkboxProps) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\thistory.push(`/use-cases/${data.rowId}`);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{Object.values(tableColumnsData).map((columnConfig) => {\n\t\t\t\t\t\t\t\t\t\t\tif (!columnConfig.isShowing) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\tconst { columnData } = data;\n\n\t\t\t\t\t\t\t\t\t\t\tswitch (columnConfig.columnId) {\n\t\t\t\t\t\t\t\t\t\t\t\tcase USE_CASES_TABLE_COLUMN_IDS.USE_CASES:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase USE_CASES_TABLE_COLUMN_IDS.NUMBER:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.useCaseSequence}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\t\t\tcase USE_CASES_TABLE_COLUMN_IDS.FUNCTION:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.functionDescription}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase USE_CASES_TABLE_COLUMN_IDS.BUSINESS_PROCESS:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.businessProcessesDescription}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase USE_CASES_TABLE_COLUMN_IDS.AI_TECHNOLOGY:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.aiToolsDescription}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tcase USE_CASES_TABLE_COLUMN_IDS.VALUE_RATING:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{columnData.valueRating.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn N/A;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tpageSize={parseInt(size, 10)}\n\t\t\t\t\t\t\tpageIndex={parseInt(page, 10)}\n\t\t\t\t\t\t\ttableRowDataTotal={totalCount}\n\t\t\t\t\t\t\tonPaginationChange={handlePaginationChange}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import React, { useCallback, useState } from 'react';\nimport { Helmet } from 'react-helmet';\nimport { useParams } from 'react-router-dom';\nimport { Col, Container, Row, Tab, Tabs } from 'react-bootstrap';\nimport { AiTool, UseCase } from '@/lib/models';\nimport { useCaseService } from '@/lib/services';\nimport { AsyncPage } from '@/components';\nimport classNames from 'classnames';\nimport { ReactComponent as StarIcon } from '@/assets/icons/icon-star-large.svg';\n\nexport const UseCaseDetail = () => {\n\tconst { useCaseId } = useParams<{ useCaseId: string }>();\n\tconst [aiTools, setAiTools] = useState([]);\n\tconst [useCase, setUseCase] = useState();\n\n\tconst fetchUseCase = useCallback(async () => {\n\t\tconst response = await useCaseService.getUseCase(useCaseId).fetch();\n\n\t\tsetAiTools(response.aiTools);\n\t\tsetUseCase(response.useCase);\n\t}, [useCaseId]);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - AI Use Cases - AI Use Case Detail\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    {useCase?.name}

    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Category Observed

    \n\t\t\t\t\t\t\t\t\t

    {useCase?.categoryObserved.name}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{useCase?.useCaseClient.permissionToViewClientName && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    Client

    \n\t\t\t\t\t\t\t\t\t\t

    {useCase?.useCaseClient.name}

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Value Rating

    \n\t\t\t\t\t\t\t\t\t

    {useCase?.valueRating.name}

    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    AI Technologies

    \n\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t{aiTools.map((aiTool) => {\n\t\t\t\t\t\t\t\t\t\t\tconst useCaseAiToolIds = (useCase?.aiTools ?? []).map((it) => it.aiToolId);\n\t\t\t\t\t\t\t\t\t\t\tconst isIncluded = useCaseAiToolIds.includes(aiTool.aiToolId);\n\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{aiTool.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    • \n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t

    Use Case Description

    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\tAI Use Case #{useCase?.useCaseSequence}\n\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    Function & Process

    \n\t\t\t\t\t\t\t\t{useCase?.useCaseBusinessTaxonomies?.map((pair, index) => (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    {pair.parent.name}
    \n\t\t\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t\t\t{pair.children.map((child) => (\n\t\t\t\t\t\t\t\t\t\t\t\t
    • {child.name}
    • \n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t

    Industry

    \n\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t{(useCase?.industries ?? []).map((i) => (\n\t\t\t\t\t\t\t\t\t\t
    • {i.description}
    • \n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n","import { format, parseISO } from 'date-fns';\nimport React, { useCallback, useState } from 'react';\nimport { Button, Card, Col, Container, Form, Row } from 'react-bootstrap';\n\nimport { publicService } from '@/lib/services';\nimport { useHandleError } from '@/hooks';\nimport { AsyncPage } from '@/components';\nimport { Helmet } from 'react-helmet';\n\nexport const Version = () => {\n\tconst handleError = useHandleError();\n\n\tconst [date, setDate] = useState('');\n\tconst [status, setStatus] = useState('');\n\tconst [version, setVersion] = useState('');\n\n\tconst fetchData = useCallback(async () => {\n\t\tconst response = await publicService.getSystemStatus().fetch();\n\n\t\tsetDate(format(new Date(response.date), 'MM/dd/yyyy h:mm:ss a'));\n\t\tsetStatus(response.status);\n\t\tsetVersion(response.version);\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\tHackett Connect - Version\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tUI Status\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tDate\n\t\t\t\t\t\t\t\t\t

    {format(parseISO(__DATE_TIME__), 'MM/dd/yyyy h:mm:ss a')}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tVersion\n\t\t\t\t\t\t\t\t\t

    {__VERSION__}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tthrow new Error('Test Error');\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tThrow Test Error\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tSystem Status\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tDate\n\t\t\t\t\t\t\t\t\t

    {date}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tStatus\n\t\t\t\t\t\t\t\t\t

    {status}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tVersion\n\t\t\t\t\t\t\t\t\t

    {version}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\t\tawait publicService.getError().fetch();\n\t\t\t\t\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\t\t\t\t\thandleError(error);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tThrow Test Error\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n","import Cookies from 'js-cookie';\nimport React, { useCallback, useEffect } from 'react';\nimport { COOKIES } from '@/lib/models';\nimport { ErrorDisplay } from '@/components';\nimport { httpSingleton } from '@/lib/http-client/';\nimport { Helmet } from 'react-helmet';\n\ninterface MaintenanceProps {\n\tclassName?: string;\n}\n\nexport const Maintenance = ({ className }: MaintenanceProps) => {\n\tuseEffect(() => {\n\t\tconst getSystemStatus = async () => {\n\t\t\ttry {\n\t\t\t\tconst response = await httpSingleton.getSystemStatus();\n\n\t\t\t\tif (response === 503) {\n\t\t\t\t\t// If system is down, stay on this page.\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet targetUrl = Cookies.get(COOKIES.MAINTENANCE_TARGET_URL) ?? '/';\n\t\t\t\tif (targetUrl === '/maintenance') {\n\t\t\t\t\ttargetUrl = '/';\n\t\t\t\t}\n\n\t\t\t\twindow.location.replace(targetUrl);\n\t\t\t} catch (error) {\n\t\t\t\t// Do not handle, assume system is down.\n\t\t\t}\n\t\t};\n\n\t\tgetSystemStatus();\n\n\t\treturn () => {\n\t\t\tCookies.remove(COOKIES.MAINTENANCE_TARGET_URL);\n\t\t};\n\t}, []);\n\n\tconst fetchPageData = useCallback(async () => {\n\t\tlet targetUrl = Cookies.get(COOKIES.MAINTENANCE_TARGET_URL) ?? '/';\n\t\tif (targetUrl === '/maintenance') {\n\t\t\ttargetUrl = '/';\n\t\t}\n\t\twindow.location.replace(targetUrl);\n\t}, []);\n\n\treturn (\n\t\t<>\n\t\t\t\n\t\t\t\tHackett Connect - Maintenance\n\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n","import Cookies from 'js-cookie';\nimport React, { useCallback, useEffect, useRef } from 'react';\nimport { BrowserRouter as Router, Route, Switch, useHistory, useLocation, useRouteMatch } from 'react-router-dom';\nimport { ThemeProvider as BootstrapThemeProvider } from 'react-bootstrap';\nimport { createBrowserHistory } from 'history';\n\nimport {\n\tAccountProvider,\n\tAlertProvider,\n\tAnalyticsProvider,\n\tNavigationConfigProvider,\n\tThemeProvider as MasterClientThemeProvider,\n} from '@/contexts';\n\nimport config from '@/lib/config';\nimport { constructUrl } from '@/lib/utils';\nimport { accessTokenCookieAttributes, COOKIES } from '@/lib/models';\nimport { accountService, navigationService, publicService } from '@/lib/services';\nimport { Alert, AsyncPage, Footer, PrivateRoute } from '@/components';\n\nimport { prefixes } from '@/jss/bootstrap';\nimport { useGlobalStyles } from '@/jss/hooks/use-global-styles';\nimport { useThemedBootstrapStyles } from '@/jss/hooks/use-themed-bootstrap-styles';\n\nimport { routes } from '@/routes';\n\nimport 'react-bootstrap-typeahead/css/Typeahead.css';\nimport 'react-datepicker/dist/react-datepicker.css';\n\nimport { useAccount, useNavigationConfig } from '@/hooks';\nimport { ErrorConfig } from '@/lib/http-client';\n\nimport * as Sentry from '@sentry/react';\n\n// Wrapped by , allows use of 'react-router-dom' hooks\nconst RoutedApp = () => {\n\tconst history = useHistory();\n\tconst { pathname } = useLocation();\n\tconst isSignInRoute = !!useRouteMatch({ path: '/sign-in' });\n\tconst { account, setAccount } = useAccount();\n\tconst { setNavigationConfig } = useNavigationConfig();\n\tconst appIsInitialized = useRef(false);\n\n\tconst fetchData = useCallback(async () => {\n\t\ttry {\n\t\t\tif (appIsInitialized.current) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst path = window.location.pathname;\n\t\t\tconst searchParams = new URLSearchParams(window.location.search);\n\t\t\tconst accessTokenFromQuery = searchParams.get('X-Hackett-Access-Token');\n\n\t\t\tif (accessTokenFromQuery) {\n\t\t\t\tif (config.HACKETT_ADVISORY_USE_REAL_AUTH === 'true') {\n\t\t\t\t\tconst decryptedToken = await publicService.getDecryptedToken(accessTokenFromQuery).fetch();\n\t\t\t\t\tCookies.set(COOKIES.ACCESS_TOKEN, decryptedToken, accessTokenCookieAttributes);\n\t\t\t\t} else {\n\t\t\t\t\tCookies.set(COOKIES.ACCESS_TOKEN, accessTokenFromQuery, accessTokenCookieAttributes);\n\t\t\t\t}\n\n\t\t\t\tsearchParams.delete('X-Hackett-Access-Token');\n\n\t\t\t\ttry {\n\t\t\t\t\tawait accountService.trackSignIn().fetch();\n\t\t\t\t} catch (_trackingError) {\n\t\t\t\t\t// Fail silently, allow app to load even if tracking call is unsuccessful.\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst accessTokenFromCookie = Cookies.get(COOKIES.ACCESS_TOKEN);\n\t\t\tconst targetUrl = constructUrl(path, {}, searchParams.toString());\n\n\t\t\tif (!accessTokenFromCookie && !isSignInRoute) {\n\t\t\t\tCookies.set(COOKIES.TARGET_URL, targetUrl, {\n\t\t\t\t\tsameSite: 'strict',\n\t\t\t\t});\n\n\t\t\t\tif (config.HACKETT_ADVISORY_USE_REAL_AUTH === 'true') {\n\t\t\t\t\twindow.location.href = constructUrl(config.HACKETT_ADVISORY_AUTH_UI_URL, {\n\t\t\t\t\t\tredirectUrl: encodeURIComponent(window.location.href),\n\t\t\t\t\t\tplatform: 'hackett-connect',\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\thistory.replace('/sign-in');\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (accessTokenFromCookie) {\n\t\t\t\tconst [accountResponse, navigationResponse] = await Promise.all([\n\t\t\t\t\taccountService.getCurrentAccount().fetch(),\n\t\t\t\t\tnavigationService.getNavigationItems().fetch(),\n\t\t\t\t]);\n\t\t\t\tSentry.setUser({ email: accountResponse.account.emailAddress });\n\t\t\t\tsetAccount(accountResponse.account);\n\t\t\t\tsetNavigationConfig(navigationResponse);\n\n\t\t\t\tif (!accountResponse.account.hasAdvisoryProfile) {\n\t\t\t\t\thistory.replace('/complete-profile');\n\n\t\t\t\t\t// Force user to complete their profile\n\t\t\t\t\tappIsInitialized.current = true;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (accessTokenFromQuery) {\n\t\t\t\thistory.replace(targetUrl);\n\t\t\t}\n\n\t\t\tappIsInitialized.current = true;\n\t\t} catch (error) {\n\t\t\t// Do not throw if the error status is 503.\n\t\t\t// If an error is thrown here, The below would prevent this component's children from rendering.\n\t\t\t// That means the component could never show if a 503 occurs during initialization.\n\t\t\t// The component is tied to the \"/maintenance\" route, and all routes are technically a chilren of this component\n\t\t\tif ((error as ErrorConfig)?.status === 503) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthrow error;\n\t\t}\n\t}, [history, isSignInRoute, setAccount, setNavigationConfig]);\n\n\t// const setTrackingUrl = useCallback(() => {\n\t// \t// Remove any sensative information from the url\n\t// \t// (Just the possible accessToken for now).\n\t// \tconst searchParams = new URLSearchParams(search);\n\t// \tsearchParams.delete('X-Hackett-Access-Token');\n\n\t// \t// Reassemble the url before sending pageView event.\n\t// \tconst searchParamsLength = Array.from(searchParams).length;\n\t// \treturn searchParamsLength > 0 ? constructUrl(pathname, {}, searchParams.toString()) : pathname;\n\t// }, [search, pathname]);\n\n\tuseEffect(() => {\n\t\twindow.scrollTo(0, 0);\n\t}, [pathname]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t{routes.map((route, index) => {\n\t\t\t\t\t\treturn } />;\n\t\t\t\t\t})}\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t{routes.map((route, index) => {\n\t\t\t\t\t\treturn React.createElement(route.private ? PrivateRoute : Route, {\n\t\t\t\t\t\t\tkey: index,\n\t\t\t\t\t\t\tpath: route.path,\n\t\t\t\t\t\t\texact: route.exact,\n\t\t\t\t\t\t\tchildren: ,\n\t\t\t\t\t\t});\n\t\t\t\t\t})}\n\t\t\t\t\n\t\t\t\t