{"version":3,"sources":["shared/theme.ts","components/GlobalStyle/index.tsx","shared/globals.ts","components/MiniSearch/index.js","utils/SearchHelper.js","utils/SiteWidgetizer.js","components/common/index.tsx","components/Dropdown/styles.ts","components/Dropdown/index.tsx","components/Pill/styles.ts","components/Pill/index.tsx","components/Banner/styles.ts","components/Banner/index.tsx","hooks/index.ts","components/Stack/index.tsx","components/PageSection/styles.ts","components/PageSection/index.tsx","assets/images/icons/icon-credentials-white-green-01.svg","assets/images/icons/icon-about-blue-green-01.svg","components/Stats/styles.ts","components/Stats/index.tsx","components/ActivityIndicator/index.tsx","pages/TestPage/index.tsx","components/SearchBar/styles.ts","utils/index.ts","components/AutoCompletionTextField/styles.ts","components/AutoCompletionTextField/index.tsx","assets/images/icons/icon-credentials-blue-green-01.svg","assets/images/icons/icon-organization-blue-green-01.svg","assets/images/icons/icon-assessments-blue-green-01.svg","assets/images/UpdatedIcons/CE-Icon_3-Learning-Opportunity_Blue-Green_High-Res.png","assets/images/icons/icon-competencies-blue-green-01.svg","assets/images/icons/icon-pathways-blue-green-01.svg","assets/images/icons/icon-transfer-value-blue-green-01.svg","assets/images/UpdatedIcons/CE-Icon_10-Support_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_12-Industries_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_13-Jobs_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_11-Occupations_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_14-Work-Roles_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_20-QA-Actions_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_21-Rubrics_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_22-Metrics_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_8-Outcome-Data_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_6-Collection_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_15-Tasks_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_17-Transfer-Intermediary_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_19-Progression-Model_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_18-Concept-Scheme_Blue-Green_High-Res.png","shared/data.ts","services/api.ts","components/SearchBar/index.tsx","assets/images/icons/background-dot-light-blue-01.svg","components/Carousel/index.tsx","components/TabBar/index.tsx","assets/images/icons/icon-slider-credential-providers-01.svg","assets/images/icons/icon-slider-quality-assurance-organizations-01.svg","assets/images/icons/icon-slider-employers-01.svg","assets/images/icons/icon-slider-individual-01.svg","assets/images/icons/icon-slider-government-agencies-01.svg","assets/images/icons/icon-slider-application-developers-01.svg","assets/images/icons/icon-slider-skill-and-competency-creators-01.svg","components/CarouselBlock/index.tsx","assets/images/icons/icon-credentials-blue-white-01.svg","pages/HomePage/data.ts","assets/images/icons/icon-learning-opportunities-blue-white-01.svg","assets/images/icons/icon-assessments-blue-white-01.svg","assets/images/icons/icon-quality-assurance-blue-white-01.svg","assets/images/icons/icon-competencies-blue-white-01.svg","assets/images/icons/icon-pathways-blue-white-01.svg","assets/images/icons/icon-transfer-value-blue-white-01.svg","assets/images/icons/background.svg","assets/images/icons/curved-line-background.svg","pages/HomePage/InformationPanel.tsx","pages/HomePage/styles.ts","components/DetailPage/styles.ts","components/DetailPage/LinkObject.tsx","pages/HomePage/index.tsx","components/Error/styles.ts","components/Error/index.tsx","pages/ReportsDataPage/index.tsx","components/Header/styles.ts","utils/LocalStorage.js","components/Header/index.tsx","components/LoadingOrError/styles.ts","components/LoadingOrError/index.tsx","components/PageSectionItem/index.tsx","assets/images/icons/icon-organization-white-green-01.svg","assets/images/icons/icon-occupations-and-industries-blue-green-01.svg","assets/images/icons/icon-process-blue-green-01.svg","components/SearchPills/styles.ts","components/PillLink/styles.ts","components/PillLink/index.tsx","components/DetailPage/TruncatedItemList.tsx","components/SearchPills/index.tsx","validation/index.tsx","components/PillDisplay/styles.ts","components/PillDisplay/index.tsx","pages/OrganizationPage/AboutDetail.tsx","components/DetailPage/Place.tsx","assets/images/icons/icon-location-blue-green-01.svg","services/map.ts","components/DetailPage/ModalLinks.tsx","components/DetailPage/Outline.tsx","components/DetailPage/Shared.tsx","components/DetailPage/JurisdictionProfile.tsx","components/HasAnyFilled/index.tsx","components/DetailPage/ContactPoint.tsx","components/DetailPage/LocationPageSection.tsx","components/DetailPage/PageBanner.tsx","assets/images/icons/icon-quality-assurance-blue-green-01.svg","components/Modal/styles.ts","components/GetResourceByURI/index.js","components/Modal/index.tsx","components/DetailPage/JurisdictionAssertions.tsx","components/DetailPage/QualityAssurancePageSection.tsx","assets/images/icons/icon-additional-information-blue-green-01.svg","assets/images/icons/icon-jsonld.png","components/DetailPage/JSONLinkedDataModal.tsx","components/DetailPage/AdditionalInformationPageSection.tsx","components/TextLink/index.tsx","components/VerificationServiceProfile/styles.ts","components/DetailPage/DateRange.tsx","components/DetailPage/CostProfile.tsx","components/VerificationServiceProfile/index.tsx","components/VerificationServiceProfile/list.tsx","components/DetailPage/TabSelector.tsx","components/DetailPage/CostManifest.tsx","components/DetailPage/ValueProfile.tsx","components/AJAXResourceList/index.tsx","components/DetailPage/Competency.tsx","components/DetailPage/CompetencyFramework.tsx","components/DetailPage/ConditionProfile.tsx","components/DetailPage/ConditionManifest.tsx","components/DetailPage/ProcessProfile.tsx","utils/JSONLDMetaHelper.js","pages/OrganizationPage/index.tsx","assets/images/common/powered_by_credential_registry.png","components/Footer/styles.ts","components/Footer/index.tsx","assets/images/UpdatedIcons/CE-Icon_3-Course_Blue-Green_High-Res.png","assets/images/UpdatedIcons/CE-Icon_3-Learning-Program_Blue-Green_High-Res.png","assets/images/icons/icon-pathwaysets-blue-green-01.svg","assets/images/UpdatedIcons/CE-Icon_9-Scheduled-Offering_Blue-Green_High-Res.png","components/SearchResultItem/index.tsx","pages/SearchPage/styles.ts","components/FilterPanel/styles.ts","components/FilterPanel/CFilterItem.tsx","components/FilterPanel/index.tsx","assets/images/icons/icon-competency-framework-white-green-01.svg","pages/SearchPage/EmptyResult.tsx","components/SearchResultPillSection/styles.ts","components/SearchResultPillSection/index.tsx","components/BackToTopButton/index.tsx","pages/SearchPage/index.tsx","pages/ComparePage/index.tsx","assets/images/icons/icon-competencies-white-green-01.svg","assets/images/icons/icon-connections-green-blue-01.svg","assets/images/icons/icon-subjects-and-keywords-blue-green-01.svg","components/DetailPage/SubjectsAndKeywordsPageSection.tsx","components/DetailPage/OccupationsAndIndustriesSection.tsx","components/DetailPage/WorkforceDemandAction.tsx","components/Modal/AJAXModal.tsx","pages/CompetencyPage/index.tsx","components/CompareSelectedListPanel/index.tsx","assets/images/icons/icon-costs-and-time-blue-green-01.svg","pages/CredentialPage/AboutDetail.tsx","components/DetailPage/ConnectionsSection.tsx","components/DetailPage/DurationProfile.tsx","components/DetailPage/profileStyles.ts","components/DetailPage/FinancialAssistance.tsx","assets/images/icons/icon-organization-green-blue-01.svg","components/DetailPage/RelatedOrganizationPageSection.tsx","components/DetailPage/RevocationProfile.tsx","components/DetailPage/QuantitativeValue.tsx","components/DetailPage/DataSetProfile.tsx","components/DetailPage/AggregateDataProfile.tsx","components/DetailPage/OutcomesDataPageSection.tsx","pages/CredentialPage/index.tsx","assets/images/icons/icon-assessments-white-green-01.svg","assets/images/icons/icon-scoring-method-blue-green-01.svg","assets/images/icons/icon-example-blue-green-01.svg","pages/AssessmentPage/AboutDetail.tsx","components/DetailPage/CostsAndTimePageSection.tsx","components/ExpandableText/styles.ts","components/ExpandableText/index.tsx","pages/AssessmentPage/index.tsx","assets/images/icons/icon-learning-opportunities-white-green-01.svg","pages/LearningOpportunityPage/index.tsx","pages/CompetencyFrameworkPage/index.tsx","pages/CompetencyFrameworkPage/indexv2.tsx","pages/ConceptSchemePage/index.tsx","pages/PathwayPage/index.tsx","assets/images/icons/icon-pathways-white-green-01.svg","assets/images/icons/icon-pathways-green-blue-01.svg","pages/PathwayPage/indexv2.tsx","pages/PathwayPage/indexv3.tsx","assets/images/icons/icon-pathwaysets-white-green-01.svg","pages/PathwaySetPage/index.tsx","pages/ResourcesPage/index.tsx","pages/JobPage/index.tsx","pages/OccupationPage/index.tsx","pages/WorkRolePage/index.tsx","pages/TaskPage/index.tsx","pages/RubricPage/index.tsx","pages/SupportServicePage/index.tsx","assets/images/icons/icon-transfer-value-white-green-01.svg","assets/images/icons/icon-transfer-value-green-blue-01.svg","assets/images/icons/icon-transfer-intermediary-blue-green-01.svg","pages/TransferValuePage/index.tsx","pages/TransferIntermediaryPage/index.tsx","pages/CollectionPage/index.tsx","pages/CollectionPage/indexv2.tsx","pages/PathwayComponentPage/index.tsx","pages/CredentialingActionPage/index.tsx","assets/images/icons/icon-credential-benchmark-report-white-green-01.svg","pages/BenchmarkReportPage/index.tsx","pages/WidgetPage/index.tsx","pages/WidgetConfigurePage/index.tsx","pages/WidgetViewPage/index.tsx","pages/ProgressionModelPage/index.tsx","pages/DataSetProfilePage/index.tsx","pages/MetricPage/index.tsx","pages/IndustryPage/index.tsx","App.tsx","reportWebVitals.ts","index.tsx"],"names":["theme","color","blueDark","brown","greyDark","greyLight","aquaDark","aquaLight","white","breakpoint","tabletPortrait","tabletLandscape","desktop","fontSize","hero","xxxl","xxl","xl","lg","md","sm","xs","maxWidth","GlobalStyle","createGlobalStyle","_templateObject","_taggedTemplateLiteral","props","apiUrl","process","legacySourceUrl","appURL","registryURL","googleMapsKey","initializeFilterSearchApiUrl","autocompleteFilterSearchApiUrl","locationBoxSearchApiUrl","BUCKET_STORAGE","googleAnalyticsID","appBaseName","configName","getUUID","crypto","randomUUID","getCurrentQuery","window","SearchQuery","updateCurrentQuery","updateMethod","_window$SearchQueryLi","query","console","log","dispatchEvent","Event","SearchQueryListeners","forEach","listener","Name","Method","addFilterItem","filterID","filterURI","filterLabel","itemID","itemURI","itemText","afterOnRemove","MainFilters","_matchingFilter$Items","matchingFilter","find","m","Id","Items","getByIDOrURIOrText","push","URI","Text","onRemove","removeFilterItem","Label","_matchingFilter$Items2","matchingItem","filter","IsPreselectedFilter","RemovedPreselectedFilter","length","toggleFilterItem","_query$MainFilters","_query$MainFilters$fi","_query$MainFilters$fi2","FilterItem","applyWidgetization","_window$Widget$Config","_window$Widget$Config2","url","success","error","Widget","ID","Config","URLName","response","Result","UrlName","InWidgetMode","select","element","dataset","originalDisplay","style","display","hide","widgetDisplay","show","addEventListener","e","widgetizeLink","srcElement","StyleTag","document","createElement","body","appendChild","handleResize","setInterval","fetch","then","text","value","JSON","parse","catch","_element$tagName","tagName","toLowerCase","href","includes","Parameter","URL","searchParams","append","DefaultSearchType","toString","parentNode","_window$parent","message","action","width","height","clientHeight","parent","postMessage","stringify","StyleRules","WidgetToFinderMap","GlobalHideName","TypeName","FilterMap","doesWidgetHideThisSearchType","searchType","_window$Widget","_window$Widget$Config3","_window$Widget$Config4","_WidgetToFinderMap$se","HideGlobalFilters","widgetApplyWidgetToQuery","_window$Widget2","_window$Widget$Config5","addRoles","roles","messagePrefix","_roles$Organizations","Organizations","organization","WidgetName","Parameters","n","aid","rid","RoleIds","addTexts","textArray","InterfaceType","map","WidgetId","HasCredentialPotentialResults","filterSet","_window$Widget3","_window$Widget3$Confi","_window$Widget3$Confi2","_window$Widget4","_window$Widget4$Confi","_window$Widget4$Confi2","_window$Widget5","_window$Widget5$Confi","_window$Widget5$Confi2","_window$Widget5$Confi3","_window$Widget6","_window$Widget6$Confi","_window$Widget6$Confi2","_window$Widget6$Confi3","QualityAssurance","Provider","Subjects","Competencies","Industries","Occupations","InstructionalProgramTypes","Collections","locations","Locations","Object","keys","IsAvailableOnline","locationsFilterItem","Countries","concat","Regions","Cities","join","Type","Values","potentialResults","PotentialResults","item","ids","collectionResults","CollectionResults","widgetGetColor","colorFor","getForegroundColor","fallback","_window$Widget8","_window$Widget8$Confi","_window$Widget8$Confi2","colorSet","WidgetColors","_m$ColorFor","ColorFor","foregroundColor","UseDefaultForegroundColor","ForegroundColor","backgroundColor","UseDefaultBackgroundColor","BackgroundColor","selector","Array","from","querySelectorAll","widgetGetSingleLabelForCTDLType","type","_window$Widget9","_window$Widget9$Confi","_window$Widget9$Confi2","_window$Widget9$Confi3","LabelMaps","CTDLType","SingleLabel","widgetGetSingleLabelForText","_window$Widget13","_window$Widget13$Conf","_window$Widget13$Conf2","_window$Widget13$Conf3","SingleReplace","widgetGetPluralLabelForText","_window$Widget14","_window$Widget14$Conf","_window$Widget14$Conf2","_window$Widget14$Conf3","PluralReplace","PluralLabel","replaceTextWith","replaceType","labelType","_window$Widget15","_window$Widget15$Conf","_window$Widget15$Conf2","Map","replace","RegExp","widgetReplaceSingleLabelInText","widgetReplacePluralLabelInText","Hero","styled","h2","Button","button","_templateObject2","buttonType","css","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","inline","_templateObject8","ButtonLink","withComponent","_templateObject9","_templateObject10","InternalButtonLink","_ref","linkProps","_objectWithoutProperties","_excluded","_jsx","Link","_objectSpread","_templateObject11","CleanList","ul","_templateObject12","FlexRow","div","_templateObject13","TextField","_templateObject14","input","_templateObject15","ContentDelimiter","_templateObject16","StyledDropdown","withConfig","displayName","componentId","Header","Options","HeaderIcon","Option","selected","OptionIcon","img","Dropdown","_props$defaultOptionI","_useState","useState","defaultOptionIndex","options","_useState2","_slicedToArray","selectIndex","setSelectIndex","ref","useRef","_useState3","_useState4","expanded","setExpanded","getOptionLabel","option","undefined","handleClickOutside","event","current","contains","target","useEffect","removeEventListener","onChange","_jsxs","role","ariaLabel","onKeyUp","children","onClick","FontAwesomeIcon","icon","faAngleDown","onBlur","relatedTarget","index","src","StyledPill","outProps","pillType","PillContent","span","Pill","_props$isActive","_props$isActive2","_props$isActive3","isClicked","setIsClicked","isActive","leftIconOnActive","leftIcon","content","className","rightIconOnActive","rightIcon","Wrapper","p","_Widget","_Widget2","Inner","Left","Center","Right","Icon","small","_Widget3","Title","h1","_Widget4","SubTitle","Content","WhiteLink","a","BadgeIcon","Banner","hasBadge","fallBackIcon","title","subTitle","otherContent","alt","onError","useMediaQuery","matchQuery","setMatchQuery","_getQueryType","_query$split","split","_query$split2","size","validatedSize","parseInt","trim","replaceAll","isNaN","getQueryType","_getQueryType2","matchSize","_getWindowDimensions","_window","innerWidth","innerHeight","getWindowDimensions","useGet","isLoading","setIsLoading","_useState5","_useState6","hasError","setHasError","useCallback","onSuccess","axios","get","data","Successful","Stack","justify","align","wrap","_props$flex","flex","HStack","spacing","HStackFilterItem","VStack","variant","MobileHeader","MobileBorder","MobileIcon","MobileText","MobilePanel","MobilePanelHeader","MobilePanelTitle","MobilePanelContent","HeaderWithNote","HeaderWithNoteContent","HeaderNote","PageSection","description","isMobile","panelIsClosed","setPanelIsClosed","openOrClosePanel","faAngleRight","faAngleLeft","article","GraphHeader","header","GraphTitle","GraphCounter","HeaderTitle","h3","HeaderContent","GraphMain","Filters","li","FilterButton","GraphFooter","footer","FooterCounter","FooterTitle","FooterContent","Stats","id","titleCounter","headerTitle","headerContent","filters","label","footerContent","footerTitle","footerCounter","rotate","keyframes","Spinner","ActivityIndicator","faSpinner","Grid","faListAlt","faLocationArrow","faClock","TestPage","_useGet","_useGet2","credIcon","placeholder","faPlus","faTimes","aboutIcon","StyledSearchBar","MobileStyledSearchBar","Section","minWidth","LocationSection","SectionTitle","SearchButton","MobileSearchText","MobileSearchIconButton","ClearButton","isCheckboxFilter","isOrganization","BroadType","getResultsLocationField","formatPrice","number","currencyHTMLEntity","numberWithCommas","toFixed","decodedCurrency","decode","getLinkType","detailSectionProperties","organizationAbout","organizationSectors","organizationProcess","organizationProcessProfiles","organizationManifests","credentialAbout","credentialAboutConnections","credentialCostAndTime","credentialCostAndTimeRenewal","credentialRequirements","entityConnections","entityCompetencies","credentialConnections","assessmentConnections","loppConnections","credentialProcess","credentialProcessProfiles","assessmentAbout","assessmentScoringMethod","assessmentExample","assessmentMethod","assessmentProcess","assessmentProcessProfiles","creditValue","deliveryType","loppAbout","learningMethodType","collectionAbout","transferValueConnections","transferValueProcess","transferIntermediaryAbout","contact","additionalInformation","jurisdiction","qa","jurisdictionAssertions","subjectsAndKeywords","relatedOrganizations","occupationsAndIndustries","costAndTime","dataSetProfileAbout","scheduledOfferingAbout","supportServiceAbout","occupationAbout","pathwayComponentAbout","workClassRequirements","MetricAbout","dataSetProfileProcess","Suggestions","Suggestion","SuggestionWrapper","AutoCompletionTextField","suggestions","setSuggestions","searchText","setSearchText","_useState7","_useState8","timer","setTimer","_onSearchTextChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","newSuggestions","_context","prev","next","t0","sent","slice","stop","apply","arguments","onSelect","notCloseOnSelect","newValue","fn","ms","clearTimeout","setTimeout","delayCallbackExecution","_x","onSearchTextChange","addItemHandler","which","keyCode","fieldName","renderOption","resultDisplayOptions","key","sortOptions","mainSearchTypeOptions","credentialIcon","organizationIcon","assessmentIcon","learningopportunityIcon","competencyframeworkIcon","collectionIcon","pathwayIcon","outcomeDataIcon","supportServiceIcon","jobIcon","occupationIcon","qaActionsIcon","rubricsIcon","transfervalueIcon","transferIntermediaryIcon","conceptSchemeIcon","progressionModelIcon","workRoleIcon","taskIcon","industryIcon","metricIcon","mapLocationSearchOption","defaultQuery","SearchType","Keywords","MapFilter","PositionType","PageSize","SkipPages","SortOrder","defaultMapSetting","center","lat","lng","zoom","statDataLabel","Organization","Credential","Assessment","LearningOpportunity","CompetencyFramework","Pathway","ScheduledOffering","SupportService","OutcomeData","ProgressionModel","Industry","Job","Occupation","WorkRole","Task","TransferValue","TransferIntermediary","PathwaySet","CredentialingAction","Rubric","Metric","constructSearchQuery","SearchBar","_queryContext$query$M5","queryContext","useContext","QueryContext","wasURLInitialized","setWasURLInitialized","filterContext","FilterContext","filteredSearchTypeOptions","_queryContext$query$M4","availableOptions","targetSearchType","URLSearchParams","location","search","getDefaultDropboxIndex","defaultIndex","findIndex","_queryContext$query$M","mapPositionType","getDefaultMainSearchType","getDefaultMapLocationPositionType","onSearchButtonClick","onSelectMainSearchOption","updateQuery","onBroadTypeOptionSelect","clearSearch","IsOriginalSearchType","onMainTextSearchChange","_onMainTextSearchChange","autocompleteQuery","res","Force","FilterURI","FilterItemURI","AutocompleteContext","post","abrupt","onLocationSearchOptionSelect","onLocationTextSearchChange","_x2","_onLocationTextSearchChange","_callee2","_context2","onLocationTextSearchOptionSelect","_queryContext$query$M2","_query$MapFilter","createFancyLocationLabel","Region","Country","setCurrentQuery","widgetFilters","_m$Id","faSearch","_queryContext$query$M3","connectorSpan","MobileCarousel","CarouselWrapper","background","ConnectorBlock","Block","MobileSlider","MobileBlock","ConnectorBox","NavArrows","Carousel","wrapperRef","sliderRef","divHeight","setDivHeight","clientX","setClientX","isScrolling","setIsScrolling","offsetY","slide","direction","stepX","offsetWidth","scrollLeft","offsetHeight","newScrollX","scrollWidth","blocks","currentBlock","scroll","left","behavior","block","faChevronLeft","faChevronRight","onMouseDown","onMouseUp","onMouseMove","scrollX","newClientX","SConnector","startPoint","x","y","endPoint","stroke","StyledTabBar","TabItem","active","TabBar","activeIndex","setActiveIndex","items","onTabClick","CarouselBody","CarouselButton","CarouseBlock","history","useHistory","_e","CredentialProvidersBlock","credential_icon","_Fragment","QualityAssuranceOrgnizationsBlock","qa_organizations_icon","IndividualsBlock","individuals_icon","GovernmentAgenciesBlock","government_agencies_icon","ApplicationDevelopersBlock","application_developers_icon","SkillAndCompetencyCreatorsBlock","skills_competency_creators_icon","EmployersBlock","employers_icon","informationItems","StyledInformationPanel","curveLineBackground","LeftPanel","RightPanel","LeftTitle","LeftDescription","Description","InformationPanel","PageTitle","PageDescription","StatData","StatItem","StatItemValue","StatItemTitle","FullWidthWrapper","InnerWrapper","MobileAboutDetail","InlineLabel","Inline","MapWrapper","SectionLabel","ModalLinksWrapper","ModalLink","UnorderedList","ListWithoutBullet","LinkObject","_props$item","isExternal","isExternalURL","linkButtonType","linkTarget","SmallIcon","faExternalLinkAlt","PlainTextLink","_props$item2","_props$item3","overrideLabel","PlainTextLinkList","_props$items","WrapperTag","PlainTextLinkListWrapper","HeaderTag","PlainTextLinkListHeader","asList","PlainTextLinkListFromURLs","urls","lowerURL","indexOf","HomePage","setCurrentBlock","statData","setStatData","_data$Result","Total","margin","LinkButtonSection","Error","ReportsPage","match","params","loading","setLoading","pageContent","setPageContent","setError","err","LoadingIndicatorWrapper","InnerHTML","html","HeaderMain","CompareButtonWrapper","CompareButton","disabled","CompareCount","CompareIcon","HeaderLeft","HeaderRight","Logo","Tagline","MainMenu","SearchLink","addCompareItem","compareGraph","getCompareItems","CTID","saveCompareItems","removeCompareItem","propertyName","SiteCompareData","localStorage","getCompareItemsByType","_m$BroadType","_m$CTDLType","addOrUpdateCompareItem","splice","updateStateOnCompareChange","updateStateMethod","_widgetConfig$LogoIma","_widgetConfig$LogoIma2","_widgetConfig$LogoIma3","useLocation","isMobileMenuOpen","setIsMobileMenuOpen","compareItems","setCompareItems","showCompareButton","pathname","findType","_mainSearchTypeOption","widgetHideFilter","name","_Widget$Config","_Widget$Config$HideGl","_toConsumableArray","widgetConfig","widgetLogoURL","LogoUrl","widgetLogoFile","LogoImage","Files","RawData","BannerText","NavLink","to","NavigationSkipButton","querySelector","focus","exact","onCompareButtonClick","comparePanel","MobileMenuButton","faBars","ContentBegins","tabIndex","defaultLoadingComponent","defaultErrorComponent","LoadingOrError","loadingComponent","errorComponent","PageSectionItem","filled","noBorder","PillWrapper","PillLink","useTitle","targetWindow","TruncatedItemList","_props$source","startExpanded","ListItemsComponent","TruncatedListItems","source","TruncatedList","listCSSClass","listItemsCSSClass","itemIndex","truncateAfter","renderItemWith","ExpandButton","expandButtonCSSClass","faAngleUp","AllPills","links","link","faFilter","Pills","_ref2","ReferenceFrameworkPills","CodedNotation","TargetNode","FrameworkName","Framework","frameworks","framework","_item$Framework","_item$FrameworkName","FrameworkItemList","FrameworkItem","FrameworkItemName","itemTypeLabel","isFilled","isArray","Number","isInteger","Boolean","AboutDetail","org","AgentType","SearchPills","LifeCycleStatusType","DisplayPills","AlternateName","Connections","PlaceList","Place","PlaceWrapper","Identifier","identifier","IdentifierType","IdentifierTypeName","IdentifierValueCode","AddressText","StreetAddress","AddressLocality","AddressRegion","AddressLocalityAndRegion","PostalCode","AddressCountry","setupMap","googleMap","maps","places","defaultMapZoom","markers","infoWindows","bounds","LatLngBounds","place","Latitude","Longitude","latLng","marker","Marker","position","MarkerLabel","MarkerTitle","addressText","infoWindow","InfoWindow","ResourceName","ResourceProviderName","addListener","resultDiv","scrollIntoView","classList","add","remove","otherWindow","close","open","markerPosition","getPosition","panTo","set","extend","isEmpty","setCenter","setZoom","fitBounds","ModalLinks","renderModalLink","OutlineList","Outline","OutlineWrapper","Image","TextItem","OutlineType","ExtraData","Value","ProviderList","provider","substring","Tags","Box","BoxLabel","BoxContent","SectionContent","SectionContentItem","SectionContentItemWrapper","RenderWith","LinkItem","JurisdictionProfileList","JurisdictionProfile","mainJurisdictionLabel","jurisdictionExceptionLabel","isGlobalJurisdictionText","_props$item$Jurisdict","JurisdictionProfileWrapper","GlobalJurisdiction","MainJurisdiction","JurisdictionException","AssertedBy","HasAnyFilled","some","ContactPointList","ContactPoint","_props$item$Telephone","_props$item$Email","_props$item$SocialMed","ContactPointWrapper","ContactDetails","ContactName","ContactType","Telephone","ContactTelephone","FaxNumber","ContactFaxNumber","Email","ContactEmail","email","SocialMedia","ContactSocialMedia","SocialMediaIcon","domainParts","domain","definition","findIconDefinition","prefix","iconName","LocationPageSection","_generic$Email","_generic$SocialMedia","selectedAddressIndex","setSelectedAddressIndex","generic","Address","AvailableAt","contactOnlyLocations","_location$TargetConta","TargetContactPoint","allLocationContacts","flatMap","nonLocationContacts","nextMapMarkerOnClick","nextIndex","fallbackIndex","entityType","mainJurisdicionLabel","locationsIcon","pageSectionDescription","AvailabilityListing","listing","AvailabilityLink","LocationScroller","LocationScrollerButton","LocationScrollerContent","NumberedLocation","GoogleMap","defaultCenter","defaultZoom","bootstrapURLKeys","yesIWantToUseGoogleMapApiInternals","onGoogleApiLoaded","LocationListing","LocationListingItem","LocationListingItemButton","SameAs","Jurisdiction","NumberedLocationWrapper","LocationNumber","isOpen","setIsOpen","LocationListingHeading","faChevronDown","LocationListingContent","PageBanner","Meta_HasVerificationBadge","bannerIcon","fallbackIcon","CTDLTypeLabel","OwnedByLabel","Meta_LastUpdatedHeader","Meta_Id","marginLeft","getLegacyLink","faCheck","CustomButtonBox","resource","customButtonBoxID","setCustomButtonBoxID","isInIframe","setupCustomButtonBox","container","getElementById","eventData","innerHTML","Data","cssText","Style","click","renderToString","_props$resource","CustomButtonContainer","StyledModal","Body","Heading","HeadingText","SubHeading","Close","ajaxCacheData","getResourceByURI","uri","updateState","onLoading","Status","englishOrNull","languageMap","startsWith","createKeywordSearchLink","createKeywordSearchLinkListFromCredentialAlignmentObjectList","itemList","createReferenceFrameworkFromCredentialAlignmentObject","cao","AJAXCacheV2","getResourceByURLWithoutState","customConfig","Response","OnSuccess","OnError","headers","handler","ModalButtonAndWindow","OuterWrapper","ModalButtonWrapper","loadedData","setLoadedData","getDataOnClickFromURL","InvisibleButton","onFocus","_props$onButtonClick","onButtonClick","call","result","ButtonContent","padding","buttonLabel","hideCount","overrideCount","stopPropagation","resourceTitle","modalTitle","JurisdictionAssertions","AccreditedIn","ApprovedIn","OfferedIn","RecognizedIn","RegulatedIn","QualityAssurancePageSection","_props$item$QAReceive","_props$item$OwnerQARe","mergedJurisdictionAssertions","qaIcon","QAReceived","OwnerQAReceived","QAPerformed","JSONLinkedDataModal","JSONLinkedData","setJSONLinkedData","setModalIsOpen","getJSONLinkedData","tries","_item$RegistryData","_item$RegistryData$Re","RegistryData","Resource","JSONLDIconButton","jsonLDIcon","Envelope","AdditionalInformationPageSection","_props$item$Alternate","_props$item$InLanguag","_props$item$License","_props$item$Rights","_props$item$HasScope","_props$item$Alternate2","_props$item$InLanguag2","additionalInfoIcon","InfoSection","CredentialId","DUNS","FEIN","OPEID","IPEDSID","ISICV4","LEICode","Comment","ListId","AltCodedNotation","SCED","VersionIdentifier","IdentifierTypename","alignItems","Meta_LastUpdated","FoundingDate","DateEffective","ExpirationDate","StartDate","EndDate","DateCopyrighted","DateCreated","DateModified","DateValidFrom","DateValidUntil","RepositoryDate","InLanguage","License","Rights","HasScope","ListID","ShouldIndex","TextLink","outline","DateRange","bothDatesPreText","BothDatesPreText","bothDatesMidText","BothDatesMidText","fromOnlyPreText","FromOnlyPreText","toOnlyPreText","ToOnlyPreText","FromDate","ToDate","DateRangeSet","CostProfileList","CostProfile","_props$item$Condition","_props$item$CostItems","CostProfileWrapper","BasicInfo","Condition","condition","CostDetails","CostItems","CostItemList","currencySymbol","CurrencySymbol","_props$items2","CostItem","CostItemWrapper","DirectCostType","AudienceType","ResidencyType","PaymentPattern","Price","VerificationServiceProfile","profile","SubjectWebpage","OfferedBy","EstimatedCost","VerifiedClaimType","property","HolderMustAuthorizeLabel","VerificationDirectory","VerificationMethodDescription","VerificationService","TargetCredential","Profiles","profiles","values","TabSetOrSingle","validItems","TabSet","TabSetWrapper","TabButtonsWrapper","TabButtons","TabButton","switchTab","TabContents","Tab","CostManifestList","CostManifest","_props$item$Estimated","ValueProfileList","ValueProfile","valueText","MinValue","MaxValue","Percentage","CreditLevelType","CreditUnitType","Subject","AJAXResourceList","listID","setListID","setupRenderedContainer","setupAJAXResourceList","resources","StyleComponent","AJAXResourceListWrapper","getAJAXCacheV3","listItemBoxes","listeners","appendAJAXCacheV3Resource","box","listeningScrollableElements","scrollableProperties","addScrollHandlerToScrollableElements","addScrollHandler","getComputedStyle","refreshList","threshold","top","getBoundingClientRect","getResourceViaResourceCacheV3","defaultSuccess","itemContainer","_container$dataset3","_container$dataset4","defaultError","_container$dataset","_container$dataset2","AJAXCacheV3","cacheV3","wrapper","getAJAXCacheV3Resource","_match$OnSuccess","_match$OnError","appended","ok","_appended$OnSuccess","successMethod","_appended$OnError","errorMethod","elementType","cssClass","cssItem","getEnglish","renderText","renderElement","renderLink","contentURL","contentLabel","renderImage","altText","image","getDetailPageHeaderModifiedDate","dateString","modified","Date","getMonth","getDate","getFullYear","lookupSchema","SchemaGraph","Loaded","Graph","Handlers","_localStorage","Timestamp","now","cachedText","getItem","cachedData","ctdlData","ctdlasnData","qdataData","_localStorage2","graphItem","setItem","OutlineStyleBlock","renderCompetencyFromRDF","competency","relatedItemsMap","renderChildCompetencies","CompetencyContent","CompetencyPrefix","createTitledBox","CompetencyBody","CompetencyLabel","CompetencyText","_getEnglish","CompetencyExtras","createItemList","renderLinkListItem","valueBox","createVersionBox","labelElement","textContent","identifierElement","identifierText","createVersionIdentifierBox","renderSearchLinkListItem","createAJAXItemList","renderConceptListItem","listBox","_data$Graph2","concept","schemeURI","renderURL","renderLabel","renderDefinition","renderCompetencyLinkListItem","renderResourceLinkListItem","createCompetencyDSPList","renderCredentialAlignmentObjectSearchLinkListItem","contentElement","processedContent","createItemListInternals","dataList","collapsed","labelBox","successHandler","RelatedItemsMap","allMatches","mapItem","_mapItem$Path","Path","URIs","filteredMatches","encodeURIComponent","_data$Graph","code","frameworkURL","collectionURLs","containerLink","containerDiv","separator","createTextNode","itemLink","removeChild","ctid","CompetencyStyleBlock","CompetencyFrameworkList","frameworkList","CompetencyFrameworkAJAX","applicableCompetencies","Meta_HasPart","Meta_IsReferenced","CredentialRegistryURL","applicableCompetencyURLs","itemContent","listContent","ConditionProfileList","ConditionProfile","_props$item$Submissio","_props$item$Submissio2","_props$item$Submissio3","_props$item$AudienceL","_props$item$AudienceT","_props$item$CommonCos","_props$item$CommonCos2","_props$item$CommonCos3","_props$item$CreditVal","_props$item$ResidentO","_props$item$TargetCre","_props$item$TargetCre2","_props$item$TargetAss","_props$item$TargetAss2","_props$item$TargetLea","_props$item$TargetLea2","_props$item$TargetOcc","_props$item$TargetOcc2","_props$item$TargetJob","_props$item$TargetJob2","_props$item$TargetCom","_props$item$TargetCom2","_props$item$TargetCom3","_props$item$TargetCom4","_props$item$AssertedB","_props$item$AssertedB2","_props$item$Alternati","SubmissionOf","SubmissionOfDescription","Weight","submissionItem","AudienceLevelType","Experience","YearsOfExperience","MinimumAge","CommonCosts","CreditValue","CreditUnitTypeDescription","ResidentOf","TargetAssessment","TargetLearningOpportunity","TargetOccupation","TargetJob","TargetCompetency","AlternativeCondition","getConditionProfileListButtonName","prefixText","conditionProfileList","countsText","singleOrMulti","getDistinctCount","_m$TargetCredential","_m$TargetCredential2","_m$TargetAssessment","_m$TargetAssessment2","_m$TargetLearningOppo","_m$TargetLearningOppo2","_m$TargetOccupation","_m$TargetOccupation2","_m$TargetCompetency","_m$TargetCompetency$V","_m$TargetCompetency2","list","getTargets","getFallbackCount","distinctIDs","self","fallbackTotal","reduce","count","labelTemplate","ConditionManifestList","ConditionManifest","ConditionProfileSet","Requires","Recommends","Renewal","EntryCondition","Corequisite","CoPrerequisite","ProcessProfileList","ProcessProfile","_props$item$ExternalI","_props$item$ScoringMe","_props$item$Processin","_props$item$Processin2","DataCollectionMethodType","ExternalInputType","ProcessFrequency","ScoringMethodDescription","ScoringMethodExample","ProcessMethod","ProcessStandards","ProcessingAgent","TargetCompetencyFramework","renderJSONLDMetaTags","broadType","modifierMethod","_resource$RegistryDat","_resource$RegistryDat2","renderHelper","renderMethod","renderAPI_Organization","renderAPI_Credential","renderAPI_Assessment","renderAPI_LearningOpportunity","renderLD_ConceptScheme","renderLD_CompetencyFramework","renderLD_Competency","renderLD_Collection","renderAPI_Pathway","Meta_Language","render_Generic","tag","head","renderJSONLDMetaTag","asLangStringLanguage","asArray","modMethod","converted","temp","OrganizationPage","_org$AdministrationPr","_org$AdministrationPr2","_org$AppealProcess","_org$AppealProcess2","_org$DevelopmentProce","_org$DevelopmentProce2","_org$MaintenanceProce","_org$MaintenanceProce2","_org$ComplaintProcess","_org$ComplaintProcess2","_org$ReviewProcess","_org$ReviewProcess2","_org$RevocationProces","_org$RevocationProces2","orgDataIsLoading","orgDataHasError","getOrgData","setOrg","mapMarkerListeners","openedModal","setOpenedModal","HasVerificationService","typeLabel","orgIcon","MissionAndGoalsStatement","MissionAndGoalsStatementDescription","AgentPurpose","AgentPurposeDescription","ParentOrganization","Department","SubOrganization","sectorsIcon","AgentSectorType","IndustryType","ServiceType","Keyword","onOpenModalClick","modalType","onCloseModalClick","processIcon","SupportServiceStatement","TransferValueStatement","HasCostManifest","HasConditionManifest","AdministrationProcess","AppealProcess","DevelopmentProcess","MaintenanceProcess","ComplaintProcess","ReviewProcess","RevocationProcess","VerificationServiceProfiles","h5","FooterTop","FooterMiddle","FooterMain","FooterMenu","PoweredBy","ItemLink","ItemA","Footer","poweredByImage","rel","SearchResultItem","_addItemToCompareBucket","Wrap","OrganizationSearchResultItem","showBody","showFooter","CredentialSearchResultItem","AssessmentSearchResultItem","LearningOpportunitySearchResultItem","PathwaySearchResultItem","PathwaySetSearchResultItem","CompetencyFrameworkSearchResultItem","ScheduledOfferingSearchResultItem","SupportServiceSearchResultItem","OutcomeDataSearchResultItem","OccupationSearchResultItem","JobSearchResultItem","TaskSearchResultItem","WorkRoleSearchResultItem","TransferValueSearchResultItem","TransferIntermediarySearchResultItem","ConceptSchemeSearchResultItem","CollectionSearchResultItem","ProgressionModelSearchResultItem","CredentialingActionSearchResultItem","RubricSearchResultItem","MetricSearchResultItem","IndustrySearchResultItem","getContent","ResultButtonWrapper","ButtonText","ButtonIcon","SButtonIcon","LocationsButton","onLocationButtonClick","LocationsButtonWrapper","faMapMarkerAlt","BaseResultItem","titleUrl","Meta_FriendlyName","lastUpdated","_props$item$OwnedByLa","_props$item$OwnedByLa2","Meta_Icon","preTitle","subTitleUrl","_props$item$OwnedByLa3","_props$item$OwnedByLa4","_props$item$OwnedByLa5","_props$item$OwnedByLa6","learningOpportunityIcon","learningProgramIcon","courseIcon","_props$item$OwnedByLa7","_props$item$OwnedByLa8","competencyFrameworkIcon","_props$item$OwnedByLa9","_props$item$OwnedByLa10","_props$item$OwnedByLa11","_props$item$OwnedByLa12","pathwaySetIcon","_props$item$OwnedByLa13","_props$item$OwnedByLa14","scheduledOfferingIcon","_props$item$OwnedByLa15","_props$item$OwnedByLa16","_props$item$OwnedByLa17","_props$item$OwnedByLa18","_props$item$OwnedByLa19","_props$item$OwnedByLa20","_props$item$OwnedByLa21","_props$item$OwnedByLa22","_props$item$OwnedByLa23","_props$item$OwnedByLa24","_props$item$OwnedByLa25","_props$item$OwnedByLa26","_props$item$OwnedByLa27","_props$item$OwnedByLa28","qaActionIcon","_props$item$OwnedByLa29","_props$item$OwnedByLa30","rubricIcon","_props$item$OwnedByLa31","_props$item$OwnedByLa32","_props$item$OwnedByLa33","_props$item$OwnedByLa34","_props$item$OwnedByLa35","_props$item$OwnedByLa36","transferValueIcon","headerExtraText","_props$item$OwnedByLa37","_props$item$OwnedByLa38","_props$item$OwnedByLa39","_props$item$OwnedByLa40","_props$item$OwnedByLa41","_props$item$OwnedByLa42","_props$item$OwnedByLa43","_props$item$OwnedByLa44","setShowBody","setShowFooter","showMoreBody","setShowMoreBody","ContentWrap","IconWrapper","PreTitle","LastUpdated","HeaderExtraText","MoreButton","renderBody","TopRegion","ResultsSection","ResultsSectionBody","ResultList","ResultItem","ResultBodytHeader","ResultListHeaderSection","ResultBodyContent","IconButton","ExportButton","DropdownSection","DropdownGroup","GroupButton","ResultCount","ResultListItems","TitleBlock","HideButton","Checkbox","FilterItemOption","FilterItemLabel","FilterItemDescription","FilterItemAddButton","AddedItem","StyledFilterOption","CFilterItem","isCheckbox","isAutocompleteTextBox","isTextBox","isTextboxFilter","_getAutoCompleteSuggestions","onAddItemFromTextBox","isChecked","_find","isTheBoxChecked","box1","checked","box2","_find2","currentItems","getAutoCompleteSuggestions","suggestItem","RemoveItem","RemoveItemButton","FilterPanel","getStatusOfFilterItem","filterItem","_find$Items","currentFilters","getAddedFilterItemsFromAutocomplete","filterIdentifier","_props$currentFilters","onHide","availableFilters","FilterType","autoCompleteFilterItems","getStatus","onSelectFilter","onUpdateFilter","FilterTypeWrapper","FilterTypeTitle","h4","marginRight","status","EmptyResult","supportServicesIcon","transerValueIcon","transerIntermediaryIcon","HSection","SearchResultPillSection","tagSets","indentifier","detailPageLink","showItems","setShowItems","tagItems","setTagItems","selectedSetTagIndex","setSelectedSetTagIndex","_useState9","_useState10","liveTagData","setLiveTagData","_onTagSetClick","tagSet","results","QueryData","onTagItemClick","newFilterItem","FilterItemID","FilterItemText","newFilter","FilterID","filterWithId","filterItemWithUrlId","hideCountsFor","_tagSet$Label","_x3","onTagSetClick","BackToTopButton","getElementsByClassName","scrollY","UpButton","scrollTo","emptySearchResult","TotalResults","Results","SearchPage","method","panelIsOpen","setPanelIsOpen","viewMode","setViewMode","searchResult","setSearchResult","initialLoading","setInitialLoading","scrollLoading","setScrollLoading","_useState11","_useState12","searchAble","setSearchAble","resultRef","googleMaps","mapMarkers","_useState13","_useState14","displayMode","setDisplayMode","_useState15","_useState16","inExportMode","setInExportMode","_useState17","_useState18","isExportRunning","setIsExportRunning","useMemo","parametersFromURL","doSearch","_parametersFromURL$fi","StarterKeywords","RemovedOrganizationRoleFilter","filterparameters","filteritemtext","filterid","filteritemid","_SearchFilters","_SearchFilters$query$","_query$SearchType","_filterData$Items","_filterData$Items$fin","filterItemID","filterData","SearchFilters","filterItemLabel","pillBox","Filter","_Filter$Items","Item","onclick","stringified","PreviousMainSearchStringified","_filterItem$Label","keywords","timeoutName","delayMS","TimeoutList","resultsLocations","_queryContext$query","locationField","mapFilter","latitude25Unit","resultLocations","_result$OwnedByLabel","isValidLocation","BBoxCenterLatitude","BBoxCenterLongitude","_place$AddressRegion","_mapFilter$Region","_place$AddressLocalit","_mapFilter$Label","isInPlace","latitudeDistance","Math","abs","longitudeDistance","latitudeDistanceThreshold","longitudeDistanceThreshold","longitude25Unit","latDistance","lonDistance","setMap","_document$querySelect","minHeight","loadMore","documentElement","scrollTop","scrollHeight","_parameters$filterid","_parameters$filterite","_parameters$filterite2","_parameters$keywords","_parameters$filterpar","_parameters$searchtyp","parameters","filterId","filterItemId","filterItemText","filterParameters","searchtype","filterFromContext","generateQueryFromURL","isCurrentFetch","_getSearchResults","isFirstPage","totalResults","_res$data$Result","_res$data$Result2","appendResults","newSearchResults","OldSkipPages","getSearchResults","_useState19","_useState20","focusedOnMarkersForResult","setfocusedOnMarkersForResult","tryFocusOnMarkersForResult","resultID","attemptsRemaining","markersForResult","setOpacity","google","getZoom","getExportProgress","force","TrackExportProgress","MaxExportTrackingTickets","ExportTransactionGUID","_response$data","_response$data$Result","_response$data2","_response$data2$Resul","TotalItems","ProcessedItems","updateExportWindow","total","percentage","ceil","bar","IsExportMode","file","Blob","dataURL","createObjectURL","download","revokeObjectURL","alert","Messages","widgetAvailableFilters","_window$Widget7","_window$Widget7$Confi","_window$Widget7$Confi2","hiders","HideFiltersAndItems","updated","_hider$ItemIDs","hider","Selected","ItemIDs","widgetPruneFiltersAndOptions","getDefaultSortOption","faList","SearchTags","ExportDisplay","startExport","cancelExport","ExportOverlay","ExportModal","ExportLabelWrapper","ExportLabel","ExportStartButton","AllowExportProgress","ExportCancelButton","ExportDescription","ExportBarWrapper","ExportBar","ComparePage","currentTab","setCurrentTab","getRawCompareData","Meta_IsLoaded","Meta_IsError","getCompareDataFromShareLink","currentParams","sharelessParams","replaceState","_window$location$sear","HtmlLink","HtmlDiv","LinksAsPlainList","ReferenceFrameworkList","OccupationType","DurationProfileList","EstimatedDuration","_item$FinancialAssist","FinancialAssistance","FinancialAssistanceType","_item$IsRequiredFor","OutlinesAsLinkList","IsRequiredFor","showType","OutcomeSummaryList","aggregateData","AggregateData","externalData","ExternalDataSetProfiles","credentialCompareData","setCredentialCompareData","organizationCompareData","setOrganizationCompareData","AssessmentMethodType","DeliveryType","_item$FinancialAssist2","_item$IsRequiredFor2","assessmentCompareData","setAssessmentCompareData","LearningMethodType","_item$FinancialAssist3","_item$IsRequiredFor3","_m$TargetCredential3","learningOpportunityCompareData","setLearningOpportunityCompareData","transferValueCompareData","setTransferValueCompareData","pathwayCompareData","setPathwayCompareData","competencyFrameworkCompareData","setCompetencyFrameworkCompareData","collectionCompareData","setCollectionCompareData","_useState21","_useState22","conceptSchemeCompareData","setConceptSchemeCompareData","_useState23","_useState24","competencyCompareData","setCompetencyCompareData","_useState25","_useState26","supportServiceCompareData","setSupportServiceCompareData","_useState27","_useState28","loaded","setLoaded","onItemLoad","removeItem","DropdownWrapper","CompareOptionButtons","CompareOptionButton","print","csv","readItems","credential","assessment","learningopportunity","transfervalue","pathway","pathwayset","competencyframework","collection","conceptscheme","csvText","row","rowText","blob","blobURL","urlPart","rowData","flattenLinks","flattenCosts","duration","DurationSummary","financial","flattenPlaces","flattenConditionProfiles","flattenOutcomes","costs","costProfile","_costProfile$CostItem","costItem","_costItem$DirectCostT","conditionProfiles","includeDescription","includeCondition","includeTargetCredentials","conditionProfile","combined","combineOutcomesData","adp","RelevantDataSet","dsp","DataSetTimePeriod","dstf","DataAttributes","dp","qvalue","currency","downloadData","prompt","getShareLink","CompareTabContent","properties","update","PrintContent","_useState29","_useState30","_useState31","_useState32","sourceData","setSourceData","CompareTableWrapper","NoCompareData","CompareTable","propertyIndex","sourceIndex","rowSpan","LoadCompareItem","CollapseButton","toggleCollapse","CollapseContent","PrintList","PrintHeader","PrintListItem","CostProfileData","_props$source$CostIte","CostProfileName","_item$DirectCostType","CostProfileItem","CostProfileItemDetails","CostProfileItemPrice","PlaceData","_props$source$TargetC","_contact$Telephone","_contact$SocialMedia","phone","social","ReferenceFrameworkItem","ReferenceFrameworkWrapper","ConditionProfileData","ConditionProfileWrapper","OutcomeSummaryListItem","adpQValues","JobsObtainedList","appendQValue","LowEarnings","MedianEarnings","HighEarnings","OutcomeSummaryItemWrapper","PostReceiptMonths","QuantitativeValueList","_dsp$DataSetTimePerio","_dstf$DataAttributes","CompareAntiCrash","stringItem","testItem","Count","Meta_IsLoading","rawCompareData","NoItemData","_props$source2","_props$source3","_item$Tags","_item$Tags$","_props$source4","_props$source5","DurationProfileWrapper","_props$source6","_props$source7","groups","group","fake","_m$RelevantDataSet","NoData","table","SubjectsAndKeywordsPageSection","looseItem","subjectIcon","InstructionalProgramType","LocalSubject","ConceptTerm","ConceptKeyword","OccupationsAndIndustriesSection","WorkforceDemandAction","ActionStatusType","Instrument","EvidenceOfAction","Participant","ActingAgent","AJAXModal","loaders","setLoaders","scrollTimer","refreshLoaders","cached","Success","loadItems","offsetTop","_document$getElements","ModalWrapper","RelativeBody","onScroll","loader","ItemWrapper","SuccessRenderMethod","ErrorRenderMethod","LoadingWrapper","CompetencyPage","_competency$Comment","_competency$Meta_JSON2","_competency$Meta_JSON3","_competency$Meta_JSON4","_competency$Meta_JSON5","_competency$Meta_JSON6","_competency$Meta_JSON7","_competency$Meta_JSON8","_competency$Meta_JSON9","_competency$Meta_JSON10","dataIsLoading","setDataIsLoading","setCompetency","localAJAXCache","setLocalAJAXCache","partOfFramework","setPartOfFramework","memberOfCollections","setMemberOfCollections","substantiatingCompetencyFrameworks","setSubstantiatingCompetencyFrameworks","substantiatingCredentials","setSubstantiatingCredentials","substantiatingOrganizations","setSubstantiatingOrganizations","substantiatingOccupations","setSubstantiatingOccupations","substantiatingJobs","setSubstantiatingJobs","substantiatingWorkRoles","setSubstantiatingWorkRoles","substantiatingTasks","setSubstantiatingTasks","isChildOf","setIsChildOf","derivedFrom","setDerivedFrom","complexityLevel","setComplexityLevel","_useState33","_useState34","educationLevelType","setEducationLevelType","_useState35","_useState36","environmentalHazardType","setEnvironmentalHazardType","_useState37","_useState38","performanceLevelType","setPerformanceLevelType","_useState39","_useState40","physicalCapabilityType","setPhysicalCapabilityType","_useState41","_useState42","sensoryCapabilityType","setSensoryCapabilityType","_useState43","_useState44","hasProgressionLevel","setHasProgressionLevel","_useState45","_useState46","setRelatedItemsMap","_useState47","_useState48","relatedWorkRoles","setRelatedWorkRoles","getLinks","targetNameProperty","currentValue","setMethod","convertToFinderURL","appendText","isArrayValue","appendLink","alteredURL","getOrganizationOutlineByURI","createIdentifier","_loaded$Result","_loaded$Result2","_loaded$Result3","_loaded$Result4","_competency$Meta_JSON","metadata","_resource$ceasnInLan","_englishOrNull","_filter","_resource$cetermsIns","_resource$cetermsInd","_resource$cetermsOcc","_resource$Id","_resource$ceasnCreat","_resource$ceasnCreat2","_resource$ceasnCreat3","CompetencyCategory","HasChild","IsChildOf","Creator","Meta_JSON","convertDataToCompetency","Metadata","typeLabelPlural","distinctData","l","competenciesbannerIcon","RelatedLinkSetFromURLs","RelatedLinkSet","connectionsIcon","AJAXModalForCompetencyConnections","urlProperty","RenderWorkforceDemand","RenderError","_props$competency","_props$competency$Met","outboundValue","outboundURLs","inboundURLs","_map$Path$match","_props$links","RelatedLinkList","PageSectionItemHeader","_props$urls","RelatedListItem","CompareSelectedListPanel","ComparePanelCloseButton","onClose","CompareTypes","CollapsibleCompareItems","setItems","CompareItemsWrapper","CompareItemsWrapperTitle","CompareItemTitle","CompareItemsWrapperItem","CompareSubItemTitle","CompareItemRemoveButton","CredentialType","CredentialStatusType","LearningDeliveryType","AssessmentDeliveryType","DegreeConcentration","DegreeMajor","DegreeMinor","ConnectionsSection","_props$item$Collectio","_props$item$IsRequire","_props$item$IsRecomme","_props$item$AdvancedS","_props$item$IsAdvance","_props$item$Preparati","_props$item$IsPrepara","_props$item$SupportSe","_props$item$HasTransf","_props$item$HasTransf2","_props$item$HasSuppor","_props$item$HasSuppor2","_props$item$TargetPat","_props$item$TargetPat2","_props$item$ProvidesT","_props$item$ProvidesT2","_props$item$ReceivesT","_props$item$ReceivesT2","_props$item$ObjectOfA","_props$item$ObjectOfA2","_props$item$HasRubric","_props$item$HasRubric2","_props$item$RelatedAc","_props$item$RelatedAc2","_props$item$RelatedDa","_props$item$RelatedDa2","_props$item$HasTransf3","_props$item$HasSuppor3","_props$item$TargetPat3","_props$item$TargetAss3","_TargetLearningOpport","_props$item2$Provides","_props$item3$Receives","_props$item4","_props$item4$ObjectOf","_props$item5","_props$item5$HasRubri","_props$item6","_props$item6$HasRubri","_props$item6$HasRubri2","_props$item7","_props$item8","_props$item8$HasRubri","_props$item10","_props$item11","_props$item11$Related","_props$item13","_props$item14","_props$item14$Related","_props$item$RequiresC","_props$item$RequiresC2","_props$item$AssessesC","_props$item$AssessesC2","_props$item$TeachesCo","_props$item$TeachesCo2","_props$item$RequiresC3","_props$item$RequiresC4","_props$item$TeachesCo3","_props$item$TeachesCo4","_props$item$AssessesC3","_props$item$AssessesC4","_props$item$AlignFrom","_props$item$AlignTo","_props$item$DerivedFr","IsRecommendedFor","AdvancedStandingFrom","IsAdvancedStandingFor","PreparationFrom","IsPreparationFor","SupportServiceCondition","HasTransferValue","HasSupportService","TargetPathway","ProvidesTransferValueFor","ReceivesTransferValueFrom","ObjectOfAction","HasRubric","RelatedActions","RelatedDataSetProfiles","_props$item$HasTransf4","_props$item$HasSuppor4","_props$item$TargetPat4","_props$item$TargetAss4","_TargetLearningOpport2","_props$item$ProvidesT3","_props$item$ReceivesT3","_props$item$ObjectOfA3","_props$item9","_props$item9$HasRubri","_props$item12","_props$item12$Related","_props$item15","_props$item15$Related","RequiresCompetencies","AssessesCompetencies","TeachesCompetencies","TargetLearningResource","AlignFrom","AlignTo","DerivedFrom","DurationProfile","_props$item$Descripti","_props$item$DurationS","FinancialAssistanceValue","RelatedOrganizationPageSection","_looseItem$OwnedBy","_looseItem$OfferedBy","_looseItem$OwnedOffer","_looseItem$RenewedBy","_looseItem$RevokedBy","_looseItem$Creator","_looseItem$Publisher","_looseItem$DataProvid","_looseItem$AssertedBy","_looseItem$ActingAgen","_looseItem$Participan","OrganizationSection","OwnedBy","innerKey","OwnedOfferedBy","RenewedBy","RevokedBy","CopyrightHolder","Publisher","RightsHolder","DataProviderMain","_props$values","RelatedOrganizationPageSectionAJAXResourceList","OrganizationSectionAJAXResourceList","RevocationProfile","_props$item$Revocatio","_props$item$Revocatio2","RevocationProfileWrapper","RevocationCriteria","QuantitativeValueSingle","QuantitativeValueWrapper","QVLabel","QVProperty","UnitText","QVNumbers","QVNumber","itemsWithValues","QuantitativeValueListWrapper","MonetaryAmountSingle","commatizeNumber","MonetaryAmountList","counter","parts","numbers","reverse","char","DataSetProfileSingle","_props$item$DataSetTi","_props$item$Distribut","_props$item$Instructi","_props$item$About","DataSetProfileWrapper","timeFrame","DataSetTimeFrameSingle","DataSuppressionPolicy","SubjectIdentification","Source","DistributionFile","About","DataProvider","_props$item$DataSourc","_props$item$DataAttri","DataSetTimeFrameWrapper","TimeIntervalDisplay","DataSourceCoverageType","dataProfile","substr","DataProfileSingle","DataSetTimeFrameSingleMinimal","_props$item$DataSourc2","_props$item$Administr","_props$item$IncomeDet","_props$item$EarningsD","DataProfileWrapper","Adjustment","EarningsDefinition","EarningsThreshold","EmploymentDefinition","FacultyToStudentRatio","WorkTimeThreshold","AdministrativeRecordType","IncomeDeterminationType","EarningsDistribution","MonetaryAmountDistributionSingle","EarningsAmount","DataAvailable","DataNotAvailable","DemographicEarningsRate","DemographicEmploymentRate","EmploymentRate","HoldersInSet","IndustryRate","InsufficientEmploymentCriteria","MeetEmploymentCriteria","NonCompleters","NonHoldersInSet","OccupationRate","PassRate","RegionalEarningsDistribution","RegionalEmploymentRate","RelatedEmployment","SubjectsInSet","SufficientEmploymentCriteria","UnrelatedEmployment","TotalWIOACompleters","TotalWIOAParticipants","TotalWIOAExiters","MonetaryAmountDistributionWrapper","EarningsDisplay","Currency","MaxBarHeight","Percentile10","Percentile25","Median","Percentile75","Percentile90","AggregateDataProfileSection","_props$item$JobsObtai","_props$item$RelevantD","DemographicInformation","dataSetProfile","AggregateDataProfileList","AggregateDataProfiles","max","EarningsDisplayWrapper","EarningsDisplayItem","EarningsItemBar","EarningsItemLabel","EarningsItemValue","OutcomesDataPageSectionItem","_props$aggregateDataP","_props$dataSetProfile","_props$dataSetProfile2","aggregateDataProfiles","dataSetProfiles","dataSetProfileCTIDsReferencedByAggregateDataProfiles","_adp$RelevantDataSet","otherDSP","externalDataSetProfilesSansAggregateDataProfileReferences","CredentialPage","_pageModel$AvailableO","_pageModel$LatestVers","_pageModel$PreviousVe","_pageModel$NextVersio","_pageModel$Supersedes","_pageModel$Superseded","_pageModel$Revocation","_pageModel$CommonCost","_pageModel$Assessment","_pageModel$LearningOp","_pageModel$HasPart","_pageModel$HasPart2","_pageModel$HasPart2$V","_pageModel$HasPart3","_pageModel$IsPartOf","_pageModel$IsPartOf2","_pageModel$IsPartOf2$","_pageModel$IsPartOf3","_pageModel$Administra","_pageModel$Administra2","_pageModel$AppealProc","_pageModel$AppealProc2","_pageModel$Developmen","_pageModel$Developmen2","_pageModel$Maintenanc","_pageModel$Maintenanc2","_pageModel$ComplaintP","_pageModel$ComplaintP2","_pageModel$ReviewProc","_pageModel$ReviewProc2","_pageModel$Revocation3","_pageModel$Revocation4","getData","pageModel","setCredential","AvailableOnlineAt","InCatalog","IsNonCredit","LatestVersion","PreviousVersion","NextVersion","Supersedes","SupersededBy","costIcon","CommonConditions","RenewalFrequency","RenewedIn","RevokedIn","Revocation","_pageModel$Revocation2","RevocationProfileList","AssessmentCost","LearningOpportunityCost","AssessmentEstimatedDuration","DurationProfileSourceWrapper","LearningOpportunityEstimatedDuration","HasPart","_pageModel$HasPart4","IsPartOf","_pageModel$IsPartOf4","AssessmentMethodDescription","DeliveryTypeDescription","AssessmentUseType","LearningMethodDescription","ScheduleTimingType","OfferFrequencyType","ScheduleFrequencyType","CostsAndTimePageSection","_props$item$Financial","TogglerButton","ExpandableP","ExpandableText","showMore","setShowMore","isExpandable","AssessmentPage","assessmentDataIsLoading","assessmentDataHasError","getAssessmentData","setAssessment","scoringIcon","ScoringMethodType","IsProctored","HasGroupEvaluation","HasGroupParticipation","exampleIcon","AssessmentOutput","AssessmentExample","ExternalResearch","LearningOpportunityPage","_opportunity$Availabl","_opportunity$HasPart","_opportunity$HasPart2","_opportunity$IsPartOf","_opportunity$IsPartOf2","_opportunity$Prerequi","_opportunity$Prerequi2","opportunityDataIsLoading","opportunityDataHasError","getPageData","opportunity","setOpportunity","LearningEntityTypeId","opportunityIcon","_opportunity$HasPart3","_opportunity$IsPartOf3","Prerequisite","_opportunity$Prerequi3","CompetencyFrameworkPage","paramSearch","CompetencyFrameworkPageV2","_competencyFramework$2","_competencyFramework$3","_competencyFramework$4","_competencyFramework$5","competencyFramework","setCompetencyFramework","competencies","setCompetencies","relatedItems","setRelatedItems","rawCompetencyFramework","setRawCompetencyFramework","publicationStatusText","setPublicationStatusText","jumpToCompetencyCTID","targetCTID","attempts","_data$RelatedItems","_data$RelatedItems2","_competencyFramework$","_resource$ceasnLocal","_resource$ceasnPubli","_ref$map","HasProgressionModel","PublicationStatusType","EducationLevelType","PublisherName","HasTopChild","convertDataToCompetencyFramework","RelatedItems","_data$Resource","_resource$ceasnInLan2","addResourceToCache","Related","_success$Graph","_success$Graph$","topCompetencies","referencedByCredentials","getDSPConnectionURIs","referencedByAssessments","referencedByLearningOpportunities","referencesConceptSchemes","referencedByJobs","referencedByOccupations","referencedByTasks","expression","uris","test","_match$URIs","competenciesIcon","CompetencyListSummary","ConnectionsSectionForDSPModal","uriList","_props$uriList","_data$Id","renderOutline","CompetencyExtraListItem","ConceptSchemePage","_conceptScheme$HasTop","conceptScheme","setConceptScheme","concepts","setConcepts","jumpToConceptCTID","convertDataToConceptScheme","convertDataToConcept","HasTopConcept","conceptsBannerIcon","AlignmentListHelper","conceptsIcon","Concept","allConcepts","_resource$ceasnConce","_resource$ceasnPubli$","_resource$ceasnPubli2","PrefLabel","HiddenLabel","AltLabel","Broader","BroadMatch","ChangeNote","CloseMatch","ExactMatch","InScheme","Narrower","NarrowMatch","TopConceptOf","Definition","Notation","RelatedWorkRole","getRelatedWorkRole","Note","workroles","wireupExtras","_item$querySelector","_props$allConcepts","_props$concept$Relate","_props$concept$Narrow","ConceptWrapper","ConceptContent","ConceptPrefix","ConceptPrefixItem","ConceptBody","ConceptName","ConceptDefinition","ConceptNote","ConceptCTID","ConceptExtras","ConceptAlignmentList","RelatedWorkRoles","relatedResource","ChildConcepts","narrowerURI","conceptAlignments","alignmentTypes","alignment","_match$skosInScheme","alignmentPrefix","alignmentLabel","alignmentTerm","alignmentPostfix","targetURL","targetLabel","relatedItem","_relatedItem$type$pro","_relatedItem$skosInS","ConceptExtraListSimple","AlignmentWrapper","RenderAsyncResource","RenderComponent","conceptData","conceptSchemeData","containerRef","_document$getElementB","_document$getElementB2","_document$getElementB3","_document$getElementB4","setAttribute","border","listStyleType","waiterRef","ResourceData","ScrollHelper","i","run","checkInterval","checkScrollPosition","_waiterRef$current","outerHeight","resourceData","Triggered","resourceDataArray","json","statusText","debugFlag","scrollHelper","clearInterval","ConceptExtraListWrapper","ConceptExtraListSummaryButton","ConceptExtraListSummaryWrapper","ConceptExtraListValues","ConceptExtraListItem","PathwayPage","PathwayPageV2","setPathway","components","setComponents","convertDataToLink","lookupFromSchema","_resource$cetermsSub","_resource$cetermsKey","_resource$cetermsOwn","_resource$cetermsOff","HasDestinationComponent","convertDataToPathway","_lookupFromSchema","_resource$cetermsIde","_resource$cetermsHas","_resource$cetermsCre","HasProgressionLevel","IsDestinationComponentOf","ComponentCategory","ComponentDesignation","convertDataToIdentifierValue","HasCondition","RequiredNumber","TargetComponent","convertDataToComponentCondition","PointValue","Precedes","SourceData","ProgramTerm","_resource$cetermsSub2","_resource$cetermsSub3","_resource$cetermsSub4","convertDataToValueProfile","convertDataToPathwayComponent","destinationComponent","pathwaysBannerIcon","pathwaysIcon","PathwayComponent","pathwayComponent","allPathwayComponents","_props$pathwayCompone","PathwayComponentWrapper","PathwayComponentName","PathwayComponentContent","ComponentConditionList","componentCondition","ComponentCondition","ComponentConditionWrapper","PathwayPageV3","_progressionModelData","rawPathwayData","setRawPathwayData","graph","setGraph","progressionModelData","setProgressionModelData","progressionLevelsData","setProgressionLevelsData","supportServiceWrapper","setSupportServiceWrapper","externalComponents","setExternalComponents","rawPathwayDataNow","rawExtraDataNow","supportServices","_resource$cetermsInL","HasMember","AllowUseOfPathwayDisplay","jumpToProxyForCTID","_rawPathwayDataNow$ce2","Extra","_rawPathwayDataNow$ce","relatedItemsMapData","graphItemsData","GraphNow","updatedPathway","progressionModel","progressionLevels","level","convertedConcept","serviceURI","holder","pathwayComponents","sort","b","pathwayComponentURLs","topProgressionLevels","hasExternalComponents","haspart","missingIds","_step","_iterator","_createForOfIteratorHelper","s","done","precededby","_step2","_iterator2","f","checkComponents","_step3","updatedComponents","_iterator3","schemaGraph","_data$cetermsProxyFo","getSchemaProperty","_data$cetermsCredent","termURI","schemaProperty","_schemaGraph$find","renderPathwayComponentProxyForData","component","PathwayComponentType","origin","PathwaySetPage","_pageModel$HasPathway","pageDataIsLoading","pageDataHasError","setPageData","pageIcon","HasPathway","ResourcesPage","JobPage","_pageModel$HasOccupat","_pageModel$HasOccupat2","_pageModel$HasOccupat3","_pageModel$HasOccupat4","_pageModel$HasSupport","_pageModel$HasSupport2","_pageModel$HasSupport3","_pageModel$HasSupport4","_pageModel$HasWorkRol","_pageModel$HasWorkRol2","_pageModel$HasWorkRol3","_pageModel$HasWorkRol4","_pageModel$HasTask","_pageModel$HasTask2","_pageModel$HasTask2$V","_pageModel$HasTask3","_pageModel$KnowledgeE","_pageModel$KnowledgeE2","_pageModel$AbilityEmb","_pageModel$AbilityEmb2","_pageModel$SkillEmbod","_pageModel$SkillEmbod2","_pageModel$PhysicalCa","_pageModel$PhysicalCa2","_pageModel$PhysicalCa3","_pageModel$PhysicalCa4","_pageModel$Performanc","_pageModel$Performanc2","_pageModel$Performanc3","_pageModel$Performanc4","_pageModel$Environmen","_pageModel$Environmen2","_pageModel$Environmen3","_pageModel$Environmen4","_pageModel$SensoryCap","_pageModel$SensoryCap2","_pageModel$SensoryCap3","_pageModel$SensoryCap4","_pageModel$TargetComp","_pageModel$TargetComp2","_pageModel$ProvidesTr","_pageModel$ReceivesTr","Classification","HasOccupation","_pageModel$HasOccupat5","_pageModel$HasSupport5","HasWorkRole","_pageModel$HasWorkRol5","HasTask","_pageModel$HasTask4","KnowledgeEmbodied","AbilityEmbodied","SkillEmbodied","PhysicalCapabilityType","_pageModel$PhysicalCa5","PerformanceLevelType","_pageModel$Performanc5","EnvironmentalHazardType","_pageModel$Environmen5","SensoryCapabilityType","_pageModel$SensoryCap5","_pageModel$TargetComp3","_pageModel$ProvidesTr2","_pageModel$ReceivesTr2","OccupationPage","_pageModel$HasJob","_pageModel$HasJob2","_pageModel$HasJob2$Va","_pageModel$HasJob3","_pageModel$HasSpecial","_pageModel$HasSpecial2","_pageModel$HasSpecial3","_pageModel$HasSpecial4","HasJob","_pageModel$HasJob4","HasSpecialization","_pageModel$HasSpecial5","WorkRolePage","_pageModel$RelatedOcc","_pageModel$RelatedJob","_pageModel$RelatedTas","knowledgeEmbodied","setKnowledgeEmbodied","abilityEmbodied","setAbilityEmbodied","skillEmbodied","setSkillEmbodied","fetchData","RelatedOccupation","_pageModel$RelatedOcc2","RelatedJob","_pageModel$RelatedJob2","RelatedTask","_pageModel$RelatedTas2","TaskPage","_pageModel$HasChild","_pageModel$HasChild2","_pageModel$HasChild2$","_pageModel$HasChild3","_pageModel$RelatedWor","_pageModel$HasChild4","_pageModel$RelatedWor2","RubricPage","_pageModel$HasCriteri","_pageModel$HasCriteri2","_pageModel$HasCriteri3","_pageModel$HasCriteri4","_pageModel$TargetOccu","_pageModel$TargetOccu2","_pageModel$TargetOccu3","_pageModel$TargetOccu4","_pageModel$Classifica","_pageModel$Classifica2","_pageModel$Classifica3","_pageModel$Classifica4","_pageModel$DerivedFro","_pageModel$DerivedFro2","_pageModel$DerivedFro3","_pageModel$DerivedFro4","_pageModel$RubricLeve","_pageModel$RubricCrit","CompetencyCTID","styles","tableContainer","borderCollapse","headerCell","textAlign","verticalAlign","fontWeight","dataCell","cell","EvaluatorType","HasCriterionCategorySet","_pageModel$HasCriteri5","_pageModel$TargetOccu5","_pageModel$Classifica5","_pageModel$DerivedFro5","RubricLevels","_level$HasProgression","_level$HasProgression2","_level$HasProgression3","_level$HasProgression4","RubricCriterions","criterion","rowIndex","_criterion$HasProgres","_criterion$HasProgres2","_criterion$HasProgres3","_criterion$HasProgres4","_criterion$TargetTask","_criterion$TargetTask2","_criterion$TargetTask3","_criterion$TargetComp","_criterion$TargetComp2","_criterion$TargetComp3","_pageModel$RubricLeve2","TargetTask","targettask","colIndex","_level$HasCriterionLe","HasCriterionLevel","criterionLevel","_criterion$HasCriteri","c","RowId","BenchmarkLabel","BenchmarkText","Feedback","MaxPercentage","MinPercentage","SupportServicePage","_pageModel$SupportSer","_pageModel$SupportSer2","_pageModel$IsSpecific","_pageModel$IsSpecific2","_pageModel$IsSpecific3","_pageModel$HasSpecifi","_pageModel$HasSpecifi2","_pageModel$HasSpecifi3","AccommodationType","SupportServiceType","SupportServiceReferencedBy","_pageModel$SupportSer3","IsSpecificServiceOf","HasSpecificService","SupportServiceConditon","TransferValuePage","_pageModel$RelatedAss","_pageModel$RelatedCre","_pageModel$RelatedLea","_pageModel$TransferVa","_pageModel$TransferVa2","_pageModel$HasInterme","RelatedAssessment","_pageModel$RelatedAss2","RelatedCredential","_pageModel$RelatedCre2","RelatedLearningOpp","_pageModel$RelatedLea2","TransferValueFrom","TransferValueFor","HasIntermediaryFor","TransferIntermediaryPage","_pageModel$RequiresCo","_pageModel$RequiresCo2","_pageModel$RequiresCo3","_pageModel$RequiresCo4","_pageModel$Intermedia","IntermediaryFor","CollectionPage","_rawCollectionData$ce","_collection$Collectio","_collection$Connectio","_rawCollectionData$ce2","setCollection","rawCollectionData","setRawCollectionData","membershipConditionList","setMembershipConditionList","rawCollectionDataNow","convertDataToCollection","CollectionType","jumpToMemberCTID","loadResourceSetAsAJAXSettingsOutline","sourceURIs","refreshProfile","convertBasicDataToBasicConditionProfile","_source$cetermsAlter","costProfileList","creditValueList","_source$cetermsCurre","createCostItemListFromSourceItem","createJurisdictionProfileListFromSourceList","_source$cetermsDirec","costType","jurisdictionProfileList","createPlaceListFromSourceList","placeList","PostOfficeBoxNumber","_rawCollectionDataNow","sourceList","stateList","setStateMethod","_rawCollectionDataNow2","sourceItem","convertDataToConditionProfile","Collection","updatedCollection","collectionMembers","collectionMemberResourceURLs","member","CollectionMemberCount","renderCollectionMemberDataV2","CollectionMemberStyleBlock","RelatedDataPageSection","memberBox","resourceBox","resourceBoxImage","resourceBoxContent","providerSource","providerURI","classification","getImageUrl","flexDirection","totalConcepts","totalConceptsButton","downArrowIcon","upArrowIcon","classificationContainer","classificationItem","lastIndexOf","VanillaRendererStyleBlock","credentialType","relatedItemSets","pathMatch","relatedItemURIs","CollectionPageV2","PathwayComponentPage","_pageModel$Pathway","partOfIcon","CredentialingActionPage","_pageModel$Object","_pageModel$Instrument","marginTop","ReportsBenchmarkPage","benchmarkType","currentEntity","setCurrentEntity","ReportTabButtons","ReportTabButton","credentials_icon","organizations_icon","assessments_icon","learning_opportunities_icon","costmanifest_icon","conditionmanifest_icon","pathways_icon","transfervalue_icon","transferintermediary_icon","BenchmarkType","Benchmarks","Policy","toLocaleString","PercentOfOverallTotal","StyledReportTabButton","WidgetPage","WidgetConfigurePage","ProgressionModelPage","_progressionModel$Has","setProgressionModel","setProgressionLevels","convertDataToProgressionModel","progressionLevel","ProgressionLevel","_props$progressionLev","DataSetProfilePage","_pageModel$About","_pageModel$Distributi","_pageModel$DataSetSpa","_pageModel$DataSetTem","_pageModel$DataSetTem2","_pageModel$DataSetTem3","_pageModel$DataSetTem4","_pageModel$DataSetTem5","_pageModel$DataSetTem6","_pageModel$DataSetTem7","_pageModel$DataSetTem8","_pageModel$DataSetTem9","_pageModel$DataSetTem10","_pageModel$DataSetTem11","_pageModel$DataSetTem12","_pageModel$DataSetTem13","_pageModel$DataSetTem14","_pageModel$HasMetric","_pageModel$DataSetTim","_pageModel$HasDimensi3","_pageModel$HasDimensi4","_selectedDimension$Ha","_pageModel$HasDimensi5","_pageModel$HasDimensi6","_selectedDimension$Ha2","_pageModel$HasMetric2","_pageModel$DataSetTim2","_pageModel$Administra3","_pageModel$Administra4","_pageModel$Developmen3","_pageModel$Developmen4","_pageModel$Maintenanc3","_pageModel$Maintenanc4","_pageModel$Maintenanc5","_pageModel$ReviewProc3","_pageModel$ReviewProc4","_pageModel$ReviewProc5","selectedDimension","setSelectedDimension","_pageModel$HasDimensi","HasDimension","DataSetSpatialCoverage","DataSetTemporalCoverage","HasMetric","colSpan","HasPointSummary","_pageModel$HasDimensi2","selectedIndex","dropdown","dim","idx","TextDisplay","DimenstionType","point","_point$ResourceSummar","_point$ResourceSummar2","ResourceSummary","metric","_metric$MetricType$","_selectedDimension$Ha3","_pageModel$HasObserva2","MetricType","_pageModel$HasObserva","observations","HasObservation","obs","_obs$IsObservationOf","_obs$AtPoints","IsObservationOf","AtPoints","observation","obsIndex","renderObservation","EntityTypeId","_observation$IsObserv","DataSetTimePeriodHistoricalData","HasDataSetDistribution","DataSetDistributionComponent","HasDataSetService","DataSetServiceComponent","_item$AlternateName","MediaType","license","licenseIndex","_item$AlternateName2","pointType","timeframes","_obs$DataWithholdingT","Intl","NumberFormat","minimumFractionDigits","maximumFractionDigits","format","DataWithholdingType","SizeOfData","SizeOfPopulation","pointIndex","matchingTimeframe","timeframe","borderRadius","MetricPage","_pageModel$DataSetPro","_pageModel$DataSetPro2","DataSetProfiles","_pageModel$DataSetPro3","IndustryPage","library","fab","fas","AppWrapper","MainContent","emptyFilters","transferintermediary","creddentialingaction","React","createContext","resetQuery","PageViewTracker","currentTrackedPage","setCurrentTrackedPage","locationPathName","ReactGA","initialize","page","pageview","ScrollToTop","App","setFilters","setQuery","showComparePanel","setShowComparePanel","cookies","cookie","widgetParam","widgetID","fetchFilters","Promise","resolve","reject","filterURL","getFilterByBroadType","all","_values","organizationFilter","credentialFilter","assessmentFilter","learningOpportunityFilter","pathwayFilter","pathwaySetFilter","competencyFrameworkFilter","collectionFilter","occupationFilter","jobFilter","workRoleFilter","taskFilter","credentialingActionFilter","supportServiceFilter","scheduledOfferingFilter","conceptSchemeFilter","progressionModelFilter","outcomeDataFilter","transferValueFilter","transferIntermediaryFilter","rubricFilter","metricFilter","industryFilter","convertData","convertedFilters","scheduledoffering","supportservice","progressionmodel","outcomedata","occupation","job","task","workrole","credentialingaction","rubric","industry","_ThemeProvider","newQuery","Router","basename","inOffset","Switch","Route","path","ReportDataPage","BenchmarkReportPage","WidgetViewPage","Redirect","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","StrictMode"],"mappings":"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BAEJC,2BAA4B,CACxB,UACA,WACA,sBACA,cACA,cACA,uBACA,wBACA,mBACA,mBACA,gBACA,kBACA,uBACA,sBACA,uBACA,mBACA,2BACA,6BAEJC,sBAAuB,CACnB,gBACA,iBACA,0BACA,sBACA,oBACA,mBACA,WACA,aACA,cACA,kBAEJC,6BAA8B,CAC1B,UAEA,YAEA,YACA,cAEJC,uBAAwB,CACpB,WACA,aACA,cACA,iBACA,iBAAiB,oBAErBC,kBAAmB,CACf,uBACA,wBACA,mBACA,mBACA,gBACA,kBACA,cACA,gBACA,mBACA,UACA,eACA,0BACA,cACA,UACA,gBACA,oBACA,SACA,oBACA,kBACA,gBACA,oBACA,yBACA,uBACA,0BACA,wBACA,iBACA,aACA,SACA,mBACA,2BACA,4BACA,iBACA,oBACA,oBACA,oBACA,aACA,qBACA,0BACA,mBACA,YACA,cACA,kBACA,iBACA,0BAEJC,mBAAoB,CAChB,uBACA,uBACA,uBAEJC,sBAAuB,CACnB,uBACA,wBAEJC,sBAAuB,CACnB,uBACA,uBACA,2BACA,6BAEJC,gBAAiB,CACb,mBACA,4BACA,sBACA,uBACA,WACA,2BACA,4BACA,kBAEJC,kBAAmB,CACf,mBACA,8BACA,wBACA,gBACA,mBACA,qBACA,qBACA,gBACA,qBAEJC,0BAA2B,CACvB,wBACA,gBACA,mBACA,qBACA,qBACA,gBACA,qBAEJC,gBAAiB,CACb,cACA,oBACA,iBACA,eACA,oBACA,uBACA,eACA,0BACA,oBACN,cACM,4BACN,wBAEEC,wBAAyB,CACrB,2BACA,uBACA,oBACA,cACA,qBACA,yBAEJC,kBAAmB,CACf,+BACA,mBACA,qBAEJC,iBAAkB,CACd,8BACA,wBAEJC,kBAAmB,CACf,mBACA,mBACA,wBACA,qBACA,sBAEJC,0BAA2B,CACvB,wBACA,qBACA,sBAEJC,YAAa,CACf,cACM,6BAEJC,aAAc,CACV,eACA,2BAEJC,UAAW,CACP,cACA,oBACA,iBACA,eACA,oBACA,uBACA,eACA,0BACA,qBACA,4BACN,cACM,4BACN,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","file":"static/js/main.f6046d4f.chunk.js","sourcesContent":["/**\r\n * The default theme\r\n */\r\nimport { DefaultTheme } from 'styled-components';\r\n\r\nconst theme: DefaultTheme = {\r\n color: {\r\n blueDark: '#0A2942',\r\n brown: '#996C48',\r\n greyDark: '#607484',\r\n greyLight: '#E6EAEC',\r\n aquaDark: '#4EE5E1',\r\n aquaLight: '#DCFAF9',\r\n white: '#FFFFFF',\r\n },\r\n breakpoint: {\r\n tabletPortrait: '600px',\r\n tabletLandscape: '900px',\r\n desktop: '1200px',\r\n },\r\n fontSize: {\r\n hero: '2.625rem' /* 42px */,\r\n xxxl: '1.75rem' /* 28px */,\r\n xxl: '1.5rem' /* 24px */,\r\n xl: '1.3125rem' /* 21px */,\r\n lg: '1rem' /* 16px */,\r\n md: '0.9375rem' /* 15px */,\r\n sm: '0.875rem' /* 14px */,\r\n xs: '0.8125rem' /* 13px */,\r\n },\r\n maxWidth: '1400px',\r\n};\r\n\r\nexport { theme };\r\n","import { createGlobalStyle } from 'styled-components';\r\n\r\nconst GlobalStyle = createGlobalStyle`\r\n\r\n * { box-sizing: border-box; }\r\n\r\n body {\r\n color: ${(props) => props.theme.color.blueDark};\r\n font-family: 'IBM Plex Sans', sans-serif;\r\n font-size: ${(props) => props.theme.fontSize.md};\r\n line-height: 1.6;\r\n margin: 0;\r\n padding: 0;\r\n }\r\n\r\n button {\r\n cursor: pointer;\r\n font-family: inherit;\r\n font-size: ${(props) => props.theme.fontSize.md};\r\n line-height: 1.6;\r\n }\r\n\r\n code {\r\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace;\r\n }\r\n\r\n img { max-width: 100%; }\r\n\r\n hr {\r\n background-color: ${(props) => props.theme.color.greyLight};\r\n border: 0 none;\r\n height: 1px;\r\n }\r\n\r\n a {\r\n color: ${(props) => props.theme.color.blueDark};\r\n\r\n &:hover { text-decoration: none; }\r\n }\r\n\r\n label {\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n line-height: 1.125;\r\n font-weight: 700;\r\n }\r\n\r\n small {\r\n font-size: ${(props) => props.theme.fontSize.xs};\r\n line-height: 1.1538;\r\n }\r\n\r\n h1 {\r\n color: ${(props) => props.theme.color.aquaDark};\r\n font-size: ${(props) => props.theme.fontSize.xxxl};\r\n line-height: 1.1428;\r\n }\r\n\r\n h2 {\r\n font-size: ${(props) => props.theme.fontSize.xxl};\r\n line-height: 1.1667;\r\n }\r\n\r\n h3 {\r\n font-size: ${(props) => props.theme.fontSize.xl};\r\n line-height: 1.1428;\r\n }\r\n`;\r\n\r\nexport default GlobalStyle;\r\n","//TBD integrate in env\r\nexport const apiUrl = process.env.REACT_APP_API_URL || 'https://sandbox.credentialengine.org/finderAPI';\r\nexport const legacySourceUrl = process.env.REACT_APP_LEGACY_SOURCE_URL || 'https://sandbox.credentialengine.org/services';\r\nexport const appURL = process.env.PUBLIC_URL || \"https://credentialfinder.org\";\r\nexport const registryURL = process.env.REACT_APP_REGISTRY_URL || \"https://credentialengineregistry.org\";\r\nexport const googleMapsKey = process.env.REACT_APP_GOOGLE_MAPS_KEY || 'AIzaSyAnierCr9ypDBt9AQzlrwTKCFt-5JBJMdE';\r\nexport const initializeFilterSearchApiUrl = apiUrl + '/search/initialize';\r\nexport const autocompleteFilterSearchApiUrl = apiUrl + '/search/autocomplete';\r\nexport const locationBoxSearchApiUrl = apiUrl + '/search/location';\r\nexport const BUCKET_STORAGE = 'cr-compare-bucket';\r\nexport const googleAnalyticsID = process.env.REACT_APP_GOOGLE_ANALYTICS_ID || \"UA-77712853-2\";\r\nexport const appBaseName = process.env.REACT_APP_BASENAME || \"\";\r\nexport const configName = process.env.REACT_APP_CONFIG_NAME || \"unknown\";\r\n","import { apiUrl } from '../../shared/globals';\r\n\r\nexport function createMiniSearch(container, query, renderInitialUI, renderNoResultsUI, renderHasResultsUI, renderResultList, renderResultMethod, handleError, getScrollContext, pageSize) {\r\n\tif (!container) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t//Create the search box\r\n\tvar searchBox = document.createElement(\"div\");\r\n\tsearchBox.classList.add(\"miniSearch\");\r\n\tcontainer.appendChild(searchBox);\r\n\tvar resultList;\r\n\r\n\t//Other search attributes\r\n\tvar busy = false;\r\n\tvar resultsData = [];\r\n\tvar totalResults = 0;\r\n\tvar skip = 0;\r\n\tvar take = pageSize || 10;\r\n\tvar hasResultsUI = false;\r\n\r\n\t//Render a UI to show while the first search is being performed\r\n\trenderInitialUI?.(searchBox);\r\n\r\n\t//Trigger the search\r\n\t/*\r\n\twindow.addEventListener(\"scroll\", () => {\r\n\t\tif (!busy && skip * take < totalResults && searchBox.offsetTop + searchBox.offsetHeight <= window.scrollY + window.innerHeight) {\r\n\t\t\tdoSearch();\r\n\t\t}\r\n\t});\r\n\t*/\r\n\r\n\t//Force the initial search\r\n\tdoSearch();\r\n\r\n\t//Method to perform the search\r\n\tfunction doSearch() {\r\n\t\tbusy = true;\r\n\t\tpostData(apiUrl + \"/detail/registrysearch\", {\r\n\t\t\tQuery: query,\r\n\t\t\tSkip: skip,\r\n\t\t\tTake: take,\r\n\t\t\tUseBetaAPI: true\r\n\t\t}, response => {\r\n\t\t\t//Set the results and total results\r\n\t\t\tresultsData = response.Result.data;\r\n\t\t\ttotalResults = response.Result.total;\r\n\t\t\t//Render no results UI if no results\r\n\t\t\tif (totalResults == 0) {\r\n\t\t\t\trenderNoResultsUI?.(searchBox, searchBox);\r\n\t\t\t}\r\n\t\t\t//Otherwise, render a page of results, wait a moment, then reenable the search so another page can be loaded\r\n\t\t\telse {\r\n\t\t\t\tif (!hasResultsUI) {\r\n\t\t\t\t\trenderHasResultsUI?.(searchBox, resultsData, totalResults);\r\n\t\t\t\t\tresultList = renderResultList?.(searchBox);\r\n\t\t\t\t\tif (!resultList) {\r\n\t\t\t\t\t\tresultList = document.createElement(\"div\");\r\n\t\t\t\t\t\tsearchBox.appendChild(resultList);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tresultList.classList.add(\"miniSearchResults\");\r\n\t\t\t\t\tvar scroller = getScrollContext?.(resultList) || window;\r\n\t\t\t\t\tscroller.addEventListener(\"scroll\", () => {\r\n\t\t\t\t\t\tvar isNearBottom = scroller == window ? searchBox.offsetTop + searchBox.offsetHeight <= window.scrollY + window.innerHeight : scroller.scrollTop >= scroller.scrollHeight;\r\n\t\t\t\t\t\tif (!busy && skip * take < totalResults && isNearBottom) {\r\n\t\t\t\t\t\t\tdoSearch();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\thasResultsUI = true;\r\n\t\t\t\t}\r\n\t\t\t\trenderResultsPage(resultList, resultsData, renderResultMethod);\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tbusy = false; //Uncomment this to reenable the search\r\n\t\t\t\t\tskip += take;\r\n\t\t\t\t}, 250);\r\n\t\t\t}\r\n\t\t}, error => {\r\n\t\t\thandleError?.(searchBox, searchBox, error);\r\n\t\t});\r\n\t}\r\n}\r\n//\r\n\r\n//Render a page of results using the provided method for each result\r\nfunction renderResultsPage(container, resultsData, renderResultMethod) {\r\n\tresultsData?.forEach(resultData => {\r\n\t\tvar wrapper = document.createElement(\"div\");\r\n\t\twrapper.classList.add(\"resultWrapper\");\r\n\t\tcontainer.appendChild(wrapper);\r\n\t\tsetTimeout(() => {\r\n\t\t\trenderResultMethod(wrapper, resultData);\r\n\t\t}, 0);\r\n\t});\r\n}\r\n//\r\n\r\n//Generic post data method - may be better to put this somewhere else and import it\r\nexport function postData(url, data, success, error) {\r\n\tfetch(url, {\r\n\t\tmethod: \"POST\",\r\n\t\theaders: { \"Accept\": \"application/json\", \"Content-Type\": \"application/json\" },\r\n\t\tbody: JSON.stringify(data)\r\n\t}).then(response => {\r\n\t\treturn response.text();\r\n\t}).then(text => {\r\n\t\tvar value = JSON.parse(text);\r\n\t\tsuccess?.(value);\r\n\t}).catch(response => {\r\n\t\tconsole.log(\"Error\", response);\r\n\t\terror?.(response);\r\n\t});\r\n}\r\n//\r\n\r\n//Generic UUID method - may be better to put this somewhere else\r\nexport function getUUID() {\r\n\treturn crypto.randomUUID();\r\n}\r\n//\r\n\r\n//Generic method to get an element after react's lifecycle eventually renders it\r\nexport function getElementEventually(getMethod, afterGet) {\r\n\tvar attempts = 10;\r\n\tvar keepTrying;\r\n\tkeepTrying = setInterval(() => {\r\n\t\tconsole.log(\"Trying to get element...\", attempts);\r\n\t\tvar element = getMethod();\r\n\t\tif (element || attempts <= 0) {\r\n\t\t\tclearInterval(keepTrying);\r\n\t\t\tif (element) {\r\n\t\t\t\tconsole.log(\"Found element\", attempts);\r\n\t\t\t\tafterGet(element);\r\n\t\t\t}\r\n\t\t}\r\n\t\tattempts--;\r\n\t}, 1000);\r\n}\r\n//","export function getCurrentQuery() {\r\n\twindow.SearchQuery = window.SearchQuery || {};\r\n\treturn window.SearchQuery;\r\n}\r\n\r\nexport function setCurrentQuery(query) {\r\n\twindow.SearchQuery = query || {\r\n\t\tKeywords: [],\r\n\t\tMainFilters: [],\r\n\t\tMapFilter: {},\r\n\t\tSkipPages: 0,\r\n\t\tPageSize: 20,\r\n\t\tSortOrder: \"sortOrder:MostRelevant\"\r\n\t};\r\n}\r\n\r\nexport function registerCurrentQueryListener(name, method) {\r\n\twindow.SearchQueryListeners = window.SearchQueryListeners || [];\r\n\tif (name && method && !window.SearchQueryListeners.find(m => m.Name == name)) {\r\n\t\twindow.SearchQueryListeners.push({ Name: name, Method: method });\r\n\t}\r\n}\r\n\r\nexport function updateCurrentQuery(updateMethod) {\r\n\tvar query = getCurrentQuery();\r\n\tupdateMethod?.(query);\r\n\tconsole.log(\"Query updated\", query);\r\n\twindow.dispatchEvent(new Event(\"SearchQueryUpdated\"));\r\n\twindow.SearchQueryListeners?.forEach(listener => {\r\n\t\tconsole.log(\"Running listener: \" + listener.Name);\r\n\t\tlistener.Method();\r\n\t});\r\n}\r\n\r\nexport function delayThenDo(timeoutName, delayMS, method) {\r\n\twindow.TimeoutList = window.TimeoutList || {};\r\n\tclearTimeout(window.TimeoutList[timeoutName]);\r\n\twindow.TimeoutList[timeoutName] = setTimeout(method, delayMS);\r\n}\r\n\r\nexport function addFilterItem(filterID, filterURI, filterLabel, itemID, itemURI, itemText, afterOnRemove) {\r\n\tvar query = getCurrentQuery();\r\n\tquery.MainFilters = query.MainFilters || [];\r\n\tvar matchingFilter = query.MainFilters.find(m => m.Id == filterID);\r\n\tif (matchingFilter) {\r\n\t\tmatchingFilter.Items = matchingFilter.Items || [];\r\n\t\tvar matchingFilterItem = matchingFilter.Items?.find(m => getByIDOrURIOrText(m, itemID, itemURI, itemText));\r\n\t\tif (!matchingFilterItem) {\r\n\t\t\tmatchingFilter.Items.push({\r\n\t\t\t\tId: itemID,\r\n\t\t\t\tURI: itemURI,\r\n\t\t\t\tText: itemText,\r\n\t\t\t\tonRemove: function () {\r\n\t\t\t\t\tremoveFilterItem(filterID, filterURI, filterLabel, itemID, itemURI, itemText);\r\n\t\t\t\t\tafterOnRemove?.();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\telse {\r\n\t\tquery.MainFilters.push({\r\n\t\t\tId: filterID,\r\n\t\t\tLabel: filterLabel,\r\n\t\t\tURI: filterURI,\r\n\t\t\tItems: [\r\n\t\t\t\t{\r\n\t\t\t\t\tId: itemID,\r\n\t\t\t\t\tURI: itemURI,\r\n\t\t\t\t\tText: itemText,\r\n\t\t\t\t\tonRemove: function () {\r\n\t\t\t\t\t\tremoveFilterItem(filterID, filterURI, filterLabel, itemID, itemURI, itemText);\r\n\t\t\t\t\t\tafterOnRemove?.();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t});\r\n\t}\r\n\tupdateCurrentQuery();\r\n}\r\n\r\nexport function removeFilterItem(filterID, filterURI, filterLabel, itemID, itemURI, itemText) {\r\n\tvar query = getCurrentQuery();\r\n\tvar matchingFilter = query.MainFilters.find(m => m.Id == filterID);\r\n\tif (matchingFilter) {\r\n\t\tmatchingFilter.Items = matchingFilter.Items || [];\r\n\t\tvar matchingItem = matchingFilter.Items?.find(m => getByIDOrURIOrText(m, itemID, itemURI, itemText));\r\n\t\tif (matchingItem) {\r\n\t\t\tmatchingFilter.Items = matchingFilter.Items.filter(m => m != matchingItem);\r\n\t\t\tif (matchingFilter.IsPreselectedFilter) {\r\n\t\t\t\twindow.RemovedPreselectedFilter = true; //Hack\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (matchingFilter.Items.length == 0) {\r\n\t\t\tquery.MainFilters = query.MainFilters.filter(m => m != matchingFilter);\r\n\t\t}\r\n\t}\r\n\tupdateCurrentQuery();\r\n}\r\n\r\nexport function toggleFilterItem(filterID, filterURI, filterLabel, itemID, itemURI, itemText) {\r\n\tvar query = getCurrentQuery();\r\n\tif (query.MainFilters?.find(m => m.Id == filterID)?.Items?.find(m => getByIDOrURIOrText(m, itemID, itemURI, itemText))) {\r\n\t\tconsole.log(\"Removing Filter Item\", { filterID: filterID, filterLabel: filterLabel, itemID: itemID, itemURI: itemURI, itemText: itemText });\r\n\t\tremoveFilterItem(filterID, filterURI, filterLabel, itemID, itemURI, itemText);\r\n\t}\r\n\telse {\r\n\t\tconsole.log(\"Adding Filter Item\", { filterID: filterID, filterLabel: filterLabel, itemID: itemID, itemURI: itemURI, itemText: itemText });\r\n\t\taddFilterItem(filterID, filterURI, filterLabel, itemID, itemURI, itemText);\r\n\t}\r\n}\r\n\r\nexport function getByIDOrURIOrText(FilterItem, itemID, itemURI, itemText) {\r\n\treturn itemID ? FilterItem.Id == itemID :\r\n\t\titemURI ? FilterItem.URI == itemURI :\r\n\t\titemText ? FilterItem.Text == itemText :\r\n\t\tfalse;\r\n}\r\n","import { getUUID } from \"../components/MiniSearch\";\r\nimport { apiUrl } from \"../shared/globals\";\r\nimport { updateCurrentQuery } from './SearchHelper';\r\n\r\n//Global widget object\r\nwindow.Widget = window.Widget || {\r\n\tParameter: \"widgetid\",\r\n\tID: 0,\r\n\tURLName: \"\",\r\n\tInWidgetMode: false,\r\n\tStyleRules: [],\r\n\tStyleTag: null,\r\n\tConfig: null,\r\n\tDefaultSearchType: null\r\n};\r\n\r\n//Apply widgetization sitewide\r\nexport default function handleSiteWidgetization() {\r\n\tnew URLSearchParams(window.location.search).forEach(function (value, key) {\r\n\t\tif (key.toLowerCase() == window.Widget.Parameter) {\r\n\t\t\tconsole.log(\"Widget detected:\", value);\r\n\t\t\twindow.Widget.ID = isNaN(value) ? 0 : parseInt(value);\r\n\t\t\twindow.Widget.URLName = isNaN(value) ? value : \"\";\r\n\t\t\tconsole.log(\"Widget ID:\", window.Widget.ID);\r\n\t\t\tconsole.log(\"Widget URLName:\", window.Widget.URLName);\r\n\t\t}\r\n\t\tif (key.toLowerCase() == \"searchtype\") {\r\n\t\t\twindow.Widget.DefaultSearchType = value;\r\n\t\t}\r\n\t});\r\n\r\n\t//Skip the rest if there is no widget to apply\r\n\tif (!window.Widget.ID && !window.Widget.URLName) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t//Force async so other stuff renders first, then apply the widgetization\r\n\tsetTimeout(applyWidgetization, 0); \r\n}\r\n//\r\n\r\nfunction applyWidgetization() {\r\n\t//Skip if already applied\r\n\tif (window.Widget.ID == window.Widget.Config?.Id && window.Widget.URLName == window.Widget.Config?.URLName) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t//Get the data for the widget\r\n\tgetData(apiUrl + \"/widget/getconfig/\" + (window.Widget.ID || window.Widget.URLName), (response) => {\r\n\t//getData(\"https://sandbox.credentialengine.org/finderapi/widget/getconfig/\" + window.Widget.ID, (response) => {\r\n\t\t//Attach data\r\n\t\tconsole.log(\"Got widget data\", response);\r\n\t\twindow.Widget.Config = response.Result;\r\n\t\twindow.Widget.ID = window.Widget.Config.Id;\r\n\t\twindow.Widget.URLName = window.Widget.Config.UrlName;\r\n\r\n\t\t//Apply one-time changes\r\n\t\tenterWidgetMode();\r\n\r\n\t\t//Apply per-widget changes\r\n\t\tapplyWidgetConfig();\r\n\t});\r\n}\r\n//\r\n\r\n//Apply changes that only need to be done once\r\nfunction enterWidgetMode() {\r\n\t//Skip if already done\r\n\tif (window.Widget.InWidgetMode) {\r\n\t\treturn;\r\n\t}\r\n\twindow.Widget.InWidgetMode = true;\r\n\r\n\t//Apply changes\r\n\t//Hide things that should be hidden in a widget\r\n\tselect(\".widgetHide\").forEach(element => {\r\n\t\thide(element);\r\n\t});\r\n\r\n\t//Show things that should only show in a widget\r\n\tselect(\".widgetShow\").forEach(element => {\r\n\t\tshow(element);\r\n\t});\r\n\r\n\t//Widgetize links on click\r\n\twindow.addEventListener(\"mousedown\", function (e) {\r\n\t\twidgetizeLink(e.srcElement);\r\n\t});\r\n\r\n\t//Widgetize links on keyup\r\n\twindow.addEventListener(\"keyup\", function (e) {\r\n\t\twidgetizeLink(e.srcElement);\r\n\t});\r\n\r\n\t//Create a style tag to inject styles into\r\n\twindow.Widget.StyleTag = document.createElement(\"style\");\r\n\tdocument.body.appendChild(window.Widget.StyleTag);\r\n\r\n\t//Handle resizing\r\n\twindow.addEventListener(\"resize\", function () {\r\n\t\thandleResize();\r\n\t});\r\n\r\n\t//Force resizing despite react\r\n\tsetInterval(handleResize, 250);\r\n\r\n\t//Update query\r\n\tupdateCurrentQuery();\r\n}\r\n//\r\n\r\n//Widgetize a link\r\nfunction widgetizeLink(element) {\r\n\tif (element.tagName?.toLowerCase() == \"a\") {\r\n\t\t//element.target = \"\"; //Commented out so that links will continue to open in a new window\r\n\t\tif (!element.href.includes(window.Widget.Parameter)) {\r\n\t\t\tvar url = new URL(element.href);\r\n\t\t\turl.searchParams.append(window.Widget.Parameter, window.Widget.ID);\r\n\t\t\twindow.Widget.DefaultSearchType && url.searchParams.append(\"searchType\", window.Widget.DefaultSearchType);\r\n\t\t\telement.href = url.toString();\r\n\t\t}\r\n\t}\r\n\t//Handle links that have other elements inside of them\r\n\telse if (element.parentNode && element.parentNode != element) {\r\n\t\twidgetizeLink(element.parentNode);\r\n\t}\r\n}\r\n//\r\n\r\n//Apply changes unique to a given widget\r\nfunction applyWidgetConfig() {\r\n\tconsole.log(\"Applying widget config\", window.Widget.Config);\r\n}\r\n//\r\n\r\n//Handle resizing\r\nfunction handleResize() {\r\n\tvar height = document.body.clientHeight + 20;\r\n\tvar message = { action: \"resize\", width: \"100% !important\", height: height + \"px !important\" };\r\n\twindow.parent?.postMessage(JSON.stringify(message), \"*\");\r\n}\r\n//\r\n\r\n//Helpful mappings\r\nvar WidgetToFinderMap = {\r\n\t\"credential\": {\r\n\t\tGlobalHideName: \"FindCredential\",\r\n\t\tTypeName: \"CredentialFilters\",\r\n\t\tFilterMap: {\r\n\t\t\t\"filter:AssessmentDeliveryType\": \"AssessmentDeliveryTypes\",\r\n\t\t\t\"filter:AudienceLevelType\": \"AudienceLevelTypes\",\r\n\t\t\t\"filter:AudienceType\": \"AudienceTypes\",\r\n\t\t\t\"filter:Competencies\": \"Competencies\",\r\n\t\t\t\"filter:Connections\": \"CredentialConnections\",\r\n\t\t\t\"filter:CredentialStatus\": \"CredentialStatusTypes\",\r\n\t\t\t\"filter:CredentialType\": \"CredentialTypes\",\r\n\t\t\t\"filter:InLanguage\": \"Languages\",\r\n\t\t\t\"filter:IndustryType\": \"Industries\",\r\n\t\t\t\"filter:InstructionalProgramType\": \"InstructionalProgramTypes\",\r\n\t\t\t\"filter:LearningDeliveryType\": \"LearningDeliveryTypes\",\r\n\t\t\t\"filter:OccupationType\": \"Occupations\",\r\n\t\t\t\"filter:OtherFilters\": \"OtherFilters\",\r\n\t\t\t\"filter:QAReceived\": \"QualityAssurance\",\r\n\t\t\t\"filter:CollectionType\": \"Collections\",\r\n\t\t\t\"filter:Subjects\": \"Subjects\"\r\n\t\t}\r\n\t},\r\n\t\"organization\": {\r\n\t\tGlobalHideName: \"FindOrganization\",\r\n\t\tTypeName: \"OrganizationFilters\",\r\n\t\tFilterMap: {\r\n\t\t\t\"filter:OrganizationTypes\": \"OrganizationTypes\",\r\n\t\t\t\"filter:IndustryType\": \"Industries\",\r\n\t\t\t\"filter:ServiceTypes\": \"ServiceTypes\",\r\n\t\t\t\"filter:SectorTypes\": \"SectorTypes\",\r\n\t\t\t\"filter:ClaimTypes\": \"ClaimTypes\",\r\n\t\t\t\"filter:QAReceived\": \"QualityAssurance\",\r\n\t\t\t\"filter:QAPerformed\": \"QualityAssurancePerformed\",\r\n\t\t\t\"filter:OtherFilters\": \"OtherFilters\"\r\n\t\t}\r\n\t},\r\n\t\"assessment\": {\r\n\t\tGlobalHideName: \"FindAssessment\",\r\n\t\tTypeName: \"AssessmentFilters\",\r\n\t\tFilterMap: {\r\n\t\t\t\"filter:Competencies\": \"Competencies\",\r\n\t\t\t\"filter:Subjects\": \"Subjects\",\r\n\t\t\t\"filter:Connections\": \"AssessmentConnections\",\r\n\t\t\t\"filter:AssessmentDeliveryType\": \"DeliveryMethodTypes\",\r\n\t\t\t\"filter:AudienceLevelType\": \"AudienceLevelTypes\",\r\n\t\t\t\"filter:AudienceType\": \"AudienceTypes\",\r\n\t\t\t\"filter:CollectionType\": \"Collections\",\r\n\t\t\t\"filter:IndustryType\": \"Industries\", \r\n\t\t\t\"filter:OccupationType\": \"Occupations\",\r\n\t\t\t\"filter:InstructionalProgramType\": \"InstructionalProgramTypes\",\r\n\t\t\t\"filter:QAReceived\": \"QualityAssurance\",\r\n\t\t\t\"filter:InLanguage\": \"Languages\",\r\n\t\t\t\"filter:OtherFilters\": \"OtherFilters\"\r\n\t\t}\r\n\t},\r\n\t\"learningopportunity\": {\r\n\t\tGlobalHideName: \"FindLearningOpportunity\",\r\n\t\tTypeName: \"LearningOpportunityFilters\",\r\n\t\tFilterMap: {\r\n\t\t\t\"filter:LearningTypes\": \"LearningTypes\",\r\n\t\t\t\"filter:LifeCycleStatusTypes\": \"LifeCycleTypes\",\r\n\t\t\t\"filter:Competencies\": \"Competencies\",\r\n\t\t\t\"filter:Subjects\": \"Subjects\",\r\n\t\t\t\"filter:Connections\": \"LearningOpportunityConnections\",\r\n\t\t\t\"filter:AudienceLevelType\": \"AudienceLevelTypes\",\r\n\t\t\t\"filter:AudienceType\": \"AudienceTypes\",\r\n\t\t\t\"filter:LearningDeliveryType\": \"DeliveryMethodTypes\",\r\n\t\t\t\"filter:LearningMethodType\": \"LearningMethodTypes\",\r\n\t\t\t\"filter:CollectionType\": \"Collections\",\r\n\t\t\t\"filter:IndustryType\": \"Industries\",\r\n\t\t\t\"filter:OccupationType\": \"Occupations\",\r\n\t\t\t\"filter:InstructionalProgramType\": \"InstructionalProgramTypes\",\r\n\t\t\t\"filter:QAReceived\": \"QualityAssurance\",\r\n\t\t\t\"filter:InLanguage\": \"Languages\",\r\n\t\t\t\"filter:OtherFilters\": \"OtherFilters\"\r\n\t\t}\r\n\t},\r\n\t\"pathway\": {\r\n\t\tGlobalHideName: \"FindPathway\",\r\n\t\tTypeName: \"PathwayFilters\",\r\n\t\tFilterMap: {\r\n\t\t\t\"filter:Subjects\": \"unknown\", //Not included in the widget config page\r\n\t\t\t\"filter:IndustryType\": \"unknown\", //Not included in the widget config page\r\n\t\t\t\"filter:OccupationType\": \"unknown\" //Not included in the widget config page\r\n\t\t}\r\n\t},\r\n\t\"pathwayset\": {\r\n\t\tGlobalHideName: \"FindPathwaySet\",\r\n\t\tTypeName: \"PathwaySetFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"competencyframework\": {\r\n\t\tGlobalHideName: \"FindCompetencyFramework\",\r\n\t\tTypeName: \"CompetencyFrameworkFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"collection\": {\r\n\t\tGlobalHideName: \"FindCollection\",\r\n\t\tTypeName: \"CollectionFilters\",\r\n\t\tFilterMap: {\r\n\t\t\t\"filter:CollectionType\": \"CollectionTypes\"\r\n\t\t}\r\n\t},\r\n\t\"conceptscheme\": {\r\n\t\tGlobalHideName: \"FindConceptScheme\",\r\n\t\tTypeName: \"ConceptSchemeFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"progressionmodel\": {\r\n\t\tGlobalHideName: \"FindProgressionModel\",\r\n\t\tTypeName: \"ProgressionModelFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"scheduledoffering\": {\r\n\t\tGlobalHideName: \"FindScheduledOffering\",\r\n\t\tTypeName: \"ScheduledOfferingFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"supportservice\": {\r\n\t\tGlobalHideName: \"FindSupportService\",\r\n\t\tTypeName: \"SupportServiceFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"outcomedata\": {\r\n\t\tGlobalHideName: \"FindOutcomeData\",\r\n\t\tTypeName: \"OutcomeDataFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"occupation\": {\r\n\t\tGlobalHideName: \"FindOccupation\",\r\n\t\tTypeName: \"OccupationFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"job\": {\r\n\t\tGlobalHideName: \"FindJob\",\r\n\t\tTypeName: \"JobFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"task\": {\r\n\t\tGlobalHideName: \"FindTask\",\r\n\t\tTypeName: \"TaskFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"workrole\": {\r\n\t\tGlobalHideName: \"FindWorkRole\",\r\n\t\tTypeName: \"WorkRoleFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"transfervalue\": {\r\n\t\tGlobalHideName: \"FindTransferValue\",\r\n\t\tTypeName: \"TransferValueFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"credentialingaction\": {\r\n\t\tGlobalHideName: \"FindCredentialingAction\",\r\n\t\tTypeName: \"CredentialingActionFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"transferintermediary\": {\r\n\t\tGlobalHideName: \"FindTransferIntermediary\",\r\n\t\tTypeName: \"TransferIntermediaryFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"rubric\": {\r\n\t\tGlobalHideName: \"FindRubric\",\r\n\t\tTypeName: \"RubricFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"metric\": {\r\n\t\tGlobalHideName: \"FindMetric\",\r\n\t\tTypeName: \"MetricFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n\t\"industry\": {\r\n\t\tGlobalHideName: \"FindIndustry\",\r\n\t\tTypeName: \"IndustryFilters\",\r\n\t\tFilterMap: {}\r\n\t},\r\n};\r\n\r\n//Enable something to hide itself based on search type\r\nexport function doesWidgetHideThisSearchType(searchType) {\r\n\treturn window.Widget?.Config?.HideGlobalFilters?.includes(WidgetToFinderMap[searchType?.toLowerCase()]?.GlobalHideName);\r\n}\r\n//\r\n\r\n//Apply a widget's stuff to a query\r\nexport function widgetApplyWidgetToQuery(query, searchType) {\r\n\tif (window.Widget?.Config) {\r\n\t\t//Add widget ID\r\n\t\tquery.WidgetId = window.Widget.Config.Id;\r\n\t\tquery.HasCredentialPotentialResults = window.Widget.Config?.HasCredentialPotentialResults;\r\n\t\t//Add filters\r\n\t\tvar filterSet = WidgetToFinderMap[searchType?.toLowerCase()];\r\n\t\tquery.MainFilters = query.MainFilters.filter(m => !m.WidgetName); //Remove existing widget filters so react doesn't double-include them\r\n\t\tif (filterSet) {\r\n\t\t\t//Role filters\r\n\t\t\taddRoles(window.Widget?.Config?.[filterSet.TypeName]?.QualityAssurance, \"Quality Assurance by:\");\r\n\t\t\taddRoles(window.Widget?.Config?.[filterSet.TypeName]?.Provider, \"Provided by:\");\r\n\r\n\t\t\t//Text filters\r\n\t\t\taddTexts(filterSet?.Subjects);\r\n\t\t\taddTexts(filterSet?.Competencies);\r\n\t\t\taddTexts(filterSet?.Industries);\r\n\t\t\taddTexts(filterSet?.Occupations);\r\n\t\t\taddTexts(filterSet?.InstructionalProgramTypes);\r\n\t\t\taddTexts(filterSet?.Collections);\r\n\r\n\t\t\t//Location filters\r\n\t\t\tvar locations = window.Widget.Config.Locations;\r\n\t\t\tif (locations && (Object.keys(locations).length > 1 || locations.IsAvailableOnline == true)) {\r\n\t\t\t\tvar locationsFilterItem = {\r\n\t\t\t\t\tWidgetName: \"widget-locationset\",\r\n\t\t\t\t\tLabel: \"Location(s)\",\r\n\t\t\t\t\tItems: [{\r\n\t\t\t\t\t\tText: [(locations.Countries || []).concat(locations.Regions || []).concat(locations.Cities || []).length > 0 ? \"Applicable Locations\" : \"\", locations.IsAvailableOnline ? \"Available Online\" : \"\"].filter(m => m.length > 0).join(\" + \"),\r\n\t\t\t\t\t\tType: \"LOCATIONSET\",\r\n\t\t\t\t\t\tURI: \"LOCATIONSET\",\r\n\t\t\t\t\t\tValues: locations\r\n\t\t\t\t\t}]\r\n\t\t\t\t};\r\n\t\t\t\tquery.MainFilters.push(locationsFilterItem);\r\n\t\t\t}\r\n\r\n\t\t\t//Potential Results filters\r\n\t\t\tvar potentialResults = window.Widget?.Config?.[filterSet.TypeName]?.PotentialResults?.map(item => item.Id);\r\n\t\t\tif (potentialResults?.length > 0) {\r\n\t\t\t\tquery.MainFilters.push({\r\n\t\t\t\t\tWidgetName: \"widget-potentialresults\",\r\n\t\t\t\t\tLabel: \"Potential Results\",\r\n\t\t\t\t\tItems: [{\r\n\t\t\t\t\t\tText: potentialResults.length + \" Items\"\r\n\t\t\t\t\t}],\r\n\t\t\t\t\tParameters: {\r\n\t\t\t\t\t\tn: \"potentialresults\",\r\n\t\t\t\t\t\tids: potentialResults\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\t//Part of Collection Results filters\r\n\t\t\tvar collectionResults = window.Widget?.Config?.[filterSet.TypeName]?.CollectionResults?.map(item => item.Id);\r\n\t\t\tif (collectionResults?.length > 0) {\r\n\t\t\t\tquery.MainFilters.push({\r\n\t\t\t\t\tWidgetName: \"widget-collectionresults\",\r\n\t\t\t\t\tLabel: \"In Collection\",\r\n\t\t\t\t\tItems: [{\r\n\t\t\t\t\t\tText: collectionResults.length + \" Items\"\r\n\t\t\t\t\t}],\r\n\t\t\t\t\tParameters: {\r\n\t\t\t\t\t\tn: \"collectionresults\",\r\n\t\t\t\t\t\tids: collectionResults\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction addRoles(roles, messagePrefix) {\r\n\t\t\tif (roles) {\r\n\t\t\t\troles.Organizations?.forEach(organization => {\r\n\t\t\t\t\tquery.MainFilters.push({\r\n\t\t\t\t\t\tWidgetName: \"widget-roles\",\r\n\t\t\t\t\t\tLabel: messagePrefix,\r\n\t\t\t\t\t\tItems: [{\r\n\t\t\t\t\t\t\tText: organization.Name\r\n\t\t\t\t\t\t}],\r\n\t\t\t\t\t\tParameters: { n: \"organizationroles\", aid: organization.Id, rid: roles.RoleIds }\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction addTexts(textArray) {\r\n\t\t\tif (textArray && textArray.length > 0) {\r\n\t\t\t\tquery.MainFilters.push({\r\n\t\t\t\t\tWidgetName: \"widget-text\",\r\n\t\t\t\t\tLabel: \"Widget Text\",\r\n\t\t\t\t\tInterfaceType: \"interfaceType:Text\",\r\n\t\t\t\t\tItems: textArray?.map(text => {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\tText: text\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t})\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n//\r\n\r\n//Remove filters and/or filter items\r\nexport function widgetPruneFiltersAndOptions(filters, searchType) {\r\n\tvar filterSet = WidgetToFinderMap[searchType?.toLowerCase()];\r\n\tif (filterSet) {\r\n\t\tvar hiders = window.Widget?.Config?.[filterSet.TypeName]?.HideFiltersAndItems || [];\r\n\t\tvar updated = [];\r\n\t\tfilters.forEach(filter => {\r\n\t\t\tvar hider = hiders.filter(m => m.Identifier == filterSet.FilterMap[filter.URI])[0];\r\n\t\t\tif (hider) {\r\n\t\t\t\tif (!hider.Selected && hider.ItemIDs?.length > 0) {\r\n\t\t\t\t\tfilter.Items = filter.Items.filter(m => !hider.ItemIDs.includes(m.Id));\r\n\t\t\t\t\tupdated.push(filter);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tupdated.push(filter);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\treturn updated;\r\n\t}\r\n\r\n\treturn filters;\r\n}\r\n//\r\n\r\n//SiteHeader, SearchResultLink, SearchResultButton, LogoBox\r\nexport function widgetGetColor(colorFor, getForegroundColor, fallback) {\r\n\tvar colorSet = window.Widget?.Config?.WidgetColors?.filter(m => m.ColorFor?.toLowerCase() == colorFor.toLowerCase())[0];\r\n\tif (colorSet) {\r\n\t\tvar foregroundColor = colorSet.UseDefaultForegroundColor ? fallback : colorSet.ForegroundColor;\r\n\t\tvar backgroundColor = colorSet.UseDefaultBackgroundColor ? fallback : colorSet.BackgroundColor;\r\n\t\treturn getForegroundColor ? foregroundColor : backgroundColor;\r\n\t}\r\n\telse {\r\n\t\treturn fallback;\r\n\t}\r\n}\r\n//\r\n\r\nfunction updateWidgetStyles() {\r\n\twindow.Widget.StyleTag.innerHTML = window.Widget.StyleRules.join(\"\\n\");\r\n}\r\n//\r\n\r\n//Helper functions\r\nfunction getData(url, success, error) {\r\n\tfetch(url).then(response => {\r\n\t\treturn response.text();\r\n\t}).then(text => {\r\n\t\tvar value = JSON.parse(text);\r\n\t\tsuccess?.(value);\r\n\t}).catch(response => {\r\n\t\tconsole.log(\"Error\", response);\r\n\t\terror?.(response);\r\n\t});\r\n}\r\n//\r\n\r\nfunction select(selector, element) {\r\n\treturn Array.from((element || document).querySelectorAll(selector));\r\n}\r\n//\r\n\r\nfunction hide(element) {\r\n\telement.dataset.originalDisplay = element.style.display;\r\n\telement.style.display = \"none\";\r\n}\r\n//\r\n\r\nfunction show(element) {\r\n\telement.style.display = element.dataset.widgetDisplay || element.dataset.originalDisplay || \"\";\r\n}\r\n//\r\n\r\nfunction create(element, classList) {\r\n\tvar element = document.createElement(element);\r\n\tclassList?.forEach(item => { element.classList.add(item); });\r\n\treturn element;\r\n}\r\n//\r\n\r\nfunction append(element, container) {\r\n\tcontainer.appendChild(element);\r\n\treturn element;\r\n}\r\n//\r\n\r\nfunction postData(url, data, success, error) {\r\n\tfetch(url, {\r\n\t\tmethod: \"POST\",\r\n\t\theaders: { \"Accept\": \"application/json\", \"Content-Type\": \"application/json\" },\r\n\t\tbody: JSON.stringify(data)\r\n\t}).then(response => {\r\n\t\treturn response.text();\r\n\t}).then(text => {\r\n\t\tvar value = JSON.parse(text);\r\n\t\tsuccess?.(value);\r\n\t}).catch(response => {\r\n\t\tconsole.log(\"Error\", response);\r\n\t\terror?.(response);\r\n\t});\r\n}\r\n//\r\n\r\nexport function widgetGetSingleLabelForCTDLType(type, fallback){\r\n\treturn window.Widget?.Config?.LabelMaps?.find(m => m.CTDLType == type)?.SingleLabel || fallback || type || \"Resource\";\r\n}\r\n//\r\n\r\nexport function widgetGetPluralLabelForCTDLType(type, fallback) {\r\n\treturn window.Widget?.Config?.LabelMaps?.find(m => m.CTDLType == type)?.PluralLabel || fallback || type || \"Resources\";\r\n}\r\n//\r\n\r\nexport function widgetGetSingleLabelForBroadType(type, fallback){\r\n\treturn window.Widget?.Config?.LabelMaps?.find(m => m.BroadType == type)?.SingleLabel || fallback || type || \"Resource\";\r\n}\r\n//\r\n\r\nexport function widgetGetPluralLabelForBroadType(type, fallback) {\r\n\treturn window.Widget?.Config?.LabelMaps?.find(m => m.BroadType == type)?.PluralLabel || fallback || type || \"Resources\";\r\n}\r\n//\r\n\r\nexport function widgetGetSingleLabelForText(text, fallback){\r\n\treturn window.Widget?.Config?.LabelMaps?.find(m => m.SingleReplace == text)?.SingleLabel || fallback || text || \"Resource\";\r\n}\r\n//\r\n\r\nexport function widgetGetPluralLabelForText(text, fallback) {\r\n\treturn window.Widget?.Config?.LabelMaps?.find(m => m.PluralReplace == text)?.PluralLabel || fallback || text || \"Resources\";\r\n}\r\n//\r\n\r\nfunction replaceTextWith(text, replaceType, labelType) {\r\n\ttext = text || \"\";\r\n\r\n\twindow.Widget?.Config?.LabelMaps?.forEach(Map => {\r\n\t\ttext = text.replace(new RegExp(Map[replaceType], \"gi\"), Map[labelType]);\r\n\t});\r\n\r\n\treturn text;\r\n}\r\n\r\nexport function widgetReplaceSingleLabelInText(text) {\r\n\treturn replaceTextWith(text, \"SingleReplace\", \"SingleLabel\");\r\n}\r\n//\r\n\r\nexport function widgetReplacePluralLabelInText(text) {\r\n\treturn replaceTextWith(text, \"PluralReplace\", \"PluralLabel\");\r\n}\r\n//\r\n","import styled, { css } from 'styled-components';\r\nimport { Link, LinkProps } from 'react-router-dom';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\nexport const Hero = styled.h2`\r\n font-size: ${(props) => props.theme.fontSize.hero};\r\n font-weight: 400;\r\n line-height: 1.095;\r\n`;\r\n\r\ninterface ButtonProps {\r\n buttonType?: 'primary' | 'secondary' | 'tertiary' | 'filled';\r\n inline?: boolean;\r\n}\r\n\r\nexport const Button = styled.button`\r\n background: transparent;\r\n border: 1px solid ${(props) => props.theme.color.blueDark};\r\n color: ${(props) => props.theme.color.blueDark};\r\n cursor: pointer;\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n font-weight: 500;\r\n line-height: 1.125;\r\n min-width: 350px;\r\n padding: 0.65em 1.65em;\r\n\t border-radius: 3px;\r\n &:hover {\r\n filter: brightness(1.5);\r\n }\r\n\r\n ${(props) =>\r\n !props.buttonType &&\r\n css`\r\n &:hover {\r\n background: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.blueDark)};\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.white)};\r\n }\r\n `}\r\n\r\n ${(props) =>\r\n props.buttonType === 'primary' &&\r\n css`\r\n background: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.blueDark)};\r\n border-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.blueDark)};\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.white)};\r\n `}\r\n ${(props) =>\r\n props.buttonType === 'secondary' &&\r\n css`\r\n background: ${(props) => widgetGetColor(\"SearchResultLink\", false, props.theme.color.aquaDark)};\r\n border-color: ${(props) => widgetGetColor(\"SearchResultLink\", true, props.theme.color.aquaDark)};\r\n color: ${(props) => widgetGetColor(\"SearchResultLink\", true, props.theme.color.blueDark)};\r\n `}\r\n ${(props) =>\r\n props.buttonType === 'tertiary' &&\r\n css`\r\n background: ${(props) => widgetGetColor(\"LogoBox\", false, props.theme.color.brown)};\r\n border-color: ${(props) => widgetGetColor(\"LogoBox\", false, props.theme.color.brown)};\r\n color: ${(props) => widgetGetColor(\"LogoBox\", true, props.theme.color.white)};\r\n\r\n &:hover {\r\n filter: brightness(1.25);\r\n }\r\n `}\r\n ${(props) =>\r\n props.buttonType === 'filled' &&\r\n css`\r\n background: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.blueDark)};\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.white)};\r\n `}\r\n ${(props) =>\r\n props.inline &&\r\n css`\r\n align-self: flex-start;\r\n `}\r\n`;\r\n\r\nexport const ButtonLink = styled(Button.withComponent('a'))<{ type?: 'link' }>`\r\n align-self: flex-start;\r\n text-decoration: none;\r\n text-align: center;\r\n display: inline-block;\r\n\r\n ${(props) =>\r\n props.type === 'link' &&\r\n css`\r\n background: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.white)};\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.blueDark)};\r\n border: none;\r\n `}\r\n`;\r\n\r\ntype LinkWithoutButtonTypeProps = ButtonProps & LinkProps;\r\n\r\n// Pick out Button prop values (like buttonType) that cause warnings when passed to a Link component.\r\nconst LinkWithoutButtonProps = ({\r\n buttonType,\r\n inline,\r\n ...linkProps\r\n}: LinkWithoutButtonTypeProps) => ;\r\n\r\nexport const InternalButtonLink = styled(\r\n Button.withComponent(LinkWithoutButtonProps),\r\n)`\r\n align-self: flex-start;\r\n text-decoration: none;\r\n text-align: center;\r\n display: inline-block;\r\n`;\r\n\r\nexport const CleanList = styled.ul`\r\n margin: 0;\r\n padding: 0;\r\n\r\n > li {\r\n list-style: none outside none;\r\n }\r\n`;\r\n\r\nexport const FlexRow = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: flex-start;\r\n align-items: center;\r\n`;\r\n\r\nexport const FlexCol = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: flex-start;\r\n align-items: stretch;\r\n`;\r\n\r\nexport const TextField = styled.input`\r\n border: 1px solid ${(props) => widgetGetColor(\"SearchResultLink\", false, props.theme.color.aquaDark)};\r\n border-radius: 0;\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n line-height: 1.125;\r\n padding: 0.625em 0.65em;\r\n margin: 0;\r\n width: 100%;\r\n`;\r\n\r\nexport const ContentDelimiter = styled.div`\r\n margin: 0 auto;\r\n max-width: ${(props) => props.theme.maxWidth};\r\n padding: 0 20px;\r\n`;\r\n","import styled from 'styled-components/macro';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\nexport const StyledDropdown = styled.div`\r\n cursor: pointer;\r\n position: relative;\r\n`;\r\n\r\nexport const Header = styled.button`\r\n display: flex;\r\n width: 100%;\r\n justify-content: space-between;\r\n align-items: center;\r\n\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"\")};\r\n background-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaLight)};\r\n border: 1px solid ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaLight)};\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n line-height: 1.125;\r\n padding: 0.65em 0.65em;\r\n`;\r\n\r\nexport const Options = styled.div`\r\n border-bottom: 1px solid ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaDark)};\r\n left: 0;\r\n position: absolute;\r\n top: 100%;\r\n width: 100%;\r\n z-index: 10;\r\n`;\r\n\r\nexport const HeaderIcon = styled.div`\r\n display: inline-block;\r\n margin-left: 10px;\r\n`;\r\n\r\nexport const Option = styled.button<{ selected?: boolean }>`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n border: 1px solid ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaDark)};\r\n border-bottom: 0 none;\r\n border-radius: 0;\r\n\tcolor: ${(props) => props.selected ? widgetGetColor(\"SearchResultButton\", true, \"\") : widgetGetColor(\"SearchResultButton\", false, \"\")};\r\n background-color: ${(props) => props.selected ? widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaLight) : widgetGetColor(\"SearchResultButton\", true, props.theme.color.white)};\r\n cursor: pointer;\r\n font-size: ${(props) => props.theme.fontSize.md};\r\n width: 100%;\r\n text-align: left;\r\n padding: 10px;\r\n margin: 0;\r\n\r\n &:hover {\r\n\t\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"\")};\r\n background-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaLight)};\r\n }\r\n`;\r\n\r\nexport const OptionIcon = styled.img`\r\n\tmargin-right: 10px;\r\n\tmax-width: 25px;\r\n\tmax-height: 25px;\r\n`;","import React, { useEffect, useRef, useState } from 'react';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faAngleDown } from '@fortawesome/free-solid-svg-icons';\r\nimport { StyledDropdown, Header, HeaderIcon, Options, Option, OptionIcon } from './styles';\r\n\r\ninterface Props {\r\n defaultOptionIndex?: number;\r\n options: any[];\r\n onChange?: (option: any) => void;\r\n\tgetOptionLabel?: (option: any) => string;\r\n\tariaLabel: string;\r\n}\r\n\r\nexport default function Dropdown(props: Props) {\r\n const [selectIndex, setSelectIndex] = useState(\r\n props.defaultOptionIndex ?? props.options.length > 0 ? 0 : -1,\r\n );\r\n const ref = useRef(null);\r\n const [expanded, setExpanded] = useState(false);\r\n\r\n function onChange(option: any, index: number) {\r\n setSelectIndex(index);\r\n setExpanded(!expanded);\r\n props.onChange && props.onChange(option);\r\n }\r\n\r\n function getOptionLabel(option: any) {\r\n if (option === undefined) {\r\n return '';\r\n }\r\n if (typeof option === 'string') {\r\n return option;\r\n } else {\r\n return props.getOptionLabel ? props.getOptionLabel(option) : '';\r\n }\r\n }\r\n\r\n const handleClickOutside = (event: any) => {\r\n if (ref.current && !ref.current.contains(event.target)) {\r\n setExpanded(false);\r\n }\r\n };\r\n\r\n const handleBlur = (event: any) => {\r\n if (ref.current && !ref.current.contains(event.relatedTarget)) {\r\n setExpanded(false);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (props.defaultOptionIndex !== undefined) {\r\n setSelectIndex(props.defaultOptionIndex);\r\n }\r\n }, [props.defaultOptionIndex]);\r\n\r\n useEffect(() => {\r\n document.addEventListener('click', handleClickOutside, true);\r\n return () => {\r\n document.removeEventListener('click', handleClickOutside, true);\r\n };\r\n });\r\n\r\n\t//Initialize for new query handller. May need to remove this if it causes issues?\r\n\tuseEffect(() => {\r\n\t\tsetSelectIndex(props.defaultOptionIndex || 0);\r\n\t\tprops.onChange && props.onChange(props.options[props.defaultOptionIndex || 0]);\r\n\t}, []);\r\n\r\n\tfunction handleKeyUp(event: React.KeyboardEvent) {\r\n\t\t/*\r\n\t\tswitch (event.keyCode) {\r\n\t\t\tcase 36: { setSelectIndex(0); event.stopPropagation(); event.preventDefault(); break; } //Home Key\r\n\t\t\tcase 38: { setSelectIndex(selectIndex - 1 <= 0 ? 0 : selectIndex - 1); event.stopPropagation(); event.preventDefault(); break; } //Up Arrow\r\n\t\t\tcase 40: { setSelectIndex(selectIndex + 1 >= props.options.length ? props.options.length - 1 : selectIndex + 1); event.stopPropagation(); event.preventDefault(); break; } //Down Arrow\r\n\t\t\tcase 35: { setSelectIndex(props.options.length - 1); event.stopPropagation(); event.preventDefault(); break; } //End Key\r\n\t\t\tdefault: break;\r\n\t\t}\r\n\r\n\t\tswitch (event.keyCode) {\r\n\t\t\tcase 38: { window.dispatchEvent(new KeyboardEvent(\"keydown\", { keyCode: 9, shiftKey: true })); break; }\r\n\t\t\tcase 40: { window.dispatchEvent(new KeyboardEvent(\"keydown\", { keyCode: 9 })); break; }\r\n\t\t\tdefault: break;\r\n\t\t}\r\n\t\t*/\r\n\t}\r\n\r\n\tvar currentIndex = selectIndex;\r\n\treturn (\r\n\t\t handleKeyUp(event)}>\r\n
setExpanded(!expanded)}>\r\n {getOptionLabel(props.options[selectIndex])}\r\n \r\n \r\n \r\n
\r\n\t\t\t\t\r\n\t\t\t\t\t{props.options.map((option, index) => (\r\n\t\t\t\t\t\t onChange(option, index)}>\r\n\t\t\t\t\t\t\t{option.icon && }\r\n\t\t\t\t\t\t\t{getOptionLabel(option)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n
\r\n );\r\n}\r\n","import styled, { css } from 'styled-components/macro';\r\n\r\nexport type PillType = 'filter' | 'filter-button';\r\n\r\ninterface PillProps {\r\n selected?: boolean;\r\n pillType?: PillType;\r\n}\r\n\r\nexport const StyledPill = styled.button`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n cursor: pointer;\r\n background-color: ${(props) => props.theme.color.greyLight};\r\n border: 1px solid ${(props) => props.theme.color.greyLight};\r\n border-radius: 20px;\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n line-height: 1.714;\r\n padding: 0.2em 2rem 0.2em 1em;\r\n position: relative;\r\n\r\n &:hover {\r\n background-color: ${(props) => props.theme.color.white};\r\n border-color: ${(props) => props.theme.color.greyDark};\r\n }\r\n\r\n ${(outProps) => {\r\n switch (outProps.pillType) {\r\n case 'filter-button':\r\n return css`\r\n background-color: ${(props) =>\r\n outProps.selected\r\n ? props.theme.color.greyDark\r\n : 'transparent'};\r\n border-color: ${(props) => props.theme.color.greyDark};\r\n color: ${(props) =>\r\n outProps.selected\r\n ? props.theme.color.white\r\n : undefined};\r\n\r\n &:hover {\r\n background-color: ${(props) =>\r\n props.theme.color.greyDark};\r\n border-color: ${(props) => props.theme.color.greyDark};\r\n color: ${(props) => props.theme.color.white};\r\n }\r\n `;\r\n }\r\n }}\r\n\r\n .icon-right {\r\n position: absolute;\r\n right: 15px;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n }\r\n`;\r\n\r\nexport const StyledUnremovablePill = styled.button`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n\tcursor: default;\r\n background-color: ${(props) => props.theme.color.greyLight};\r\n border: 1px solid ${(props) => props.theme.color.greyLight};\r\n border-radius: 20px;\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n line-height: 1.714;\r\n padding: 0.2em 1em 0.2em 1em;\r\n position: relative;\r\n`;\r\n\r\nexport const PillContent = styled.span`\r\n margin: 0 10px;\r\n`;\r\n","import React, { ReactNode, useState } from 'react';\r\nimport { PillContent, PillType, StyledPill, StyledUnremovablePill } from './styles';\r\n\r\ninterface Props extends React.ButtonHTMLAttributes {\r\n content: ReactNode | string;\r\n onClick?: () => void;\r\n leftIcon?: ReactNode;\r\n rightIcon?: ReactNode;\r\n leftIconOnActive?: ReactNode;\r\n rightIconOnActive?: ReactNode;\r\n pillType?: PillType;\r\n\tisActive?: boolean;\r\n}\r\n\r\nexport default function Pill(props: Props) {\r\n const [isClicked, setIsClicked] = useState(false);\r\n\r\n\tfunction onClick(e: React.MouseEvent) {\r\n\t\tsetIsClicked(!isClicked);\r\n\t\tprops.onClick && props.onClick();\r\n }\r\n\r\n return (\r\n \r\n {props.isActive ?? isClicked\r\n ? props.leftIconOnActive || props.leftIcon\r\n : props.leftIcon}\r\n\t\t\t{props.content}\r\n\t\t\t{props.isActive ?? isClicked ? (\r\n\t\t\t\t\r\n\t\t\t\t\t{props.rightIconOnActive || props.rightIcon}\r\n\t\t\t\t\r\n\t\t\t) : (\r\n\t\t\t\t{props.rightIcon}\r\n\t\t\t)}\r\n \r\n );\r\n}\r\n\r\nexport function UnremovablePill(props: Props) {\r\n\treturn (\r\n\t\t\r\n\t\t\t{props.content}\r\n\t\t\r\n\t);\r\n}","import styled from 'styled-components/macro';\r\nimport { ContentDelimiter } from '../common';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\nexport const Wrapper = styled.div`\r\n background-color: ${(p) => (window as any).Widget?.ID ? \"#333\" : p.theme.color.blueDark};\r\n padding: 1.5rem 0 2rem;\r\n\tborder-top: ${(p) => (window as any).Widget?.ID ? (\"5px solid \" + widgetGetColor(\"SiteHeader\", false, \"#CCC\")) : \"none\"};\r\n`;\r\n\r\nexport const Inner = styled(ContentDelimiter)`\r\n display: grid;\r\n grid-gap: 30px;\r\n grid-template-areas:\r\n 'left center'\r\n 'left right';\r\n grid-template-columns: fit-content(100px) 1fr;\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletLandscape}) {\r\n grid-template-areas: 'left center right';\r\n grid-template-columns: fit-content(150px) 1fr fit-content(250px);\r\n\r\n }\r\n`;\r\n\r\nexport const Left = styled.div`\r\n\tposition: relative;\r\n grid-area: left;\r\n`;\r\n\r\nexport const Center = styled.div`\r\n grid-area: center;\r\n`;\r\n\r\nexport const Right = styled.div`\r\n grid-area: right;\r\n color: ${(p) => p.theme.color.white};\r\n`;\r\n\r\nexport const Icon = styled.img`\r\n height: auto;\r\n width: auto;\r\n`;\r\n\r\nexport const Type = styled.small`\r\n color: ${(p) => (window as any).Widget?.ID ? \"#FFF\" : p.theme.color.aquaDark};\r\n`;\r\n\r\nexport const Title = styled.h1`\r\n margin-block: 7px;\r\n\tcolor: ${(p) => (window as any).Widget?.ID ? \"#FFF\" : p.theme.color.aquaDark};\r\n`;\r\n\r\nexport const SubTitle = styled.div`\r\n color: ${(p) => p.theme.color.white};\r\n margin-bottom: 7px;\r\n font-weight: 700;\r\n`;\r\n\r\nexport const Content = styled.div`\r\n color: ${(p) => p.theme.color.white};\r\n`;\r\n\r\nexport const WhiteLink = styled.a`\r\n\tcolor: ${(p) => p.theme.color.white};\r\n\ttext-decoration: none;\r\n\t&:hover {\r\n\t\ttext-decoration: underline;\r\n\t}\r\n`;\r\n\r\nexport const BadgeIcon = styled.img`\r\n\tposition: absolute;\r\n\tbottom: 0;\r\n\tright: -10px;\r\n\tmax-width: 55px;\r\n\tmax-height: 55px;\r\n`;","import React, { ReactNode } from 'react';\r\nimport {\r\n Left,\r\n Center,\r\n Right,\r\n SubTitle,\r\n Wrapper,\r\n Inner,\r\n Type,\r\n Title,\r\n Content,\r\n\tIcon,\r\n\tBadgeIcon\r\n} from './styles';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\n\r\ntype Props = Partial<{\r\n\ticon: string;\r\n\thasBadge?: boolean;\r\n fallBackIcon?: string;\r\n title: string;\r\n\tsubTitle: ReactNode;\r\n content: ReactNode;\r\n type: string;\r\n otherContent: ReactNode;\r\n}>;\r\n\r\nexport default function Banner({\r\n\ticon,\r\n\thasBadge,\r\n fallBackIcon,\r\n title,\r\n subTitle,\r\n content,\r\n type,\r\n otherContent,\r\n}: Props) {\r\n function onIconLoadingError(e: any) {\r\n e.target.src = fallBackIcon;\r\n }\r\n return (\r\n \r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t{hasBadge && }\r\n \r\n
\r\n\t\t\t\t\t{type && (\r\n\t\t\t\t\t\t{type}\r\n\t\t\t\t\t)}\r\n {title}\r\n\t\t\t\t\t{subTitle && (\r\n\t\t\t\t\t\t{subTitle}\r\n\t\t\t\t\t)}\r\n {content}\r\n
\r\n {otherContent && {otherContent}}\r\n
\r\n
\r\n );\r\n}\r\n","// Please define all custom hooks here\r\nimport axios from 'axios';\r\nimport { useState, useEffect, useCallback } from 'react';\r\n\r\nfunction getWindowDimensions() {\r\n const { innerWidth: width, innerHeight: height } = window;\r\n return {\r\n width,\r\n height,\r\n };\r\n}\r\n\r\nfunction getQueryType(query: string): [type: 'max' | 'min', size: number] {\r\n const [type, size] = query.split(':');\r\n const reg = /\\D/g;\r\n let validatedSize = parseInt(size.trim().replaceAll(reg, ''));\r\n if (isNaN(validatedSize)) {\r\n validatedSize = 0;\r\n }\r\n return [type.includes('max') ? 'max' : 'min', validatedSize];\r\n}\r\n\r\nexport function useMediaQuery({ query }: { query: string }) {\r\n const [matchQuery, setMatchQuery] = useState(false);\r\n\r\n useEffect(() => {\r\n const [type, matchSize] = getQueryType(query);\r\n function handleResize() {\r\n const { width, height } = getWindowDimensions();\r\n if (type === 'max') {\r\n setMatchQuery(width <= matchSize);\r\n } else {\r\n setMatchQuery(width >= matchSize);\r\n }\r\n }\r\n\r\n handleResize();\r\n\r\n window.addEventListener('resize', handleResize);\r\n return () => window.removeEventListener('resize', handleResize);\r\n }, [query]);\r\n\r\n return matchQuery;\r\n}\r\n// A common function to get data from the server\r\nexport function useGet(): [\r\n boolean,\r\n boolean,\r\n (url: string, onSuccess: (data: any) => void) => void,\r\n] {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [hasError, setHasError] = useState(false);\r\n // Wrap this in useCallback to prevent effects that depend on it re-running.\r\n const get = useCallback((url: string, onSuccess: (data: any) => void) => {\r\n setHasError(false);\r\n setIsLoading(true);\r\n axios\r\n .get(url)\r\n .then((response) => {\r\n setIsLoading(false);\r\n const data = response.data;\r\n if (data.Successful === false) {\r\n throw data;\r\n } else {\r\n data.Result ? onSuccess(data.Result) : onSuccess(data);\r\n }\r\n })\r\n .catch((error) => {\r\n setIsLoading(false);\r\n setHasError(true);\r\n console.error(error);\r\n });\r\n }, []);\r\n\r\n return [isLoading, hasError, get];\r\n}\r\n","import styled from 'styled-components/macro';\r\n\r\ntype FlexJustify =\r\n | 'flex-start'\r\n | 'flex-end'\r\n | 'center'\r\n | 'space-between'\r\n | 'space-around'\r\n | 'space-evenly'\r\n | 'start'\r\n | 'end'\r\n | 'left'\r\n | 'right';\r\n\r\ntype FlexAlign = 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline';\r\n\r\ntype FlexWrap = 'nowrap' | 'wrap' | 'wrap-reverse';\r\n\r\n// this is to mimic the HStack of swiftUI\r\nconst Stack = styled.div<{\r\n spacing?: string;\r\n justify?: FlexJustify;\r\n align?: FlexAlign;\r\n flex?: number;\r\n wrap?: FlexWrap;\r\n}>`\r\n display: flex;\r\n justify-content: ${(props) => props.justify || 'flex-start'};\r\n align-items: ${(props) => props.align || 'stretch'};\r\n flex-wrap: ${(props) => props.wrap || 'nowrap'};\r\n flex: ${(props) => props.flex ?? 1};\r\n`;\r\n\r\nexport const HStack = styled(Stack)`\r\n > :not(:first-child, :last-child) {\r\n margin-left: ${(props) => props.spacing};\r\n margin-right: ${(props) => props.spacing};\r\n }\r\n > :last-child {\r\n margin-left: ${(props) => props.spacing};\r\n }\r\n > :first-child {\r\n margin-right: ${(props) => props.spacing};\r\n }\r\n`;\r\n\r\nexport const HStackFilterItem = styled(HStack)`\r\n\talign-items: baseline;\r\n\tmargin-bottom: 10px;\r\n\t& :hover {\r\n\t\tbackground-color: rgba(255,255,255,0.1);\r\n\t\tcursor: pointer;\r\n\t}\r\n`;\r\n\r\nexport const VStack = styled(Stack)`\r\n flex-direction: column;\r\n > :not(:first-child, :last-child) {\r\n margin-top: ${(props) => props.spacing};\r\n margin-bottom: ${(props) => props.spacing};\r\n }\r\n > :last-child {\r\n margin-top: ${(props) => props.spacing};\r\n }\r\n > :first-child {\r\n margin-bottom: ${(props) => props.spacing};\r\n }\r\n`;\r\n","import { Variant } from '.';\r\nimport styled, { css } from 'styled-components/macro';\r\nimport { VStack } from '../Stack';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\ninterface Props {\r\n variant?: Variant;\r\n}\r\n\r\nexport const Wrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 20px;\r\n ${(p) =>\r\n p.variant === 'Highlight' &&\r\n css`\r\n background-color: ${(p) => (window as any).Widget?.ID ? \"#F5F5F5\" : p.theme.color.aquaLight};\r\n\t\t\toutline: 1px solid ${(p) => (window as any).Widget?.ID ? \"#CCC\" : \"transparent\"};\r\n `}\r\n ${(p) =>\r\n p.variant === 'Shadow' &&\r\n css`\r\n box-shadow: 3px 3px 30px 0px #c2c3d0;\r\n `};\r\n ${(p) =>\r\n p.variant === 'Plain' &&\r\n css`\r\n background-color: ${(p) => p.theme.color.white};\r\n `}\r\n`;\r\n\r\nexport const Header = styled.div`\r\n border-bottom: ${(p) => css`3px solid ${p.theme.color.aquaDark}`};\r\n margin-bottom: 10px;\r\n`;\r\n\r\nexport const Title = styled.h2`\r\n margin-block: 7px;\r\n`;\r\n\r\nexport const Icon = styled.img`\r\n width: 50px;\r\n height: 50px;\r\n`;\r\n\r\nexport const MobileHeader = styled.div`\r\n display: flex;\r\n flex-wrap: wrap;\r\n padding: 7px 10px;\r\n cursor: pointer;\r\n ${(p) =>\r\n p.variant === 'Highlight' &&\r\n css`\r\n background-color: ${(p) => p.theme.color.aquaLight};\r\n `}\r\n`;\r\n\r\nexport const MobileBorder = styled.div`\r\n border-bottom: ${(p) => css`1px solid ${p.theme.color.aquaDark}`};\r\n margin-top: 10px;\r\n width: 100%;\r\n\r\n ${VStack}:last-child ${MobileHeader}:last-child & {\r\n border-bottom: none;\r\n }\r\n`;\r\n\r\nexport const MobileIcon = styled(Icon)`\r\n margin-right: 10px;\r\n`;\r\n\r\nexport const MobileText = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1;\r\n`;\r\n\r\nexport const MobilePanel = styled.div`\r\n position: fixed;\r\n width: 100%;\r\n height: 100%;\r\n top: 0;\r\n z-index: 1;\r\n overflow-y: scroll;\r\n background-color: ${(p) =>\r\n p.variant === 'Highlight'\r\n ? p.theme.color.aquaLight\r\n : p.theme.color.white};\r\n`;\r\n\r\nexport const MobilePanelHeader = styled.div`\r\n display: flex;\r\n background-color: ${(p) => p.theme.color.blueDark};\r\n padding: 10px;\r\n align-items: center;\r\n cursor: pointer;\r\n`;\r\n\r\nexport const MobilePanelTitle = styled.div`\r\n margin-left: 10px;\r\n color: ${(p) => p.theme.color.aquaDark};\r\n font-size: ${(p) => p.theme.fontSize.lg};\r\n font-weight: 700;\r\n`;\r\n\r\nexport const MobilePanelContent = styled.div`\r\n padding: 10px;\r\n`;\r\n\r\nexport const HeaderWithNote = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n border-bottom: ${(p) => css`3px solid ${widgetGetColor(\"SiteHeader\", false, p.theme.color.aquaDark)}`};\r\n margin-bottom: 10px;\r\n\r\n\t& h2 {\r\n\t\tmargin: 0;\r\n\t}\r\n\r\n\t& img {\r\n\t\twidth: 50px;\r\n\t\theight: 50px;\r\n\t\tmargin: 0 10px 10px 0;\r\n\t}\r\n`;\r\n\r\nexport const HeaderWithNoteContent = styled.div`\r\n\tflex: 1 1 auto;\r\n`;\r\n\r\nexport const HeaderNote = styled.div`\r\n\tfont-size: 90%;\r\n\tfont-style: italic;\r\n`;","import React, { ReactNode, useState } from 'react';\r\nimport { faAngleRight, faAngleLeft } from '@fortawesome/free-solid-svg-icons';\r\nimport { theme } from '../../shared/theme';\r\nimport { useMediaQuery } from '../../hooks';\r\nimport {\r\n Wrapper,\r\n Icon,\r\n\tHeaderWithNote,\r\n\tHeaderWithNoteContent,\r\n\tHeaderNote,\r\n Title,\r\n MobileIcon,\r\n MobileText,\r\n MobileHeader,\r\n MobilePanel,\r\n MobilePanelHeader,\r\n MobilePanelTitle,\r\n MobilePanelContent,\r\n MobileBorder,\r\n} from './styles';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\n\r\nexport type Variant = 'Highlight' | 'Shadow' | 'Plain';\r\n\r\nexport interface Props {\r\n icon: string;\r\n title: string;\r\n children: ReactNode;\r\n\tvariant?: Variant;\r\n\tdescription?: string;\r\n}\r\n\r\nexport default function PageSection({ icon, title, variant, children, description }: Props) {\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n const [panelIsClosed, setPanelIsClosed] = useState(true);\r\n\r\n function openOrClosePanel() {\r\n setPanelIsClosed(!panelIsClosed);\r\n }\r\n\r\n if (isMobile) {\r\n if (panelIsClosed) {\r\n return (\r\n \r\n \r\n \r\n
{title}
\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n return (\r\n \r\n \r\n \r\n {title}\r\n \r\n {children}\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{title}\r\n\t\t\t\t\t{description && {description}}\r\n\t\t\t\t\r\n\t\t\t\r\n {children}\r\n \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-credentials-white-green-01.ca4e49d7.svg\";","export default __webpack_public_path__ + \"static/media/icon-about-blue-green-01.ff9a2450.svg\";","import styled from 'styled-components/macro';\r\n\r\nexport const Wrapper = styled.article``;\r\n\r\n//\r\n// -- Header --\r\n//\r\nexport const GraphHeader = styled.header`\r\n margin-bottom: 3rem;\r\n`;\r\n\r\nexport const GraphTitle = styled.h2`\r\n margin: 0;\r\n`;\r\n\r\nexport const GraphCounter = styled.div`\r\n color: ${(p) => p.theme.color.brown};\r\n font-size: 5rem;\r\n font-weight: 700;\r\n line-height: 1;\r\n margin-bottom: 1rem;\r\n`;\r\n\r\nexport const HeaderTitle = styled.h3`\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n line-height: 1.125;\r\n margin: 0;\r\n`;\r\n\r\nexport const HeaderContent = styled.div``;\r\n\r\n//\r\n// -- Body/Main --\r\n//\r\nexport const GraphMain = styled.div`\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n display: grid;\r\n grid-gap: 30px;\r\n grid-template-columns: 350px 1fr;\r\n }\r\n`;\r\n\r\n//\r\n// -- Filters --\r\n//\r\nexport const Filters = styled.ul`\r\n border-top: 1px solid ${(p) => p.theme.color.greyLight};\r\n margin: 0;\r\n padding: 0;\r\n`;\r\n\r\nexport const FilterItem = styled.li`\r\n border-bottom: 1px solid ${(p) => p.theme.color.greyLight};\r\n line-height: 1;\r\n list-style: none outside none;\r\n margin: 0;\r\n`;\r\n\r\nexport const FilterButton = styled.button`\r\n background: transparent;\r\n border: 0 none;\r\n box-shadow: none;\r\n margin: 0;\r\n padding: 0.4rem 1rem;\r\n text-align: left;\r\n width: 100%;\r\n\r\n &.active,\r\n &:hover {\r\n background: linear-gradient(\r\n 90deg,\r\n ${(p) => p.theme.color.aquaDark} 4px,\r\n transparent 4px\r\n );\r\n }\r\n\r\n &.active {\r\n font-weight: 700;\r\n }\r\n`;\r\n\r\n//\r\n// -- Footer --\r\n//\r\nexport const GraphFooter = styled.footer`\r\n margin-top: 3rem;\r\n`;\r\n\r\nexport const FooterCounter = styled.div`\r\n font-size: ${(props) => props.theme.fontSize.xxl};\r\n font-weight: 700;\r\n line-height: 1.1667;\r\n`;\r\n\r\nexport const FooterTitle = styled.h3`\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n line-height: 1.125;\r\n margin: 0;\r\n`;\r\n\r\nexport const FooterContent = styled.div``;\r\n","import React from 'react';\r\nimport {\r\n FilterButton,\r\n FilterItem,\r\n Filters,\r\n FooterContent,\r\n FooterCounter,\r\n FooterTitle,\r\n GraphCounter,\r\n GraphFooter,\r\n GraphHeader,\r\n GraphMain,\r\n GraphTitle,\r\n HeaderContent,\r\n HeaderTitle,\r\n Wrapper,\r\n} from './styles';\r\n\r\ninterface Props {\r\n id: string;\r\n title: string;\r\n titleCounter: number;\r\n headerTitle: string;\r\n headerContent: string;\r\n footerTitle?: string;\r\n footerContent?: string;\r\n footerCounter?: number;\r\n filters: { label: string; action: string }[];\r\n}\r\n\r\nfunction Stats(props: Props) {\r\n return (\r\n \r\n \r\n {props.title}\r\n {props.titleCounter}\r\n {props.headerTitle}\r\n {props.headerContent}\r\n \r\n \r\n \r\n {props.filters.map((filter, index) => {\r\n return (\r\n \r\n console.log(filter.action)}>\r\n {filter.label}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n The dynamic graphic goes here.\r\n
\r\n It will be implemented later, when we have a better idea\r\n about the API and library to use.\r\n
\r\n
\r\n {(props.footerContent ||\r\n props.footerTitle ||\r\n props.footerContent) && (\r\n \r\n {props.footerCounter && (\r\n {props.footerCounter}\r\n )}\r\n {props.footerTitle && (\r\n {props.footerTitle}\r\n )}\r\n {props.footerContent && (\r\n {props.footerContent}\r\n )}\r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\nexport default Stats;\r\n","import React from 'react';\r\nimport styled, { keyframes } from 'styled-components/macro';\r\nimport {\r\n FontAwesomeIcon,\r\n FontAwesomeIconProps,\r\n} from '@fortawesome/react-fontawesome';\r\nimport { faSpinner } from '@fortawesome/free-solid-svg-icons';\r\nimport { theme } from '../../shared/theme';\r\n\r\nconst rotate = keyframes`\r\n from {\r\n transform: rotate(0deg);\r\n }\r\n\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n`;\r\n\r\nconst Spinner = styled.div`\r\n display: inline-block;\r\n animation: ${rotate} 2s linear infinite;\r\n`;\r\n\r\ninterface Props {\r\n size?: FontAwesomeIconProps['size'];\r\n color?: FontAwesomeIconProps['color'];\r\n}\r\n\r\nexport default function ActivityIndicator({ size, color }: Props) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\n\r\nimport {\r\n Hero,\r\n TextField,\r\n Button,\r\n ContentDelimiter,\r\n} from '../../components/common';\r\nimport Dropdown from '../../components/Dropdown';\r\nimport Pill from '../../components/Pill';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faListAlt, faClock } from '@fortawesome/free-regular-svg-icons';\r\nimport {\r\n faAngleDown,\r\n faAngleRight,\r\n faPlus,\r\n faTimes,\r\n faLocationArrow,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport Banner from '../../components/Banner';\r\nimport PageSection from '../../components/PageSection';\r\nimport credIcon from '../../assets/images/icons/icon-credentials-white-green-01.svg';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport assessmentIcon from '../../assets/images/icons/icon-assessments-green-blue-01.svg';\r\nimport Stats from '../../components/Stats';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport { useGet } from '../../hooks';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport LoadingButton from '../../components/LoadingButton';\r\nimport ErrorButton from '../../components/ErrorButton';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { Organization } from '../../types/external';\r\n\r\nconst Grid = styled.div`\r\n display: grid;\r\n grid-gap: 30px;\r\n grid-template-columns: repeat(4, 1fr);\r\n\r\n .cell {\r\n align-items: center;\r\n background-color: #f7f7f7;\r\n display: flex;\r\n justify-content: center;\r\n min-height: 200px;\r\n min-width: 200px;\r\n padding: 20px;\r\n }\r\n`;\r\n\r\nconst searchTeaserFooter = [\r\n {\r\n content: '1 instructional Program',\r\n leftIcon: faListAlt,\r\n },\r\n {\r\n content: '2 Learning Delivery Types',\r\n leftIcon: faLocationArrow,\r\n },\r\n {\r\n content: 'Time Estimate',\r\n leftIcon: faClock,\r\n },\r\n];\r\n\r\nfunction TestPage() {\r\n const [modalDataIsLoading, modalDataHasError, getModalData] = useGet();\r\n const [modal, setModal] = useState();\r\n const [modalUrl, setModalUrl] = useState();\r\n const [modalIsOpen, setModalIsOpen] = useState(false);\r\n const modalErrorUrl = `${apiUrl}/organization/error-url`;\r\n const modalValidUrl = `${apiUrl}/organization/2`;\r\n\r\n function onOpenModalClick(url: string) {\r\n return () => {\r\n setModalUrl(url);\r\n if (url === modalUrl) {\r\n setModalIsOpen(true);\r\n } else {\r\n getModalData(url, (data: any) => {\r\n\t\t\t\t\tsetModal(data);\r\n setModalIsOpen(true);\r\n });\r\n }\r\n };\r\n }\r\n\r\n function closeModal() {\r\n setModalIsOpen(false);\r\n }\r\n\r\n function modalIsLoadingFor(url: string) {\r\n return url === modalUrl && modalDataIsLoading;\r\n }\r\n\r\n function modalHasErrorFor(url: string) {\r\n return url === modalUrl && modalDataHasError;\r\n }\r\n\r\n return (\r\n
\r\n \r\n

Test Page

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

Banner

\r\n
\r\n
\r\n\r\n Text goes here
}\r\n otherContent={\r\n \r\n }\r\n />\r\n\r\n \r\n
\r\n

Typography

\r\n
\r\n
\r\n \r\n
\r\n Show mangled quartz flip vibe exactly\r\n
\r\n
\r\n \r\n
\r\n Pack my box with five dozen quality jugs\r\n
\r\n
\r\n \r\n
\r\n

Pack my box with five dozen quality jugs

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

\r\n The wizard quickly jinxed the gnomes before they\r\n vaporized\r\n

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

Show mangled quartz flip vibe exactly

\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Grumpy wizards make a toxic brew for the jovial\r\n queen\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Fix problem quickly with galvanized jets\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n The wizard quickly jinxed the gnomes before they\r\n vaporized\r\n \r\n
\r\n This style will get implemented once the \"Pill\"\r\n component is built\r\n
\r\n
\r\n
\r\n \r\n
\r\n Quick fox jumps nightly above wizard\r\n
\r\n
\r\n\r\n
\r\n

Fields / Dropdowns

\r\n
\r\n \r\n
\r\n \r\n
\r\n\t\t\t\t\t\t\t\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

Buttons

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

Pills

\r\n
\r\n \r\n
\r\n \r\n
\r\n 1 Organization Sector Type\r\n }\r\n leftIcon={\r\n \r\n }\r\n rightIcon={\r\n \r\n }\r\n rightIconOnActive={\r\n \r\n }\r\n pillType=\"filter\"\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n 1 Organization Sector Type\r\n }\r\n leftIcon={\r\n \r\n }\r\n rightIcon={\r\n \r\n }\r\n rightIconOnActive={\r\n \r\n }\r\n pillType=\"filter-button\"\r\n />\r\n
\r\n
\r\n
\r\n\r\n
\r\n

Page Section

\r\n
\r\n
\r\n \r\n
Content goes here
\r\n \r\n \r\n
Content goes here
\r\n \r\n
\r\n\r\n
\r\n

Stats

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

Activity Indicator

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

Search Teaser

\r\n {/* (\r\n {link.content}}\r\n leftIcon={\r\n \r\n }\r\n rightIcon={\r\n \r\n }\r\n rightIconOnActive={\r\n \r\n }\r\n pillType=\"filter-button\"\r\n />\r\n ))}\r\n /> */}\r\n\r\n
\r\n
\r\n

Modal

\r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default TestPage;\r\n","import styled from 'styled-components/macro';\r\nimport { Button } from '../common';\r\nimport { Header as DropdownHeader } from '../Dropdown/styles';\r\nimport { HStack, VStack } from '../Stack';\r\n\r\nexport const StyledSearchBar = styled(HStack)`\r\n justify-content: space-between;\r\n align-items: flex-end;\r\n flex-wrap: wrap;\r\n\r\n > * {\r\n margin-bottom: 10px;\r\n }\r\n`;\r\n\r\nexport const MobileStyledSearchBar = styled(VStack)``;\r\n\r\nexport const Section = styled(VStack)<{ minWidth?: number }>`\r\n ${(props) => props.minWidth && `min-width: ${props.minWidth}px`}\r\n`;\r\n\r\nexport const LocationSection = styled(Section)`\r\n flex: 0;\r\n min-width: 175px;\r\n`;\r\n\r\nexport const SectionTitle = styled.h2`\r\n padding: 0;\r\n margin: 0;\r\n`;\r\n\r\nexport const SearchButton = styled(Button)`\r\n min-width: 80px;\r\n padding: 0.65em 5px;\r\n`;\r\n\r\nexport const MobileSearchText = styled.p`\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n margin: 0;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const MobileSearchIconButton = styled(Button)`\r\n padding: 5px;\r\n min-width: 40px;\r\n`;\r\n\r\nexport const ClearButton = styled(Button)`\r\n\tborder: none;\r\n\tborder-radius: 3px;\r\n\theight: 40px;\r\n\twidth: 40px;\r\n\tmin-width: 0;\r\n\tpadding: 0;\r\n`;","import {\r\n MainSearchType,\r\n} from '../types/internal';\r\nimport {\r\n\tAssessment,\r\n\tCredential,\r\n\tLearningOpportunity,\r\n Organization,\r\n Pathway,\r\n PathwaySet,\r\n DataSetProfile, \r\n ProgressionModel,\r\n ScheduledOffering,\r\n SupportService,\r\n Occupation,\r\n Job,\r\n WorkRole,\r\n Task,\r\n\tTransferValue,\r\n\tTransferIntermediary,\r\n\tFilterItem,\r\n CredentialingAction,\r\n Rubric,\r\n Metric,\r\n Industry\r\n} from '../types/external';\r\nimport { decode } from 'html-entities';\r\n\r\nexport function isCheckboxFilter(item: any) {\r\n return (\r\n item.InterfaceType === 'filterType:CheckBox' ||\r\n item.InterfaceType === 'interfaceType:CheckBox'\r\n );\r\n}\r\n\r\nexport function isAutocompleteFilter(item: any) {\r\n return item.InterfaceType === 'interfaceType:Autocomplete';\r\n}\r\n\r\nexport function isTextboxFilter(item: any) {\r\n return item.InterfaceType == 'interfaceType:Text';\r\n}\r\n\r\nexport function isOrganization(item: any): item is Organization {\r\n return item.BroadType == 'Organization';\r\n}\r\n\r\nexport function isCredential(item: any): item is Credential {\r\n return item.BroadType == 'Credential';\r\n}\r\n\r\nexport function isLearningOpportunity(item: any): item is LearningOpportunity {\r\n return item.BroadType == 'LearningOpportunity';\r\n}\r\n\r\nexport function isAssessment(item: any): item is Assessment {\r\n return item.BroadType == 'Assessment';\r\n}\r\nexport function isPathway(item: any): item is Pathway {\r\n return item.BroadType == 'Pathway';\r\n}\r\nexport function isPathwaySet(item: any): item is PathwaySet {\r\n return item.BroadType == 'PathwaySet';\r\n}\r\nexport function isTransferValue(item: any): item is TransferValue {\r\n return item.BroadType == 'TransferValue';\r\n}\r\nexport function isTransferIntermediary(item: any): item is TransferIntermediary {\r\n return item.BroadType == 'TransferIntermediary';\r\n}\r\nexport function isDataSetProfile(item: any): item is DataSetProfile {\r\n return item.BroadType == 'DataSetProfile';\r\n}\r\nexport function isProgressionModel(item: any): item is ProgressionModel {\r\n return item.BroadType == 'ProgressionModel';\r\n}\r\nexport function isScheduledOffering(item: any): item is ScheduledOffering {\r\n return item.BroadType == 'ScheduledOffering';\r\n}\r\nexport function isSupportService(item: any): item is SupportService {\r\n return item.BroadType == 'SupportService';\r\n}\r\nexport function isOccupation(item: any): item is Occupation {\r\n return item.BroadType == 'Occupation';\r\n}\r\nexport function isJob(item: any): item is Job {\r\n return item.BroadType == 'Job';\r\n}\r\nexport function isTask(item: any): item is Task {\r\n return item.BroadType == 'Task';\r\n}\r\nexport function isWorkRole(item: any): item is WorkRole {\r\n return item.BroadType == 'WorkRole';\r\n}\r\nexport function isCredentialingAction(item: any): item is CredentialingAction {\r\n return item.BroadType == 'CredentialingAction';\r\n}\r\nexport function isRubric(item: any): item is Rubric {\r\n return item.BroadType == 'Rubric';\r\n}\r\nexport function isMetric(item: any): item is Metric {\r\n return item.BroadType == 'Metric';\r\n}\r\nexport function isIndustry(item: any): item is Industry {\r\n return item.BroadType == 'Industry';\r\n}\r\nexport function getContextForAutoCompleteSearch(filterURI: string) {\r\n switch (filterURI) {\r\n case 'filter:OccupationType':\r\n return 'occupations';\r\n case 'filter:IndustryType':\r\n return 'industries';\r\n case 'filter:InstructionalProgramType':\r\n return 'instructionalprogramtypes';\r\n case 'filter:Organization':\r\n return 'mainsearch';\r\n default:\r\n return '';\r\n }\r\n}\r\n\r\nexport function getResultsLocationField(searchType: string) {\r\n switch (searchType) {\r\n case 'credential':\r\n case 'assessment':\r\n case 'learningopportunity':\r\n case 'supportservice':\r\n return 'AvailableAt';\r\n case 'organization':\r\n return 'Address';\r\n default:\r\n return '';\r\n }\r\n}\r\n\r\nexport function getMapInfoWindowFromSearchResultsLocations(\r\n searchType: string,\r\n resultItem: any,\r\n) {\r\n switch (searchType) {\r\n case 'credential':\r\n return `\r\n ${resultItem.Name}\r\n `;\r\n case 'organization':\r\n return `\r\n ${resultItem.Name}\r\n `;\r\n default:\r\n return '';\r\n }\r\n}\r\n\r\nexport function delayCallbackExecution(timer: any, fn: any, ms: number) {\r\n clearTimeout(timer);\r\n return setTimeout(fn, ms);\r\n}\r\n\r\nexport type FilterField = 'identifier' | 'Text' | 'Label';\r\n\r\nexport function formatPrice(number: number, currencyHTMLEntity?: string) {\r\n // Add commas see: https://stackoverflow.com/questions/2901102/how-to-print-a-number-with-commas-as-thousands-separators-in-javascript?page=1&tab=votes#tab-top\r\n const numberWithCommas = number\r\n .toFixed(2)\r\n .toString()\r\n .replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\r\n // Decode HTML entity\r\n if (currencyHTMLEntity) {\r\n const decodedCurrency = decode(currencyHTMLEntity);\r\n return `${decodedCurrency}${numberWithCommas}`;\r\n }\r\n return numberWithCommas;\r\n}\r\n\r\nexport function getLinkType(url?: string) {\r\n return url ? (url[0] !== '/' ? 'external' : 'internal') : 'none';\r\n}\r\n\r\nexport const detailSectionProperties = {\r\n organizationAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'MissionAndGoalsStatement',\r\n 'MissionAndGoalsStatementDescription',\r\n 'AgentPurpose',\r\n 'AgentPurposeDescription',\r\n 'AgentType',\r\n 'AlternateName',\r\n 'Connections',\r\n ],\r\n organizationSectors: [\r\n 'AgentSectorType',\r\n 'IndustryType',\r\n 'ServiceType',\r\n 'Keyword',\r\n ],\r\n organizationProcess: [\r\n 'TransferValueStatement',\r\n\t\t'TransferValueStatementDescription',\r\n\t\t'SupportServiceStatement',\r\n 'AdministrationProcess',\r\n 'AppealProcess',\r\n 'ComplaintProcess',\r\n 'DevelopmentProcess',\r\n 'MaintenanceProcess',\r\n 'ReviewProcess',\r\n 'RevocationProcess',\r\n 'HasConditionManifest','HasCostManifest',\r\n 'HasVerificationService'\r\n ],\r\n organizationProcessProfiles: [\r\n 'AdministrationProcess',\r\n 'AppealProcess',\r\n 'ComplaintProcess',\r\n 'DevelopmentProcess',\r\n 'MaintenanceProcess',\r\n 'ReviewProcess',\r\n 'RevocationProcess',\r\n ],\r\n organizationManifests: [\r\n 'HasConditionManifest','HasCostManifest'\r\n ],\r\n credentialAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'AvailableOnlineAt',\r\n 'CredentialType ',\r\n 'CredentialStatusType',\r\n 'AudienceType',\r\n 'AudienceLevelType',\r\n 'LearningDeliveryType',\r\n 'AssessmentDeliveryType',\r\n ],\r\n credentialAboutConnections: [\r\n 'HasPart',\r\n 'IsPartOf',\r\n 'DegreeConcentration',\r\n 'DegreeMajor',\r\n 'DegreeMinor',\r\n 'AdvancedStandingFrom',\r\n 'IsAdvancedStandingFor',\r\n 'IsPreparationFor',\r\n 'IsRecommendedFor',\r\n 'IsRequiredFor',\r\n 'PreparationFrom',\r\n 'AssessesCompetencies',\r\n 'TeachesCompetencies',\r\n 'RequiresCompetencies',\r\n 'HasTransferValue',\r\n 'ProvidesTransferValueFor',\r\n 'ReceivesTransferValueFrom'\r\n ],\r\n credentialCostAndTime: [\r\n 'EstimatedCost',\r\n 'AssessmentCost',\r\n 'LearningOpportunityCost',\r\n 'FinancialAssistance',\r\n 'EstimatedDuration',\r\n 'RenewalFrequency',\r\n 'Requires',\r\n 'Recommends',\r\n 'Corequisite',\r\n 'CoPrerequisite',\r\n ],\r\n credentialCostAndTimeRenewal: [\r\n 'Renewal',\r\n //'RenewedBy',\r\n 'RenewedIn',\r\n //'RevokedBy',\r\n 'RevokedIn',\r\n 'Revocation',\r\n ],\r\n credentialRequirements: [\r\n 'Requires',\r\n 'Recommends',\r\n 'Corequisite',\r\n 'CoPrerequisite',\r\n 'EntryCondition','CommonConditions'\r\n ],\r\n entityConnections: [\r\n 'AdvancedStandingFrom',\r\n 'IsAdvancedStandingFor',\r\n 'IsPreparationFor',\r\n 'IsRecommendedFor',\r\n 'IsRequiredFor',\r\n 'PreparationFrom',\r\n 'Collections',\r\n 'TargetPathway',\r\n 'HasTransferValue',\r\n 'HasPart',\r\n 'Prerequisite',\r\n 'SupportServiceCondition',\r\n 'HasWorkRole',\r\n 'HasTask',\r\n 'HasOccupation',\r\n 'HasSupportService',\r\n 'HasJob',\r\n 'HasSpecialization',\r\n 'AbilityEmbodied',\r\n 'SkillEmbodied',\r\n 'KnowledgeEmbodied',\r\n 'PhysicalCapabilityType',\r\n 'PerformanceLevelType',\r\n 'EnvironmentalHazardType',\r\n 'SensoryCapabilityType',\r\n 'Classification',\r\n 'Instrument',\r\n 'Object',\r\n 'TargetCompetency',\r\n 'ProvidesTransferValueFor',\r\n 'ReceivesTransferValueFrom',\r\n 'ObjectOfAction',\r\n \"RelatedAssessment\",\r\n \"RelatedOccupation\",\r\n \"RelatedCredential\",\r\n \"RelatedJob\",\r\n \"RelatedLearningOpp\",\r\n \"HasCriterionCategorySet\",\r\n \"TargetOccupation\",\r\n \"HasRubric\",\r\n \"RelatedTask\",\r\n \"RelatedWorkRole\",\r\n \"RelatedActions\",\r\n \"RelatedDataSetProfiles\"\r\n ],\r\n entityCompetencies: [\r\n 'AssessesCompetencies',\r\n 'RequiresCompetencies',\r\n 'TeachesCompetencies',\r\n ],\r\n credentialConnections: [\r\n 'AssessesCompetencies',\r\n 'RequiresCompetencies'\r\n ],\r\n assessmentConnections: [\r\n 'AssessesCompetencies',\r\n 'RequiresCompetencies',\r\n 'ProvidesTransferValueFor',\r\n 'ReceivesTransferValueFrom'\r\n ],\r\n loppConnections: [\r\n 'TargetAssessment',\r\n 'TargetLearningOpportunity',\r\n 'TeachesCompetencies',\r\n 'RequiresCompetencies',\r\n 'IsPartOf',\r\n 'ProvidesTransferValueFor',\r\n 'ReceivesTransferValueFrom',\r\n 'ObjectOfAction'\r\n ],\r\n credentialProcess: [\r\n 'ProcessStandards', \r\n 'ProcessStandardsDescription', \r\n 'AdministrationProcess',\r\n 'AppealProcess',\r\n 'ComplaintProcess',\r\n 'DevelopmentProcess',\r\n 'MaintenanceProcess',\r\n 'ReviewProcess',\r\n 'RevocationProcess'\r\n ],\r\n credentialProcessProfiles: [\r\n 'AdministrationProcess',\r\n 'AppealProcess',\r\n 'ComplaintProcess',\r\n 'DevelopmentProcess',\r\n 'MaintenanceProcess',\r\n 'ReviewProcess',\r\n 'RevocationProcess'\r\n ],\r\n assessmentAbout: [\r\n 'Description',\r\n 'AvailableOnlineAt',\r\n 'SubjectWebpage',\r\n 'AudienceType',\r\n 'AudienceLevelType',\r\n 'AssessmentMethodType',\r\n 'DeliveryType',\r\n 'DeliveryTypeDescription',\r\n 'AssessmentUseType',\r\n\t\t'CreditValue',\r\n 'CreditUnitTypeDescription',\r\n\t\t'AssessesCompetencies'\r\n ],\r\n assessmentScoringMethod: [\r\n 'ScoringMethodDescription',\r\n 'ScoringMethodExample',\r\n 'ScoringMethodType',\r\n 'IsProctored',\r\n 'HasGroupEvaluation',\r\n 'HasGroupParticipation',\r\n ],\r\n assessmentExample: [\r\n 'AssessmentExampleDescription',\r\n 'AssessmentOutput',\r\n 'AssessmentExample',\r\n ],\r\n assessmentMethod: [\r\n 'AssessmentMethodDescription',\r\n 'AssessmentMethodType',\r\n ],\r\n assessmentProcess: [\r\n 'ExternalResearch',\r\n 'ProcessStandards',\r\n 'AdministrationProcess',\r\n 'DevelopmentProcess',\r\n 'MaintenanceProcess',\r\n ],\r\n assessmentProcessProfiles: [\r\n 'AdministrationProcess',\r\n 'DevelopmentProcess',\r\n 'MaintenanceProcess',\r\n ],\r\n creditValue: [\r\n\t\t'CreditValue',\r\n 'CreditUnitTypeDescription',\r\n ],\r\n deliveryType: [\r\n 'DeliveryType',\r\n 'DeliveryTypeDescription',\r\n ],\r\n loppAbout: [\r\n 'Description',\r\n 'AvailableOnlineAt',\r\n 'SubjectWebpage',\r\n 'AudienceType',\r\n 'AudienceLevelType',\r\n 'AssessmentMethodType',\r\n 'DeliveryType',\r\n 'DeliveryTypeDescription',\r\n 'LearningMethodType',\r\n 'LearningMethodDescription',\r\n\t\t'CreditValue',\r\n 'CreditUnitTypeDescription',\r\n\t\t'TeachesCompetencies'\r\n ],\r\n learningMethodType: [\r\n 'LearningMethodType',\r\n 'LearningMethodDescription',\r\n ],\r\n collectionAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'Connections',\r\n ],\r\n transferValueConnections: [\r\n 'TransferValueFor',\r\n 'TransferValueFrom',\r\n ],\r\n transferValueProcess: [\r\n 'DevelopmentProcess',\r\n ],\r\n transferIntermediaryAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'IntermediaryFor',\r\n 'CreditValue',\r\n 'CreditUnitTypeDescription',\r\n 'Requires'\r\n ],\r\n // Common sections\r\n contact: ['Email', 'SocialMedia'],\r\n additionalInformation: [\r\n 'Meta_LastUpdated',\r\n 'CTID',\r\n 'CredentialId',\r\n 'DUNS',\r\n 'FEIN',\r\n 'OPEID',\r\n 'IPEDSID',\r\n 'ISICV4',\r\n 'LEICode',\r\n 'Identifier',\r\n 'VersionIdentifier',\r\n 'AlternateName',\r\n 'InLanguage',\r\n 'FoundingDate',\r\n 'DateEffective',\r\n 'ExpirationDate',\r\n ],\r\n locations: [\r\n 'AvailabilityListing',\r\n 'Address',\r\n 'AvailableAt',\r\n 'SameAs'\r\n ],\r\n jurisdiction: [\r\n 'Jurisdiction',\r\n 'AccreditedIn',\r\n 'ApprovedIn',\r\n 'OfferedIn',\r\n 'RecognizedIn',\r\n 'RegulatedIn'\r\n ],\r\n qa: [\r\n 'QAReceived',\r\n 'QAPerformed'\r\n ],\r\n jurisdictionAssertions: [\r\n 'AccreditedIn',\r\n 'ApprovedIn',\r\n 'OfferedIn',\r\n 'RecognizedIn',\r\n 'RegulatedIn',\r\n 'RenewedIn',\r\n 'RevokedIn',\r\n ],\r\n subjectsAndKeywords: [\r\n 'Subject',\r\n 'InstructionalProgramType',\r\n 'Keyword',\r\n 'LocalSubject',\r\n 'ConceptTerm',\r\n 'ConceptKeyword'\r\n ],\r\n relatedOrganizations: [\r\n 'OwnedBy',\r\n 'OwnedOfferedBy',\r\n 'OfferedBy',\r\n 'RenewedBy',\r\n 'CopyrightHolder',\r\n 'Creator',\r\n 'Publisher',\r\n 'RightsHolder',\r\n 'DataProviderMain',\r\n \"AssertedBy\",\r\n \"ActingAgent\",\r\n \"Particpant\"\r\n ],\r\n occupationsAndIndustries: [\r\n 'OccupationType',\r\n 'IndustryType'\r\n ],\r\n costAndTime: [\r\n 'EstimatedCost',\r\n 'FinancialAssistance',\r\n 'EstimatedDuration'\r\n ],\r\n dataSetProfileAbout: [\r\n 'Description',\r\n 'Source'\r\n ],\r\n scheduledOfferingAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'AlternateName',\r\n ],\r\n supportServiceAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'AlternateName',\r\n ],\r\n occupationAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'AlternateName',\r\n ],\r\n pathwayComponentAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'AlternateName',\r\n ],\r\n workClassRequirements: [\r\n 'Requires' ],\r\n MetricAbout: [\r\n 'Description',\r\n 'SubjectWebpage',\r\n 'AlternateName',\r\n 'IncomeDeterminationType',\r\n 'EmploymentDefinition',\r\n 'EarningsDefinition',\r\n 'EarningsThreshold',\r\n 'Adjustment'\r\n ],\r\n dataSetProfileProcess: [\r\n 'AdministrationProcess',\r\n 'DevelopmentProcess',\r\n 'MaintenanceProcess',\r\n 'ReviewProcess'\r\n ],\r\n \r\n};\r\n","import styled from 'styled-components/macro';\r\n\r\nexport const Wrapper = styled.div`\r\n position: relative;\r\n width: 100%;\r\n`;\r\n\r\nexport const Suggestions = styled.div`\r\n position: absolute;\r\n top: 100%;\r\n width: 100%;\r\n z-index: 10;\r\n`;\r\n\r\nexport const Suggestion = styled.button`\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n background-color: ${(props) => props.theme.color.white};\r\n display: block;\r\n text-align: left;\r\n width: 100%;\r\n padding: 10px;\r\n border: 1px solid ${(props) => props.theme.color.greyLight};\r\n &:hover {\r\n background-color: ${(props) => props.theme.color.greyLight};\r\n }\r\n`;\r\n\r\nexport const SuggestionWrapper = styled.div``;\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport { delayCallbackExecution } from '../../utils';\r\nimport { TextField } from '../common';\r\nimport { Wrapper, Suggestions, Suggestion, SuggestionWrapper } from './styles';\r\n\r\ninterface Props {\r\n placeholder?: string;\r\n value: string;\r\n onChange?: (value: string) => any[] | Promise;\r\n getOptionLabel?: (option: any) => string;\r\n onSelect?: (option: any) => void;\r\n renderOption?: (option: any) => React.ReactNode;\r\n\tnotCloseOnSelect?: boolean;\r\n\taddItemHandler?: (searchText?: string, setSearchText?: React.Dispatch>, suggestions?: any[], onSelect?: any) => void;\r\n\tfieldName?: string;\r\n}\r\n\r\nexport default function AutoCompletionTextField(props: Props) {\r\n const [suggestions, setSuggestions] = useState([]);\r\n const [expanded, setExpanded] = useState(false);\r\n const [searchText, setSearchText] = useState(props.value || '');\r\n const ref = useRef(null);\r\n\tconst [timer, setTimer] = useState(0);\r\n\r\n async function onSearchTextChange(value: string) {\r\n // TODO: set a flag to avoid 1 redundant props.onChange\r\n const data = props.onChange ? await props.onChange(value) : [];\r\n if (data.length >= 15) {\r\n const newSuggestions = data.slice(0, 15);\r\n setSuggestions(newSuggestions);\r\n } else {\r\n setSuggestions(data);\r\n }\r\n setExpanded(true);\r\n }\r\n\r\n function onChange(event: React.ChangeEvent) {\r\n const newValue = event.target.value;\r\n setSearchText(newValue);\r\n setTimer(\r\n delayCallbackExecution(\r\n timer,\r\n () => onSearchTextChange(newValue),\r\n 500,\r\n ),\r\n );\r\n }\r\n\r\n function onSelect(option: any) {\r\n if (!props.notCloseOnSelect) {\r\n setExpanded(false);\r\n }\r\n props.onSelect && props.onSelect(option);\r\n }\r\n\r\n function getOptionLabel(option: any) {\r\n if (typeof option === 'string') {\r\n return option;\r\n } else {\r\n return props.getOptionLabel ? props.getOptionLabel(option) : '';\r\n }\r\n }\r\n\r\n\tfunction handleEnter(event: any) {\r\n\t\tif (props.addItemHandler && (event.which == 13 || event.keyCode == 13)) {\r\n\t\t\tprops.addItemHandler(searchText, setSearchText, suggestions, onSelect);\r\n\t\t\tsetExpanded(false);\r\n\t\t}\r\n\t}\r\n\r\n const handleClickOutside = (event: any) => {\r\n if (ref.current && !ref.current.contains(event.target)) {\r\n setExpanded(false);\r\n }\r\n };\r\n\r\n const handleBlur = (event: any) => {\r\n if (ref.current && !ref.current.contains(event.relatedTarget)) {\r\n setExpanded(false);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n setSearchText(props.value);\r\n }, [props.value]);\r\n\r\n useEffect(() => {\r\n document.addEventListener('click', handleClickOutside, true);\r\n return () => {\r\n document.removeEventListener('click', handleClickOutside, true);\r\n };\r\n });\r\n\r\n return (\r\n \r\n \r\n \r\n {expanded && (\r\n \r\n {suggestions.map((option, index) =>\r\n props.renderOption ? (\r\n onSelect(option)}>\r\n {props.renderOption(option)}\r\n \r\n ) : (\r\n onSelect(option)}>\r\n {getOptionLabel(option)}\r\n \r\n ),\r\n )}\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-credentials-blue-green-01.9ba19430.svg\";","export default __webpack_public_path__ + \"static/media/icon-organization-blue-green-01.37f824ec.svg\";","export default __webpack_public_path__ + \"static/media/icon-assessments-blue-green-01.4cd40676.svg\";","export default __webpack_public_path__ + \"static/media/CE-Icon_3-Learning-Opportunity_Blue-Green_High-Res.4ee8a5c9.png\";","export default __webpack_public_path__ + \"static/media/icon-competencies-blue-green-01.57b25d02.svg\";","export default __webpack_public_path__ + \"static/media/icon-pathways-blue-green-01.3484e979.svg\";","export default __webpack_public_path__ + \"static/media/icon-transfer-value-blue-green-01.3bdcd76c.svg\";","export default __webpack_public_path__ + \"static/media/CE-Icon_10-Support_Blue-Green_High-Res.ecbca2ca.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_12-Industries_Blue-Green_High-Res.bbcb4f7c.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_13-Jobs_Blue-Green_High-Res.deb6681e.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_11-Occupations_Blue-Green_High-Res.46fa5d43.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_14-Work-Roles_Blue-Green_High-Res.d7e8ee52.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_20-QA-Actions_Blue-Green_High-Res.91b18f1c.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_21-Rubrics_Blue-Green_High-Res.81b89ac1.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_22-Metrics_Blue-Green_High-Res.248ee020.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_8-Outcome-Data_Blue-Green_High-Res.f4475f38.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_6-Collection_Blue-Green_High-Res.38c9f81a.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_15-Tasks_Blue-Green_High-Res.5c6bb1f1.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_17-Transfer-Intermediary_Blue-Green_High-Res.7ec09bfc.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_19-Progression-Model_Blue-Green_High-Res.b6b02146.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_18-Concept-Scheme_Blue-Green_High-Res.a5ea83a3.png\";","import { MainSearchOption } from '../types/internal';\r\nimport { MainQueryType } from '../types/external';\r\nimport { configName } from './globals';\r\nimport credentialIcon from '../assets/images/icons/icon-credentials-blue-green-01.svg';\r\nimport organizationIcon from '../assets/images/icons/icon-organization-blue-green-01.svg';\r\nimport assessmentIcon from '../assets/images/icons/icon-assessments-blue-green-01.svg';\r\nimport courseIcon from '../assets/images/UpdatedIcons/CE-Icon_3-Course_Blue-Green_High-Res.png';\r\nimport learningopportunityIcon from '../assets/images/UpdatedIcons/CE-Icon_3-Learning-Opportunity_Blue-Green_High-Res.png';\r\nimport learningprogramIcon from '../assets/images/UpdatedIcons/CE-Icon_3-Learning-Program_Blue-Green_High-Res.png';\r\nimport competencyframeworkIcon from '../assets/images/icons/icon-competencies-blue-green-01.svg';\r\nimport pathwayIcon from '../assets/images/icons/icon-pathways-blue-green-01.svg';\r\nimport pathwaySetIcon from '../assets/images/icons/icon-pathways-blue-green-01.svg';\r\nimport transfervalueIcon from '../assets/images/icons/icon-transfer-value-blue-green-01.svg';\r\n\r\nimport supportServiceIcon from '../assets/images/UpdatedIcons/CE-Icon_10-Support_Blue-Green_High-Res.png';\r\nimport scheduledOfferingIcon from '../assets/images/UpdatedIcons/CE-Icon_9-Scheduled-Offering_Blue-Green_High-Res.png';\r\nimport industryIcon from '../assets/images/UpdatedIcons/CE-Icon_12-Industries_Blue-Green_High-Res.png';\r\nimport jobIcon from '../assets/images/UpdatedIcons/CE-Icon_13-Jobs_Blue-Green_High-Res.png';\r\nimport occupationIcon from '../assets/images/UpdatedIcons/CE-Icon_11-Occupations_Blue-Green_High-Res.png';\r\nimport workRoleIcon from '../assets/images/UpdatedIcons/CE-Icon_14-Work-Roles_Blue-Green_High-Res.png';\r\nimport qaActionsIcon from '../assets/images/UpdatedIcons/CE-Icon_20-QA-Actions_Blue-Green_High-Res.png';\r\nimport rubricsIcon from '../assets/images/UpdatedIcons/CE-Icon_21-Rubrics_Blue-Green_High-Res.png';\r\nimport metricIcon from '../assets/images/UpdatedIcons/CE-Icon_22-Metrics_Blue-Green_High-Res.png';\r\nimport outcomeDataIcon from '../assets/images/UpdatedIcons/CE-Icon_8-Outcome-Data_Blue-Green_High-Res.png';\r\nimport collectionIcon from '../assets/images/UpdatedIcons/CE-Icon_6-Collection_Blue-Green_High-Res.png';\r\nimport taskIcon from '../assets/images/UpdatedIcons/CE-Icon_15-Tasks_Blue-Green_High-Res.png';\r\nimport transferIntermediaryIcon from '../assets/images/UpdatedIcons/CE-Icon_17-Transfer-Intermediary_Blue-Green_High-Res.png';\r\nimport progressionModelIcon from '../assets/images/UpdatedIcons/CE-Icon_19-Progression-Model_Blue-Green_High-Res.png';\r\nimport conceptSchemeIcon from '../assets/images/UpdatedIcons/CE-Icon_18-Concept-Scheme_Blue-Green_High-Res.png';\r\n\r\nexport const resultDisplayOptions = [\r\n { key: 'showAll', value: 'Show All' },\r\n { key: 'showDescription', value: 'Show Descriptions' },\r\n { key: 'showButton', value: 'Show Buttons' },\r\n];\r\n\r\nexport const sortOptions = [\r\n { key: 'sortOrder:MostRelevant', value: 'Sort by Relevance' },\r\n { key: 'sortOrder:Newest', value: 'Sort by Most Recent' },\r\n { key: 'sortOrder:Oldest', value: 'Sort by Least Recent' },\r\n { key: 'sortOrder:AtoZ', value: 'Sort by A-Z' },\r\n { key: 'sortOrder:ZtoA', value: 'Sort by Z-A' },\r\n];\r\n\r\nexport const mainSearchTypeOptions: MainSearchOption[] = [\r\n { key: 'credential', value: 'Credentials', icon: credentialIcon },\r\n\t{ key: 'organization', value: 'Organizations', icon: organizationIcon },\r\n\t{ key: 'assessment', value: 'Assessments', icon: assessmentIcon },\r\n\t{ key: 'learningopportunity', value: 'Learning Opportunities', icon: learningopportunityIcon },\r\n\t{ key: 'competencyframework', value: 'Competency Frameworks', icon: competencyframeworkIcon },\r\n\t{ key: 'collection', value: \"Collections\", icon: collectionIcon },\r\n\t{ key: 'pathway', value: 'Pathways', icon: pathwayIcon },\r\n\t{ key: 'outcomedata', value: 'Outcome Data', icon: outcomeDataIcon },\r\n { key: 'supportservice', value: 'Support Services', icon: supportServiceIcon },\r\n { key: 'job', value: 'Jobs', icon: jobIcon },\r\n { key: 'occupation', value: 'Occupations', icon: occupationIcon },\r\n { key: 'credentialingaction', value: 'Quality Assurance Actions', icon: qaActionsIcon },\r\n { key: 'rubric', value: 'Rubrics', icon: rubricsIcon },\r\n { key: 'transfervalue', value: 'Transfer Values', icon: transfervalueIcon },\r\n { key: 'transferintermediary', value: 'Transfer Intermediaries', icon: transferIntermediaryIcon },\r\n { key: 'conceptscheme', value: 'Concept Schemes', icon: conceptSchemeIcon },\r\n\t{ key: 'progressionmodel', value: 'Progression Models', icon: progressionModelIcon },\r\n\t{ key: 'workrole', value: 'Work Roles', icon: workRoleIcon },\r\n { key: 'task', value: 'Tasks', icon: taskIcon },\r\n { key: 'industry', value: 'Industries', icon: industryIcon },\r\n { key: 'metric', value: 'Metrics', icon: metricIcon },\r\n\r\n\r\n /* { key: 'pathwayset', value: 'Pathway Sets', icon: pathwaySetIcon }*/\r\n];\r\n\r\nexport const mapLocationSearchOption = [\r\n { key: 'positionType:In', value: 'In' },\r\n\t{ key: 'positionType:Near_25', value: 'Near (25 miles)' },\r\n\t{ key: 'positionType:Near_50', value: 'Near (50 miles)' },\r\n\t{ key: 'positionType:Near_100', value: 'Near (100 miles)' },\r\n];\r\n\r\nexport const defaultQuery: MainQueryType = {\r\n SearchType: 'credential',\r\n Keywords: '',\r\n MapFilter: {\r\n PositionType: 'positionType:In',\r\n },\r\n PageSize: 20,\r\n SkipPages: 0,\r\n SortOrder: 'sortOrder:MostRelevant',\r\n MainFilters: [],\r\n};\r\n\r\nexport const defaultMapSetting = {\r\n center: { lat: 39.8283, lng: -98.5795 },\r\n zoom: 4,\r\n};\r\n\r\nexport const statDataLabel: { [key: string]: string } = {\r\n Organization: 'Organizations',\r\n Credential: 'Credentials',\r\n Assessment: 'Assessments',\r\n LearningOpportunity: 'Learning Opportunities',\r\n CompetencyFramework: 'Competency Frameworks',\r\n Pathway: 'Pathways',\r\n ScheduledOffering: 'Scheduled Offerings',\r\n SupportService: 'Support Services',\r\n OutcomeData: 'Outcome Data',\r\n ProgressionModel: 'Progression Models',\r\n Industry: 'Industries',\r\n Job: 'Jobs',\r\n Occupation: 'Occupations',\r\n\tWorkRole: 'Work Roles',\r\n\tTask: \"Tasks\",\r\n TransferValue: 'Transfer Values',\r\n TransferIntermediary: 'Transfer Intermediaries',\r\n PathwaySet: 'Pathway Sets',\r\n CredentialingAction: 'Quality Assurance Actions',\r\n Rubric: 'Rubrics',\r\n Metric: 'Metrics'\r\n};\r\n","import { Filter, MainQueryType } from '../types/external';\r\n\r\nexport function constructSearchQuery(\r\n query: MainQueryType,\r\n filters: Filter[],\r\n) {\r\n\treturn query;\r\n // do logic here to return URL + filter object\r\n let queryObject: MainQueryType = {\r\n ...query\r\n\t};\r\n\t/*\r\n // handle MainFilters\r\n Object.keys(query.MainFilters).forEach((key) => {\r\n // merge filter so\r\n const queryFilter = query.MainFilters[key];\r\n const filterWithKey = (filters || []).find((item) => item.Id == key);\r\n let newFilter: Partial = {};\r\n if (filterWithKey) {\r\n newFilter = {\r\n ...filterWithKey,\r\n Items: [],\r\n };\r\n } else {\r\n // this is the case for the search base URL\r\n newFilter = {\r\n Id: key == '-1' ? '' : key,\r\n Items: [],\r\n };\r\n\t\t}\r\n\t\tif ((queryFilter as any).Items) { //Widget code injects this part\r\n\t\t\tnewFilter.Items = (queryFilter as any).Items;\r\n\t\t}\r\n\t\telse {\r\n\t\t\tconst filterItems = queryFilter.filterItems.map((item) => {\r\n\t\t\t\tconst { identifier, parentId, ...rest } = item;\r\n\t\t\t\treturn rest;\r\n\t\t\t});\r\n\t\t\tnewFilter.Items = filterItems;\r\n\t\t}\r\n\r\n\t\tif (queryFilter.parameters) {\r\n\t\t\tnewFilter.Parameters = queryFilter.parameters;\r\n\t\t}\r\n\t\tif ((queryFilter as any).Parameters) { //Widget code injects this part\r\n\t\t\tnewFilter.Parameters = (queryFilter as any).Parameters;\r\n\t\t}\r\n queryObject.MainFilters.push(newFilter);\r\n\t});\r\n\t*/\r\n\r\n return { ...queryObject };\r\n}\r\n","import React, { useContext, useState } from 'react';\r\nimport { faQuestionCircle } from '@fortawesome/free-regular-svg-icons';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport Dropdown from '../Dropdown';\r\nimport { HStack } from '../Stack';\r\nimport { useMediaQuery } from '../../hooks';\r\nimport { theme } from '../../shared/theme';\r\nimport { faSearch } from '@fortawesome/free-solid-svg-icons';\r\nimport {\r\n MobileSearchText,\r\n Section,\r\n SectionTitle,\r\n StyledSearchBar,\r\n MobileSearchIconButton,\r\n LocationSection,\r\n SearchButton,\r\n\tMobileStyledSearchBar,\r\n\tClearButton\r\n} from './styles';\r\nimport AutoCompletionTextField from '../AutoCompletionTextField';\r\nimport { MainSearchOption, MainSearchType } from '../../types/internal';\r\nimport { MainQueryType } from '../../types/external';\r\nimport { configName } from '../../shared/globals';\r\nimport {\r\n defaultQuery,\r\n mainSearchTypeOptions,\r\n mapLocationSearchOption,\r\n} from '../../shared/data';\r\nimport { autocompleteFilterSearchApiUrl, locationBoxSearchApiUrl } from '../../shared/globals';\r\nimport axios from 'axios';\r\nimport { QueryContext, FilterContext } from '../../App';\r\nimport { constructSearchQuery } from '../../services/api';\r\nimport { doesWidgetHideThisSearchType, widgetApplyWidgetToQuery, widgetGetPluralLabelForText } from '../../utils/SiteWidgetizer';\r\nimport { getCurrentQuery, setCurrentQuery, updateCurrentQuery } from '../../utils/SearchHelper';\r\n\r\ninterface Props {\r\n onSearchButtonClick: () => void;\r\n}\r\n\r\nexport default function SearchBar(props: Props) {\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\tconst queryContext = useContext(QueryContext);\r\n\tconst [wasURLInitialized, setWasURLInitialized] = useState(false);\r\n\tconst filterContext = useContext(FilterContext);\r\n\r\n\tvar filteredSearchTypeOptions = mainSearchTypeOptions.filter(m => !doesWidgetHideThisSearchType(m.key));\r\n\tif (configName == \"env.production\") {\r\n\t\tfilteredSearchTypeOptions = filteredSearchTypeOptions.filter(m => m.key != 'job'\r\n\t\t\t&& m.key != 'industry'\r\n\t\t\t&& m.key != 'pathwayset'\r\n\t/*\t\t&& m.key != 'progressionmodel'*/\r\n\t\t\t//&& m.key != 'task'\r\n\t\t\t//&& m.key != 'workrole'\r\n\t\t);\r\n\t} else if (configName == \"env.flstaging\") {\r\n\t\tfilteredSearchTypeOptions = filteredSearchTypeOptions.filter(m => m.key == 'credential'\r\n\t\t\t|| m.key == 'organization'\r\n\t\t\t|| m.key == 'collection'\r\n\r\n\t\t);\r\n\t} else if (configName == \"env.texas\") {\r\n\t\tfilteredSearchTypeOptions = filteredSearchTypeOptions.filter(m => m.key == 'credential'\r\n\t\t\t|| m.key == 'organization'\r\n\t\t\t|| m.key == 'learningopportunity'\r\n\t\t\t|| m.key == 'collection'\r\n\r\n\t\t);\r\n\t}\r\n\tvar availableOptions = filteredSearchTypeOptions.map(m => m.key);\r\n\tif (!wasURLInitialized) {\r\n\t\tvar targetSearchType = new URLSearchParams(window.location.search).get(\"searchType\") || \"\";\r\n\t\tif (targetSearchType.length > 0) {\r\n\t\t\tqueryContext.query.SearchType = (availableOptions.filter(m => m == targetSearchType)[0] || availableOptions[0]) as MainSearchType;\r\n\t\t}\r\n\t\tsetWasURLInitialized(true);\r\n\t}\r\n\t\r\n function getDefaultDropboxIndex(type: 'main' | 'map') {\r\n\t\tconst searchType = queryContext.query.SearchType || 'credential';\r\n\r\n\t\tlet defaultIndex = filteredSearchTypeOptions.findIndex((option) => {\r\n return option.key === searchType;\r\n });\r\n if (type === 'map') {\r\n const mapPositionType =\r\n queryContext.query.MapFilter?.PositionType || 'positionType:In';\r\n\r\n defaultIndex = mapLocationSearchOption.findIndex((option) => {\r\n return option.key === mapPositionType;\r\n });\r\n }\r\n return defaultIndex;\r\n }\r\n\r\n function getDefaultMainSearchType() {\r\n return getDefaultDropboxIndex('main');\r\n }\r\n\r\n function getDefaultMapLocationPositionType() {\r\n return getDefaultDropboxIndex('map');\r\n }\r\n\r\n function onSearchButtonClick(e: any) {\r\n props.onSearchButtonClick();\r\n }\r\n\r\n\tfunction onSelectMainSearchOption(option: any) {\r\n\t\tupdateCurrentQuery((query: any) => {\r\n\t\t\tquery.Keywords = option.Label;\r\n\t\t});\r\n\t\t/* */\r\n\r\n queryContext.updateQuery({\r\n ...queryContext.query,\r\n Keywords: option.Label,\r\n });\r\n }\r\n\r\n\tfunction onBroadTypeOptionSelect(option: MainSearchOption) {\r\n\t\tclearSearch();\r\n\t\tupdateCurrentQuery((query: any) => {\r\n\t\t\tquery.SearchType = option.key;\r\n\t\t});\r\n\t\t(window as any).IsOriginalSearchType = false;\r\n\t\t/* */\r\n\r\n queryContext.updateQuery({\r\n ...defaultQuery,\r\n SearchType: option.key,\r\n });\r\n }\r\n\r\n\tasync function onMainTextSearchChange(value: string) {\r\n\t\tupdateCurrentQuery((query: any) => {\r\n\t\t\tquery.Keywords = value;\r\n\t\t\tquery.Force = true; //Force the query to run when the user types something, even if it is identical to the previous time it ran\r\n\t\t});\r\n\t\t/* */\r\n\r\n const url = `${autocompleteFilterSearchApiUrl}`;\r\n const query = {\r\n SearchType: queryContext.query.SearchType,\r\n FilterURI: 'mainsearch',\r\n FilterItemURI: 'interfaceType:Text',\r\n Text: value,\r\n };\r\n queryContext.updateQuery({\r\n ...queryContext.query,\r\n Keywords: value,\r\n\t\t});\r\n\t\tconst autocompleteQuery = {\r\n\t\t\t...constructSearchQuery(queryContext.query, filterContext[queryContext.query.SearchType]),\r\n\t\t\tKeywords: value,\r\n\t\t\tAutocompleteContext: 'mainsearch'\r\n\t\t};\r\n\t\twidgetApplyWidgetToQuery(autocompleteQuery, queryContext.query.SearchType);\r\n try {\r\n\t\t\tconst res = await axios.post(url, autocompleteQuery);\r\n return res.data.Successful ? res.data.Result.Items || [] : [];\r\n } catch (error) {\r\n return [];\r\n }\r\n }\r\n\r\n\tfunction onLocationSearchOptionSelect(value: any) {\r\n\t\tupdateCurrentQuery((query: any) => {\r\n\t\t\tquery.MapFilter = query.MapFilter || {};\r\n\t\t\tquery.MapFilter.PositionType = value.key;\r\n\t\t});\r\n\t\t/* */\r\n\r\n queryContext.updateQuery({\r\n ...queryContext.query,\r\n MapFilter: {\r\n ...queryContext.query.MapFilter,\r\n PositionType: value.key,\r\n },\r\n });\r\n }\r\n\r\n\tasync function onLocationTextSearchChange(value: string) {\r\n\t\tconst url = `${locationBoxSearchApiUrl}`;\r\n\t\tif (value && value.length > 0) {\r\n\t\t\tconst query = {\r\n\t\t\t\tText: value\r\n\t\t\t};\r\n\t\t\ttry {\r\n\t\t\t\tconst res = await axios.post(url, query);\r\n\t\t\t\treturn res.data.Successful ? res.data.Result || [] : [];\r\n\t\t\t} catch (error) {\r\n\t\t\t\treturn [];\r\n\t\t\t}\r\n\t\t}\r\n\t\telse {\r\n\t\t\tqueryContext.query.MapFilter = {};\r\n\t\t\tqueryContext.updateQuery({\r\n\t\t\t\t...queryContext.query\r\n\t\t\t});\r\n\t\t\treturn [];\r\n\t\t}\r\n }\r\n\r\n\tfunction onLocationTextSearchOptionSelect(option: any) {\r\n\t\tupdateCurrentQuery((query: any) => {\r\n\t\t\tquery.MapFilter = {\r\n\t\t\t\t...option,\r\n\t\t\t\tPositionType: query.MapFilter?.PositionType,\r\n\t\t\t\tKeywords: createFancyLocationLabel(option)\r\n\t\t\t}\r\n\t\t});\r\n\t\t/* */\r\n\r\n queryContext.updateQuery({\r\n ...queryContext.query,\r\n MapFilter: {\r\n\t\t\t\t...option,\r\n\t\t\t\tPositionType: queryContext.query.MapFilter?.PositionType,\r\n\t\t\t\tKeywords: createFancyLocationLabel(option)\r\n },\r\n });\r\n\t}\r\n\r\n\tfunction locationTextSearchAddItemHandler(searchText: any, setSearchText: any, suggestions: any[] | undefined, onSelect: any) { //Force a selection. Function names are a little misleading here.\r\n\t\tif (queryContext.query.MapFilter?.Keywords != searchText) {\r\n\t\t\tif (suggestions && suggestions.length > 0 && onSelect) {\r\n\t\t\t\tonSelect(suggestions[0]);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tsetSearchText(\"\");\r\n\t\t\t\tqueryContext.query.MapFilter = {};\r\n\t\t\t\tqueryContext.updateQuery({\r\n\t\t\t\t\t...queryContext.query\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tfunction createFancyLocationLabel(option: any) {\r\n\t\treturn option.Label + (option.Label == option.Region || option.Region == option.Country ? \"\" : \", \" + option.Region) + \" (\" + option.Country + \")\" || '';\r\n\t}\r\n\r\n\tfunction clearSearch() {\r\n\t\tvar query = getCurrentQuery();\r\n\t\tsetCurrentQuery({\r\n\t\t\tSearchType: query.SearchType,\r\n\t\t\tPageSize: query.PageSize,\r\n\t\t\tSkipPages: 0\r\n\t\t});\r\n\t\tupdateCurrentQuery();\r\n\t\t/* */\r\n\r\n\t\tvar widgetFilters = queryContext.query.MainFilters.filter(m => m?.Id?.toString().includes(\"widget\"));\r\n\t\tqueryContext.updateQuery({\r\n\t\t\t...queryContext.query,\r\n\t\t\tKeywords: \"\",\r\n\t\t\tMapFilter: { PositionType: \"positionType:In\" },\r\n\t\t\tMainFilters: widgetFilters\r\n\t\t});\r\n\t}\r\n\r\n\t/*\r\n\tfunction clearSearch() {\r\n\t\tvar widgetFilterKeys = Object.keys(queryContext.query.MainFilters).filter(m => m.includes(\"widget\"));\r\n\t\tvar widgetFilters = {} as any;\r\n\t\twidgetFilterKeys.forEach(m => {\r\n\t\t\twidgetFilters[m] = queryContext.query.MainFilters[m];\r\n\t\t});\r\n\t\tqueryContext.updateQuery({\r\n\t\t\t...queryContext.query,\r\n\t\t\tKeywords: \"\",\r\n\t\t\tMapFilter: { PositionType: \"positionType:In\" },\r\n\t\t\tMainFilters: widgetFilters\r\n\t\t});\r\n\t}\r\n\t*/\r\n\r\n\r\n if (isMobile) {\r\n return (\r\n \r\n \r\n Search\r\n
\r\n\t\t\t\t\t\t { return widgetGetPluralLabelForText(option.value); }}\r\n onChange={onBroadTypeOptionSelect}\r\n\t\t\t\t\t\t/>\r\n
\r\n
\r\n \r\n for\r\n \r\n option.Label || ''}\r\n\t\t\t\t\t\t\taddItemHandler={() => { onMainTextSearchChange(queryContext.query.Keywords || ''); }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t option.value || ''}\r\n\t\t\t\t\t\tonChange={onLocationSearchOptionSelect}\r\n />\r\n createFancyLocationLabel(option)}\r\n />\r\n \r\n
\r\n );\r\n }\r\n return (\r\n \r\n
\r\n Search\r\n\t\t\t\t widgetGetPluralLabelForText(option.value)}\r\n onChange={onBroadTypeOptionSelect}\r\n />\r\n
\r\n
\r\n \r\n for\r\n {/* */}\r\n \r\n option.Label || ''}\r\n\t\t\t\t\taddItemHandler={() => { onMainTextSearchChange(queryContext.query.Keywords || ''); }}\r\n\t\t\t\t\tfieldName={\"MainKeywords\"}\r\n />\r\n
\r\n \r\n\t\t\t\t option.value || ''}\r\n onChange={onLocationSearchOptionSelect}\r\n />\r\n \r\n
\r\n createFancyLocationLabel(option)}\r\n\t\t\t\t\taddItemHandler={locationTextSearchAddItemHandler}\r\n\t\t\t\t\tfieldName={\"MainKeywords\"}\r\n />\r\n
\r\n \r\n Search\r\n\t\t\t\r\n\t\t\tX\r\n
\r\n );\r\n}\r\n\r\n","export default __webpack_public_path__ + \"static/media/background-dot-light-blue-01.60f728b0.svg\";","import React, { useEffect, useRef, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { SConnector } from 'react-svg-connector';\r\nimport { HStack } from '../Stack';\r\n\r\nimport background from '../../assets/images/icons/background-dot-light-blue-01.svg';\r\nimport { useMediaQuery } from '../../hooks';\r\nimport { theme } from '../../shared/theme';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport {\r\n faChevronLeft,\r\n faChevronRight,\r\n} from '@fortawesome/free-solid-svg-icons';\r\n\r\nconst connectorSpan = 70;\r\n\r\nconst MobileCarousel = styled.div``;\r\n\r\nconst CarouselWrapper = styled(HStack)`\r\n cursor: pointer;\r\n background-image: url(${background});\r\n padding: 80px 60px;\r\n -webkit-overflow-scrolling: touch;\r\n ::-webkit-scrollbar {\r\n display: none; // hide scrollbar on safaris\r\n }\r\n -ms-overflow-style: none;\r\n scrollbar-width: none;\r\n overflow-y: hidden;\r\n`;\r\n\r\nconst ConnectorBlock = styled(HStack)`\r\n width: 100%;\r\n position: relative;\r\n svg {\r\n position: absolute;\r\n }\r\n`;\r\n\r\nconst Block = styled.div<{ isActive?: boolean }>`\r\n background-color: ${(props) =>\r\n props.isActive ? props.theme.color.greyLight : props.theme.color.white};\r\n min-width: 400px;\r\n`;\r\n\r\nconst MobileSlider = styled(HStack)`\r\n overflow: auto;\r\n -webkit-overflow-scrolling: touch;\r\n scroll-snap-type: x mandatory;\r\n`;\r\n\r\nconst MobileBlock = styled.div`\r\n min-width: 100%;\r\n scroll-snap-align: center;\r\n`;\r\n\r\nconst ConnectorBox = styled.div`\r\n min-width: ${connectorSpan + 'px'};\r\n`;\r\n\r\nconst NavArrows = styled(HStack)`\r\n padding: 20px;\r\n`;\r\n\r\ninterface Props {\r\n currentBlock?: number;\r\n blocks: React.ReactNode[];\r\n}\r\n\r\nexport default function Carousel(props: Props) {\r\n const wrapperRef = useRef(null);\r\n const sliderRef = useRef(null);\r\n const [divHeight, setDivHeight] = useState(0);\r\n const [clientX, setClientX] = useState(0);\r\n const [isScrolling, setIsScrolling] = useState(false);\r\n\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n function onMouseDown(e: React.MouseEvent) {\r\n setIsScrolling(true);\r\n setClientX(e.clientX);\r\n }\r\n\r\n function onMouseUp(e: React.MouseEvent) {\r\n setIsScrolling(false);\r\n }\r\n\r\n function onMouseMove(e: React.MouseEvent) {\r\n if (isScrolling) {\r\n if (wrapperRef.current) {\r\n const scrollX =\r\n wrapperRef.current.scrollLeft - e.clientX + clientX;\r\n const newClientX = e.clientX;\r\n wrapperRef.current.scrollLeft = scrollX;\r\n setClientX(newClientX);\r\n }\r\n }\r\n }\r\n\r\n const offsetY = divHeight / 10;\r\n\r\n function renderRightConnector() {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function renderLeftConnector() {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function slide(direction: 'next' | 'prev') {\r\n if (sliderRef.current) {\r\n const stepX = sliderRef.current.offsetWidth;\r\n if (direction === 'next') {\r\n sliderRef.current.scrollLeft =\r\n sliderRef.current.scrollLeft + stepX;\r\n } else {\r\n sliderRef.current.scrollLeft =\r\n sliderRef.current.scrollLeft - stepX;\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (wrapperRef.current) {\r\n setDivHeight(wrapperRef.current.offsetHeight);\r\n\r\n const newScrollX =\r\n (wrapperRef.current.scrollWidth / props.blocks.length) *\r\n (props.currentBlock ? props.currentBlock : 0);\r\n wrapperRef.current.scroll({\r\n left: newScrollX - 150,\r\n behavior: 'smooth',\r\n });\r\n }\r\n }, [wrapperRef, props.currentBlock, props.blocks]);\r\n\r\n if (isMobile) {\r\n return (\r\n \r\n \r\n {props.blocks.map((block, index) => (\r\n \r\n {block}\r\n \r\n ))}\r\n \r\n \r\n slide('prev')}\r\n />\r\n slide('next')}\r\n />\r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n {props.blocks.map((block, index) => (\r\n \r\n \r\n {block}\r\n \r\n {index % 2 !== 0\r\n ? renderLeftConnector()\r\n : index !== props.blocks.length - 1\r\n ? renderRightConnector()\r\n : null}\r\n \r\n ))}\r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { useMediaQuery } from '../../hooks';\r\nimport { theme } from '../../shared/theme';\r\nimport { HStack } from '../Stack';\r\n\r\nconst StyledTabBar = styled(HStack)`\r\n align-items: center;\r\n justify-content: center;\r\n flex-wrap: wrap;\r\n`;\r\nconst TabItem = styled.button<{ active?: boolean }>`\r\n padding: 10px 0;\r\n background: transparent;\r\n border: none;\r\n border-bottom: ${(props) => (props.active ? '2px solid black' : undefined)};\r\n cursor: pointer;\r\n`;\r\n\r\ninterface Props {\r\n items: string[];\r\n onTabClick?: (value: string, index: number) => void;\r\n activeIndex?: number;\r\n}\r\nexport default function TabBar(props: Props) {\r\n const [activeIndex, setActiveIndex] = useState(props.activeIndex);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n function onTabClick(value: any, index: number) {\r\n setActiveIndex(index);\r\n props.onTabClick && props.onTabClick(value, index);\r\n }\r\n\r\n useEffect(() => {\r\n setActiveIndex(props.activeIndex || 0);\r\n }, [props.activeIndex]);\r\n\r\n if (isMobile) {\r\n // TODO: decide mobile tabbar\r\n return null;\r\n }\r\n return (\r\n \r\n {props.items.map((item, index) => (\r\n onTabClick(item, index)}>\r\n {item}\r\n \r\n ))}\r\n \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-slider-credential-providers-01.798b6d53.svg\";","export default __webpack_public_path__ + \"static/media/icon-slider-quality-assurance-organizations-01.07896063.svg\";","export default __webpack_public_path__ + \"static/media/icon-slider-employers-01.9bf75f92.svg\";","export default __webpack_public_path__ + \"static/media/icon-slider-individual-01.b2f9898c.svg\";","export default __webpack_public_path__ + \"static/media/icon-slider-government-agencies-01.500e38f0.svg\";","export default __webpack_public_path__ + \"static/media/icon-slider-application-developers-01.821d2057.svg\";","export default __webpack_public_path__ + \"static/media/icon-slider-skill-and-competency-creators-01.80607b73.svg\";","import React, { ReactNode, useContext } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Button } from '../common';\r\nimport { VStack } from '../Stack';\r\n\r\nimport credential_icon from '../../assets/images/icons/icon-slider-credential-providers-01.svg';\r\nimport qa_organizations_icon from '../../assets/images/icons/icon-slider-quality-assurance-organizations-01.svg';\r\nimport employers_icon from '../../assets/images/icons/icon-slider-employers-01.svg';\r\nimport individuals_icon from '../../assets/images/icons/icon-slider-individual-01.svg';\r\nimport government_agencies_icon from '../../assets/images/icons/icon-slider-government-agencies-01.svg';\r\nimport application_developers_icon from '../../assets/images/icons/icon-slider-application-developers-01.svg';\r\nimport skills_competency_creators_icon from '../../assets/images/icons/icon-slider-skill-and-competency-creators-01.svg';\r\nimport { QueryContext } from '../../App';\r\nimport { defaultQuery } from '../../shared/data';\r\nimport { useHistory } from 'react-router-dom';\r\n\r\ninterface CarouseBlockProps {\r\n icon: string;\r\n title: string;\r\n subTitle: string;\r\n content: ReactNode;\r\n button: ReactNode;\r\n}\r\n\r\nconst Wrapper = styled(VStack)<{ isActive?: boolean }>`\r\n padding: 20px;\r\n border: 1px solid ${(props) => props.theme.color.greyLight};\r\n justify-content: space-between;\r\n user-select: none;\r\n height: 100%;\r\n`;\r\n\r\nconst CarouselBody = styled.div``;\r\nconst Icon = styled.img`\r\n height: 40px;\r\n align-self: flex-start;\r\n`;\r\nconst Title = styled.h2``;\r\nconst SubTitle = styled.label``;\r\nconst Content = styled.div``;\r\nconst CarouselButton = styled.div``;\r\n\r\nexport default function CarouseBlock(props: CarouseBlockProps) {\r\n const queryContext = useContext(QueryContext);\r\n const history = useHistory();\r\n\r\n function onExploreButtonClick(_e: any) {\r\n queryContext.updateQuery({ ...defaultQuery, SearchType: 'credential' });\r\n history.push('/search');\r\n }\r\n return (\r\n \r\n \r\n \r\n {props.title}\r\n {props.subTitle}\r\n {props.content}\r\n \r\n \r\n {props.button}\r\n \r\n \r\n );\r\n}\r\n\r\nexport function CredentialProvidersBlock() {\r\n return (\r\n \r\n

\r\n Our information can help you build better connections\r\n for the credentials you provide. We encourage you to\r\n explore how comparable credentials from other providers\r\n lead to different career opportunities, what\r\n competencies and skills are built into different\r\n credentials, and which are in demand.\r\n

\r\n

\r\n Use our data to help inform the credential opportunities\r\n you offer, and understand how your credentials compare\r\n locally and nationally.\r\n

\r\n \r\n }\r\n button={}\r\n />\r\n );\r\n}\r\n\r\nexport function QualityAssuranceOrgnizationsBlock() {\r\n return (\r\n \r\n

\r\n Browse through thousands of verified credential, skill,\r\n and competency data to inform quality assurance across\r\n credentials in your region.\r\n

\r\n

\r\n Learn how credentials and competencies align to quality\r\n frameworks.\r\n

\r\n \r\n }\r\n button={}\r\n />\r\n );\r\n}\r\nexport function IndividualsBlock() {\r\n return (\r\n \r\n

\r\n Whether you’re just starting out, advancing your career,\r\n or just looking for new skills, Credential Finder helps\r\n you find the path. We know it can be confusing to\r\n navigate through thousands of degrees, certificates, and\r\n other credential options. Having the right information\r\n is key.\r\n

\r\n

\r\n Use our reliable and up-to-date credential information\r\n to confidently map your own path forward.\r\n

\r\n \r\n }\r\n button={}\r\n />\r\n );\r\n}\r\nexport function GovernmentAgenciesBlock() {\r\n return (\r\n \r\n

\r\n Our credential information can help you understand the\r\n opportunities available for your constituents so that\r\n you may make better decisions about supports, resources,\r\n and services to meet your needs and keep up with a\r\n rapidly changing economy.\r\n

\r\n

\r\n Use our data in ways that are specific to your context\r\n to help with strategic planning and meet your goals.\r\n

\r\n \r\n }\r\n button={}\r\n />\r\n );\r\n}\r\nexport function ApplicationDevelopersBlock() {\r\n return (\r\n \r\n

\r\n Credential Finder is just a demonstration of what you\r\n can do with transparent credential information. Take\r\n advantage of a complete suite of APIs and methods to\r\n build your own applications based on data in the\r\n Credential Registry.\r\n

\r\n

\r\n Use our trusted and relevant data to build your own\r\n custom solutions that help meet your specific needs.\r\n

\r\n \r\n }\r\n button={}\r\n />\r\n );\r\n}\r\nexport function SkillAndCompetencyCreatorsBlock() {\r\n return (\r\n \r\n

\r\n You want to create opportunities for people to acquire\r\n in-demand skills when they need them. Learn what skills\r\n and competencies are available, what they mean, and what\r\n may be missing across local and state regions.\r\n

\r\n

\r\n Our data facilitates understanding of how others are\r\n describing different competencies and skills so that you\r\n can use that information to create new opportunities or\r\n refine existing skills and credentials.\r\n

\r\n \r\n }\r\n button={}\r\n />\r\n );\r\n}\r\nexport function EmployersBlock() {\r\n return (\r\n \r\n

\r\n Use our reliable information to know which credentials\r\n represent the knowledge and skills you want in your\r\n employees, and which credential and skills providers\r\n offer them.\r\n

\r\n

\r\n Compare options and make informed choices that can\r\n expand your talent pool.\r\n

\r\n \r\n }\r\n button={}\r\n />\r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-credentials-blue-white-01.1dd03f77.svg\";","import credentialsIcon from '../../assets/images/icons/icon-credentials-blue-white-01.svg';\r\nimport learningOpportunitiesIcon from '../../assets/images/icons/icon-learning-opportunities-blue-white-01.svg';\r\nimport assessmentsIcon from '../../assets/images/icons/icon-assessments-blue-white-01.svg';\r\nimport qualityAssuranceIcon from '../../assets/images/icons/icon-quality-assurance-blue-white-01.svg';\r\nimport skillsAndCompetenciesIcon from '../../assets/images/icons/icon-competencies-blue-white-01.svg';\r\nimport pathwaysIcon from '../../assets/images/icons/icon-pathways-blue-white-01.svg';\r\nimport transferValueIcon from '../../assets/images/icons/icon-transfer-value-blue-white-01.svg';\r\n\r\nexport const informationItems = [\r\n {\r\n icon: credentialsIcon,\r\n title: 'Credential',\r\n description:\r\n 'Degrees, certificates, badges, and more that show what an individual knows and can do.',\r\n },\r\n {\r\n icon: learningOpportunitiesIcon,\r\n title: 'Learning Opportunities',\r\n description:\r\n 'Formal opportunities that allow individuals to earn credentials or specific competencies and skills to advance their knowledge and job prospects.',\r\n },\r\n {\r\n icon: assessmentsIcon,\r\n title: 'Assessments',\r\n description:\r\n 'Activities that evaluate what an individual knows and can do as a result of a specific learning opportunity or a collection of them en route to earning a credential.',\r\n },\r\n {\r\n icon: qualityAssuranceIcon,\r\n title: 'Quality Assurance',\r\n description:\r\n 'Processes that help ensure credentials, learning opportunities, and individual skills and competencies are trusted, valuable, reliable.',\r\n },\r\n {\r\n icon: skillsAndCompetenciesIcon,\r\n title: 'Skills and Competencies',\r\n description:\r\n 'Abilities that individuals can acquire and have the capacity to apply in the workplace and real-world situations.',\r\n },\r\n {\r\n icon: pathwaysIcon,\r\n title: 'Pathways',\r\n description:\r\n 'Direct connections between education opportunities, skills/competencies, and the workforce that help people find clear avenues to meet their needs.',\r\n },\r\n {\r\n icon: transferValueIcon,\r\n title: 'Transfer Value',\r\n description:\r\n 'How well an individual credential, learning opportunity, or competency will relate to and apply in other skill development and/or career advancement opportunities.',\r\n },\r\n];\r\n","export default __webpack_public_path__ + \"static/media/icon-learning-opportunities-blue-white-01.74c72fc1.svg\";","export default __webpack_public_path__ + \"static/media/icon-assessments-blue-white-01.54284224.svg\";","export default __webpack_public_path__ + \"static/media/icon-quality-assurance-blue-white-01.75af2024.svg\";","export default __webpack_public_path__ + \"static/media/icon-competencies-blue-white-01.8bf91663.svg\";","export default __webpack_public_path__ + \"static/media/icon-pathways-blue-white-01.c1ed6613.svg\";","export default __webpack_public_path__ + \"static/media/icon-transfer-value-blue-white-01.5bed22c0.svg\";","export default __webpack_public_path__ + \"static/media/background.22a7c522.svg\";","export default __webpack_public_path__ + \"static/media/curved-line-background.7bc4ad76.svg\";","import styled from 'styled-components/macro';\r\nimport { HStack, VStack } from '../../components/Stack';\r\nimport { useMediaQuery } from '../../hooks';\r\nimport { theme } from '../../shared/theme';\r\nimport { informationItems } from './data';\r\nimport background from '../../assets/images/icons/background.svg';\r\nimport curveLineBackground from '../../assets/images/icons/curved-line-background.svg';\r\n\r\nconst StyledInformationPanel = styled(HStack)`\r\n padding: 100px;\r\n background-image: url(${background}), url(${curveLineBackground});\r\n background-repeat: repeat, no-repeat;\r\n background-position: center;\r\n background-color: ${(props) => props.theme.color.aquaDark};\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n padding: 20px;\r\n }\r\n`;\r\nconst LeftPanel = styled(VStack)`\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n flex: 0 0 100%;\r\n }\r\n`;\r\nconst RightPanel = styled(VStack)``;\r\nconst Icon = styled.img`\r\n width: 60px;\r\n align-self: flex-start;\r\n`;\r\nconst LeftTitle = styled.h2`\r\n margin-top: 0;\r\n`;\r\nconst LeftDescription = styled.p`\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n`;\r\nconst Title = styled.p`\r\n margin: 0;\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n font-weight: bold;\r\n`;\r\nconst Description = styled.p`\r\n margin-top: 0;\r\n`;\r\n\r\nexport default function InformationPanel() {\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n return (\r\n \r\n \r\n Reveal Reliable Information\r\n \r\n The Registry contains trusted and reliable information that\r\n helps learners and those seeking opportunities to explore\r\n available pathways. This information fuels the creation of\r\n services and tools that allow students, employers, and\r\n workers to compare credentials and see the full range of\r\n opportunities available for learning, advancement, and\r\n meaningful careers.\r\n \r\n \r\n \r\n {informationItems.map((item, index) => {\r\n return (\r\n \r\n \r\n \r\n {item.title}\r\n {item.description}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n}\r\n","import styled from 'styled-components/macro';\r\nimport { ContentDelimiter } from '../../components/common';\r\nimport { HStack, VStack } from '../../components/Stack';\r\n\r\nexport const Wrapper = styled(ContentDelimiter)`\r\n padding-top: 80px;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n padding-top: 40px;\r\n }\r\n`;\r\n\r\nexport const PageSection = styled.div`\r\n padding-top: 40px;\r\n`;\r\n\r\nexport const PageTitle = styled.p`\r\n font-size: 40px;\r\n font-weight: bold;\r\n margin: 0;\r\n line-height: 1;\r\n`;\r\n\r\nexport const PageDescription = styled.p``;\r\n\r\nexport const Title = styled.p`\r\n text-align: center;\r\n font-weight: bold;\r\n margin: 0;\r\n`;\r\n\r\nexport const StatData = styled(HStack)`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n justify-content: center;\r\n padding: 40px 0;\r\n > * {\r\n margin-bottom: 20px;\r\n }\r\n`;\r\nexport const StatItem = styled.button`\r\n\tflex: 1 1 25%;\r\n\tbackground: transparent;\r\n border: none;\r\n text-align: center;\r\n\tpadding: 10px;\r\n\tmin-width: 300px;\r\n\r\n\t/* Fix broken margin rules that are coming from somewhere I can't find and which probably wouldn't be safe to change anyway */\r\n\t&:first-child {\r\n\t\tmargin: 0;\r\n\t}\r\n\t&:last-child {\r\n\t\tmargin: 0;\r\n\t}\r\n\t&:not(:first-child) {\r\n\t\tmargin: 0;\r\n\t}\r\n\t&:not(:last-child) {\r\n\t\tmargin: 0;\r\n\t}\r\n`;\r\n//prototype: set font smaller so fits on one line on a desktop\r\nexport const StatItemValue = styled.h1`\r\n font-size: 64px;\r\n color: ${(props) => props.theme.color.brown};\r\n margin: 0;\r\n`;\r\nexport const StatItemTitle = styled.p`\r\n margin: 0;\r\n font-size: 24px;\r\n text-align: center;\r\n line-height: 1.125;\r\n`;\r\n\r\nexport const ConnectorBox = styled.div<{ height?: string }>`\r\n min-width: 150px;\r\n max-width: 150px;\r\n height: ${(props) => props.height || '150px'};\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n display: none;\r\n }\r\n`;\r\n","import styled from 'styled-components/macro';\r\nimport { ContentDelimiter } from '../../components/common';\r\nimport background from '../../assets/images/icons/background-dot-light-blue-01.svg';\r\n\r\nexport const Wrapper = styled(ContentDelimiter)`\r\n display: grid;\r\n grid-template-columns: 1fr 1fr;\r\n gap: 80px;\r\n padding-top: 40px;\r\n padding-bottom: 60px;\r\n background-image: url(${background});\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n grid-template-columns: 1fr;\r\n gap: 0;\r\n padding: 0;\r\n }\r\n\r\n\t&:not(:last-child) {\r\n\t\tpadding-bottom: 0;\r\n\t}\r\n`;\r\n\r\nexport const FullWidthWrapper = styled(ContentDelimiter)`\r\n\tbackground-image: url(${ background });\r\n\tpadding: 10px 20px 60px 20px;\r\n`;\r\n\r\nexport const InnerWrapper = styled(Wrapper)`\r\n\tpadding: 0;\r\n`;\r\n\r\nexport const MobileAboutDetail = styled.div`\r\n background-color: ${(p) => p.theme.color.aquaLight};\r\n padding: 0 10px;\r\n`;\r\n\r\nexport const Description = styled.div`\r\n margin-bottom: 30px;\r\n\tword-break: break-word;\r\n\twhite-space: pre-wrap;\r\n`;\r\n\r\nexport const Label = styled.label`\r\n\tfont-size: 18px;\r\n margin-bottom: 10px;\r\n`;\r\n\r\nexport const InlineLabel = styled.label`\r\n margin-right: 10px;\r\n`;\r\n\r\nexport const Inline = styled.div`\r\n display: flex;\r\n align-items: center;\r\n flex-wrap: wrap;\r\n`;\r\n\r\nexport const MapWrapper = styled.div`\r\n width: auto;\r\n height: 500px;\r\n margin-bottom: 10px;\r\n`;\r\n\r\nexport const SectionLabel = styled.div`\r\n\tfont-size: 18px;\r\n\tborder-top: 1px solid #CCC;\r\n\tpadding: 5px 0;\r\n`;\r\n\r\nexport const Section = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 10px;\r\n\r\n &:last-of-type {\r\n margin-bottom: 0;\r\n }\r\n`;\r\n\r\nexport const InlineLabelledItem = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: baseline;\r\n\tmargin-bottom: 10px;\r\n\r\n\t& > * {\r\n\t\tmargin: 0 5px;\r\n\t}\r\n\r\n\t&:last-of-type {\r\n margin: 0;\r\n }\r\n`;\r\n\r\nexport const Id = styled.span`\r\n margin-right: 5px;\r\n\r\n &:last-of-type {\r\n margin-right: 0;\r\n }\r\n`;\r\n\r\nexport const SocialLink = styled.a`\r\n cursor: pointer;\r\n margin-right: 15px;\r\n\r\n &:last-of-type {\r\n margin-right: 0;\r\n }\r\n`;\r\n\r\nexport const ModalLinksWrapper = styled.div`\r\n\tdisplay: flex;\r\n flex-wrap: wrap;\r\n\tpadding: 5px 0;\r\n`;\r\n\r\nexport const ModalLink = styled.span`\r\n margin: 1px 5px;\r\n display: inline-block;\r\n\r\n &:first-of-type {\r\n margin-left: 0;\r\n }\r\n &:last-of-type {\r\n margin-right: 0;\r\n }\r\n`;\r\n\r\nexport const UnorderedList = styled.ul`\r\n\tmargin: 0;\r\n`;\r\n\r\nexport const ListWithoutBullet = styled.li`\r\n list-style: none;\r\n`;\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Label, Section } from './styles';\r\nimport { Link } from '../../types/external';\r\nimport { ButtonLink } from '../common';\r\nimport { appURL } from '../../shared/globals';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faExternalLinkAlt } from '@fortawesome/free-solid-svg-icons';\r\n\r\nexport default function LinkObject(props: { item: Partial, overrideLabel?: string, hideExternalLinkIcon?: boolean, buttonType?: 'primary' | 'secondary' | 'tertiary' | 'filled' | undefined, isExternal?: boolean, linkTarget?: string }) {\r\n\tvar isExternal = props.isExternal || isExternalURL(props.item?.URL);\r\n\tvar label = props.item.Label || \"Link\";\r\n\tvar linkButtonType = props.buttonType || \"primary\";\r\n return (\r\n <>\r\n\t\t\t{props.item.URL &&\r\n\t\t\t\t\r\n\t\t\t\t\t{label}{isExternal && }\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{!props.item.URL &&\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{props.item.Description &&\r\n\t\t\t\t
\r\n\t\t\t\t\t
{props.item.Description}
\r\n\t\t\t\t
\r\n\t\t\t}\r\n \r\n );\r\n}\r\n\r\nexport function PlainTextLink(props: { item: Partial, overrideLabel?: string, hideExternalLinkIcon?: boolean }) {\r\n\tvar isExternal = isExternalURL(props.item?.URL);\r\n\r\n\treturn ( props.item?.URL &&\r\n\t\t
{props.overrideLabel || props.item.Label || \"Link\"}{isExternal && }\r\n\t) || null\r\n}\r\n\r\nexport function PlainTextLinkList(props: { label: string, items: Array, WrapperTag?: (children: JSX.ElementChildrenAttribute) => JSX.Element, HeaderTag?: (children: JSX.ElementChildrenAttribute) => JSX.Element, asList?: boolean }) {\r\n\tvar Wrapper = props.WrapperTag || PlainTextLinkListWrapper;\r\n\tvar Header = props.HeaderTag || PlainTextLinkListHeader;\r\n\treturn props.items?.length > 0 && (\r\n\t\t\r\n\t\t\t<>\r\n\t\t\t\t
{props.label}
\r\n\t\t\t\t{props.asList == true ? (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{props.items.map(item => (\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t
\r\n\t\t\t\t) : (\r\n\t\t\t\t\tprops.items.map(item => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))\r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t
\r\n\t) || null;\r\n}\r\n\r\nexport function PlainTextLinkListFromURLs(props: { label: string, urls: Array, WrapperTag?: (children: JSX.ElementChildrenAttribute) => JSX.Element, HeaderTag?: (children: JSX.ElementChildrenAttribute) => JSX.Element, asList?: boolean }) {\r\n\treturn { return { URL: url, Label: url } as Link })} WrapperTag={props.WrapperTag} HeaderTag={props.HeaderTag} asList={props.asList} />\r\n}\r\n\r\nexport function isExternalURL(url: string | undefined) : boolean {\r\n\tif (!url) {\r\n\t\treturn false;\r\n\t}\r\n\r\n\tvar lowerURL = url.toLowerCase();\r\n\treturn lowerURL.indexOf(\"http\") == 0 && lowerURL.indexOf(appURL.toLowerCase()) != 0;\r\n}\r\n\r\nconst SmallIcon = styled(FontAwesomeIcon)`\r\n\tfont-size: 85%;\r\n\topacity: 0.85;\r\n\tmargin-left: 0.4em;\r\n`;\r\n\r\nconst PlainTextLinkListWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst PlainTextLinkListHeader = styled.div`\r\n\tfont-weight: bold;\r\n`;","import React, { useEffect, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { RouteComponentProps, useHistory } from 'react-router-dom';\r\nimport SearchBar from '../../components/SearchBar';\r\nimport Carousel from '../../components/Carousel';\r\nimport TabBar from '../../components/TabBar';\r\nimport {\r\n ApplicationDevelopersBlock,\r\n CredentialProvidersBlock,\r\n EmployersBlock,\r\n GovernmentAgenciesBlock,\r\n IndividualsBlock,\r\n QualityAssuranceOrgnizationsBlock,\r\n SkillAndCompetencyCreatorsBlock,\r\n} from '../../components/CarouselBlock';\r\nimport InformationPanel from './InformationPanel';\r\nimport { HStack, VStack } from '../../components/Stack';\r\n\r\nimport { SConnector } from 'react-svg-connector';\r\nimport { theme } from '../../shared/theme';\r\nimport {\r\n Wrapper,\r\n PageDescription,\r\n PageSection,\r\n PageTitle,\r\n StatData,\r\n StatItem,\r\n StatItemTitle,\r\n StatItemValue,\r\n ConnectorBox,\r\n Title,\r\n} from './styles';\r\nimport axios from 'axios';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { Link } from '../../types/external';\r\nimport { statDataLabel } from '../../shared/data';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\n\r\nconst items = [\r\n 'Individuals',\r\n 'Credential Providers',\r\n 'Government Agencies',\r\n 'Application Developers',\r\n 'Skill and Competency Creators',\r\n 'Employers',\r\n 'Quality Assurance Organizations',\r\n];\r\n\r\nconst blocks = [\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n];\r\n\r\nfunction HomePage(props: RouteComponentProps) {\r\n const [currentBlock, setCurrentBlock] = useState(0);\r\n const [statData, setStatData] = useState([]);\r\n const history = useHistory();\r\n\r\n function onTabClick(value: string, index: number) {\r\n setCurrentBlock(index);\r\n }\r\n\r\n function onSearchButtonClick() {\r\n history.push('/search');\r\n }\r\n\r\n useEffect(() => {\r\n // call API\r\n axios.get(apiUrl + '/FinderHome').then((res) => {\r\n const data = res.data;\r\n if (data.Successful) {\r\n const statData = data.Result?.map((item: Link) => {\r\n return {\r\n ...item,\r\n Label: statDataLabel[item.Label] || item.Label,\r\n };\r\n });\r\n setStatData(statData || []);\r\n }\r\n });\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Discover Credentials. Explore Opportunities\r\n \r\n \r\n\t\t\t\t\t\tDiscover and compare credential opportunities, build widgets, and access our linked open data network for timely and trusted information about credentials including competencies and education and career pathways. Here you can explore the Credential Registry to understand how data that you and others contribute can be used to fuel the creation of services and tools that allow students, employers, and workers to compare credentials and choose the best option.\r\n\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n What's in the Registry?\r\n \r\n \r\n {statData.map((item, index) => (\r\n history.push(item.URL)}>\r\n {item.Total}\r\n {item.Label}\r\n \r\n ))}\r\n \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tOverview and Navigation Tips\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tIf you are new to the Credential Finder or want to get more familiar with the updated interface, we recommend exploring our overview page to learn how tools like the finder help make credential data more accessible and actionable. It includes helpful navigation tips, videos on changes we have implemented, and an invitation to share your feedback so we may improve tools like the Credential Finder or collaborate to develop custom tools that meet the needs of your stakeholders. You can also learn more about Credential Engine and how tools like the Finder help illuminate paths to a better future.\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n \r\n\t\t\t\t\r\n Who is Credential Finder for?\r\n \r\n \r\n \r\n \r\n\t\t\t\r\n \r\n );\r\n}\r\n\r\nexport default HomePage;\r\n\r\nconst LinkButtonSection = styled.div`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\tjustify-content: center;\r\n\tpadding: 10px 0;\r\n\r\n\t& > * {\r\n\t\tmargin: 5px 10px;\r\n\t\tmin-width: 300px;\r\n\t}\r\n`","import styled from 'styled-components';\r\nimport { ContentDelimiter } from '../common';\r\n\r\nexport const Wrapper = styled(ContentDelimiter)`\r\n display: flex;\r\n justify-content: center;\r\n padding: 20px 0;\r\n`;\r\n","import React from 'react';\r\nimport { Wrapper } from './styles';\r\n\r\nexport default function Error() {\r\n return An error occured.;\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport axios from 'axios';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport styled from 'styled-components/macro';\r\nimport Error from '../../components/Error';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function ReportsPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [loading, setLoading] = useState(false);\r\n const [pageContent, setPageContent] = useState(' ');\r\n const [error, setError] = useState(false);\r\n\r\n useEffect(() => {\r\n setLoading(true);\r\n const url = `${legacySourceUrl}/reports/CredentialRegistryData?context=newFinder&coreonly=true`;\r\n axios\r\n .get(url)\r\n .then((res) => {\r\n setPageContent(res.data);\r\n setLoading(false);\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n setError(true);\r\n setLoading(false);\r\n });\r\n }, []);\r\n if (loading) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n if (error) {\r\n return ;\r\n }\r\n\treturn <>\r\n\t\t\r\n\t\t\r\n\t\t;\r\n}\r\n\r\nconst LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;\r\n","import styled, { css } from 'styled-components/macro';\r\nimport { CleanList, FlexRow } from '../common';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\nexport const HeaderMain = styled.header`\r\n border-bottom: 1px solid ${(p) => widgetGetColor(\"SiteHeader\", false, p.theme.color.aquaDark)};\r\n padding: 0 20px;\r\n\r\n > ${FlexRow} {\r\n align-items: stretch;\r\n margin: 0 auto;\r\n max-width: 1400px;\r\n }\r\n`;\r\n\r\nexport const CompareButtonWrapper = styled.div`\r\n\tposition: relative;\r\n`;\r\n\r\nexport const CompareButton = styled.button<{\r\n isActive?: boolean;\r\n disabled?: boolean;\r\n}>`\r\n border: none;\r\n background: transparent;\r\n display: inline-flex;\r\n align-items: center;\r\n text-align: center;\r\n height: 100%;\r\n @media (min-width: ${(props) => props.theme.breakpoint.desktop}) {\r\n margin-left: 30px;\r\n }\r\n > * {\r\n background-color: ${(props) =>\r\n props.disabled\r\n ? props.theme.color.greyLight\r\n\t\t\t\t: widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaDark)};\r\n\t\tcolor: ${(props) =>\r\n\t\tprops.disabled\r\n\t\t\t? \"black\"\r\n\t\t\t: widgetGetColor(\"SearchResultButton\", true, \"black\")};\r\n }\r\n ${(props) =>\r\n props.isActive &&\r\n css`\r\n background: linear-gradient(\r\n 180deg,\r\n ${(props) => props.theme.color.brown} 4px,\r\n transparent 4px\r\n );\r\n `}\r\n`;\r\n\r\nexport const CompareCount = styled.p`\r\n padding: 0.5em 0.8em;\r\n margin: 0;\r\n`;\r\n\r\nexport const CompareIcon = styled.div`\r\n padding: 0.5em 0.8em;\r\n margin-left: 1px;\r\n`;\r\n\r\nexport const HeaderLeft = styled.div`\r\n\tflex: 1 1 30%;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n padding: 5px 0;\r\n\tmin-height: 70px;\r\n\r\n\t@media (max-width: 700px) {\r\n\t\tdisplay: block;\r\n\t}\r\n`;\r\n\r\nexport const HeaderRight = styled.div`\r\n\tflex: 1 1 70%;\r\n align-items: center;\r\n display: flex;\r\n justify-content: flex-end;\r\n`;\r\n\r\nexport const Logo = styled.div`\r\n\twhite-space: nowrap;\r\n\r\n > a {\r\n color: ${(props) => props.theme.color.blueDark};\r\n display: inline-block;\r\n font-size: ${(props) => props.theme.fontSize.md};\r\n font-weight: bold;\r\n text-decoration: none;\r\n }\r\n\r\n\t& img {\r\n\t\tmax-height: 50px;\r\n\t\tmax-width: 125px;\r\n\t}\r\n`;\r\n\r\nexport const Tagline = styled.div`\r\n\tmargin: 0 10px;\r\n\tfont-size: 12px;\r\n\tfont-style: italic;\r\n\r\n\twidth: 300px;\r\n\r\n\t@media (max-width: 1300px) {\r\n\t\twidth: 200px;\r\n\t}\r\n\t@media (max-width: 700px) {\r\n\t\tfont-size: 8px;\r\n\t}\r\n`;\r\n\r\nexport const MainMenu = styled(CleanList)`\r\n ul {\r\n padding: 0;\r\n z-index: 10;\r\n li {\r\n list-style: none outside none;\r\n }\r\n }\r\n\r\n // Style for mobile\r\n @media (max-width: calc(${(props) =>\r\n props.theme.breakpoint.desktop} - 1px)) {\r\n background-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.blueDark)};\r\n display: none;\r\n padding: 2rem 1rem;\r\n position: fixed;\r\n height: 100vh;\r\n left: 0;\r\n top: 0;\r\n width: 100vw;\r\n z-index: 2;\r\n\r\n // Menu open\r\n .main-menu-open & {\r\n display: block;\r\n }\r\n\r\n > li {\r\n color: #fff;\r\n padding: 0.5rem;\r\n cursor: pointer;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid\r\n ${(props) => props.theme.color.aquaDark};\r\n }\r\n\r\n > a {\r\n font-size: ${(props) => props.theme.fontSize.md};\r\n font-weight: bold;\r\n }\r\n\r\n ul {\r\n margin: 1rem 0;\r\n padding-left: 1rem;\r\n }\r\n\r\n li:not(:last-child) {\r\n margin-bottom: 0.8rem;\r\n }\r\n }\r\n\r\n a {\r\n color: #fff;\r\n text-decoration: none;\r\n\r\n &:hover,\r\n .active {\r\n color: ${(props) => props.theme.color.aquaDark};\r\n }\r\n }\r\n }\r\n\r\n // Style for desktop\r\n @media (min-width: ${(props) => props.theme.breakpoint.desktop}) {\r\n display: flex;\r\n height: 100%;\r\n\r\n ul {\r\n background-color: ${(props) => props.theme.color.white};\r\n border: 1px solid ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaDark)};\r\n display: none;\r\n left: 0;\r\n position: absolute;\r\n top: 100%;\r\n width: 240px;\r\n\r\n li {\r\n justify-content: flex-start;\r\n padding: 10px;\r\n\r\n &:hover {\r\n background-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaLight)};\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.blueDark)};\r\n\r\n\t\t\t\t\ta {\r\n\t\t\t\t\t\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"black\")};\r\n\t\t\t\t\t}\r\n }\r\n\r\n a {\r\n justify-content: flex-start;\r\n padding: 0;\r\n }\r\n }\r\n }\r\n\r\n li {\r\n position: relative;\r\n\r\n &:hover ul {\r\n display: block;\r\n }\r\n }\r\n\r\n a {\r\n align-items: center;\r\n color: ${(props) => props.theme.color.blueDark};\r\n display: flex;\r\n height: 100%;\r\n justify-content: center;\r\n padding: 0 1em;\r\n text-decoration: none;\r\n\r\n &:hover {\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaDark)};\r\n }\r\n\r\n &.active {\r\n background: linear-gradient(\r\n 180deg,\r\n ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.brown)} 4px,\r\n transparent 4px\r\n );\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const SearchLink = styled.li`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tfont-size: 0.875rem;\r\n cursor: pointer;\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaDark)};\r\n\t}\r\n\r\n\t& img {\r\n\t\tmax-height: 25px;\r\n\t\tmax-width: 25px;\r\n\t\tmargin-right: 10px;\r\n\t}\r\n`;\r\n","//Get something out of localStorage\r\nexport function getFromLocalStorage(propertyName) {\r\n\treturn window.localStorage[propertyName] ? JSON.parse(window.localStorage[propertyName]) : null;\r\n}\r\n//\r\n\r\n//Put something into localStorage\r\nexport function saveToLocalStorage(propertyName, value) {\r\n\twindow.localStorage[propertyName] = JSON.stringify(value);\r\n}\r\n//\r\n\r\n//Remove something from localStorage\r\nexport function deleteFromLocalStorage(propertyName) {\r\n\tdelete window.localStorage[propertyName];\r\n}\r\n//\r\n\r\n//Compare helper functions\r\nexport function addCompareItem(item) {\r\n\tconsole.log(\"Added Compare Item\", item);\r\n\tvar compareGraph = getCompareItems();\r\n\tif (compareGraph.find(m => m.CTID == item.CTID) == null) {\r\n\t\tcompareGraph.push(item);\r\n\t\tsaveCompareItems(compareGraph);\r\n\t}\r\n}\r\n//\r\n\r\nexport function removeCompareItem(item) {\r\n\tvar compareGraph = getCompareItems();\r\n\tif (compareGraph.find(m => m.CTID == item.CTID) != null) {\r\n\t\tcompareGraph = compareGraph.filter(m => m.CTID != item.CTID);\r\n\t\tsaveCompareItems(compareGraph);\r\n\t}\r\n}\r\n//\r\n\r\nexport function getCompareItems() {\r\n\t//Keep it loaded to improve performance\r\n\twindow.SiteCompareData = window.SiteCompareData || getFromLocalStorage(\"SiteCompareData\") || [];\r\n\treturn window.SiteCompareData;\r\n}\r\n//\r\n\r\nexport function saveCompareItems(compareGraph) {\r\n\tsaveToLocalStorage(\"SiteCompareData\", compareGraph);\r\n\twindow.SiteCompareData = compareGraph;\r\n\twindow.dispatchEvent(new Event(\"SiteCompareDataUpdated\"));\r\n}\r\n//\r\n\r\nexport function getCompareItemsByType(type) {\r\n\ttype = (type || \"\").toLowerCase();\r\n\treturn getCompareItems().filter(m => m.BroadType?.toLowerCase() == type || m.CTDLType?.toLowerCase() == type);\r\n}\r\n//\r\n\r\nexport function getCompareItemByCTID(ctid) {\r\n\treturn getCompareItems().find(m => m.CTID == ctid);\r\n}\r\n//\r\n\r\nexport function addOrUpdateCompareItem(item) {\r\n\tvar items = getCompareItems();\r\n\tvar match = items.find(m => m.CTID == item.CTID);\r\n\tmatch ? items.splice(items.indexOf(match), 1, item) : items.push(item);\r\n\tsaveCompareItems(items);\r\n}\r\n//\r\n\r\nexport function updateStateOnCompareChange(updateStateMethod) {\r\n\twindow.addEventListener(\"SiteCompareDataUpdated\", updateStateMethod);\r\n}\r\n//\r\n\r\nwindow.saveCompareItems = saveCompareItems;","import React, { useContext, useEffect, useMemo, useState } from 'react';\r\nimport {\r\n HeaderMain,\r\n HeaderLeft,\r\n HeaderRight,\r\n Logo,\r\n MainMenu,\r\n CompareButton,\r\n CompareIcon,\r\n CompareCount,\r\n\tSearchLink,\r\n\tCompareButtonWrapper,\r\n\tTagline\r\n} from './styles';\r\nimport { mainSearchTypeOptions } from '../../shared/data';\r\nimport { configName } from '../../shared/globals';\r\n\r\nimport { FlexRow } from '../common';\r\nimport { NavLink } from 'react-router-dom';\r\nimport HamburguerMenu from '../HamburgerMenu';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faAngleLeft, faBars, faSearch, faTimes } from '@fortawesome/free-solid-svg-icons';\r\nimport { QueryContext } from '../../App';\r\nimport { useLocation, useHistory } from 'react-router-dom';\r\nimport { MainSearchOption } from '../../types/internal'; import styled from 'styled-components/macro';\r\n// import logo from '../../assets/images/common/logo_credential-finder.png';\r\nimport { widgetGetColor, widgetGetPluralLabelForText } from '../../utils/SiteWidgetizer';\r\nimport { getCompareItems, updateStateOnCompareChange } from '../../utils/LocalStorage';\r\n\r\ninterface Props {\r\n onCompareButtonClick: () => void;\r\n\tshowCompareButton: boolean;\r\n\tcomparePanel?: JSX.Element;\r\n}\r\n\r\nexport default function Header(props: Props) {\r\n const queryContext = useContext(QueryContext);\r\n const location = useLocation();\r\n const history = useHistory();\r\n\tconst [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);\r\n\tconst [compareItems, setCompareItems] = useState(getCompareItems());\r\n\r\n const showCompareButton =\r\n props.showCompareButton &&\r\n ( location.pathname !== '/');\r\n\r\n const hamburgerClick = () => {\r\n setIsMobileMenuOpen(!isMobileMenuOpen);\r\n };\r\n\r\n function onCompareButtonClick() {\r\n props.onCompareButtonClick();\r\n }\r\n\r\n useEffect(() => {\r\n setIsMobileMenuOpen(false);\r\n }, [location]);\r\n\r\n\tuseEffect(() => {\r\n\t\tupdateStateOnCompareChange(() => { setCompareItems([ ...getCompareItems() ]); });\r\n\t\tsetCompareItems(getCompareItems());\r\n\t}, []);\r\n\r\n\tfunction findType(type: string): MainSearchOption {\r\n\t\treturn mainSearchTypeOptions.filter(m => m.key == type)[0] ?? mainSearchTypeOptions[0];\r\n\t}\r\n\r\n\tfunction widgetHideFilter(name: string): boolean {\r\n\t\treturn (window as any).Widget?.Config?.HideGlobalFilters?.includes(name);\r\n\t}\r\n\r\n\tfunction skipToContent() {\r\n\t\t(document.querySelector(\"#ContentBegins\") as any).focus();\r\n\t}\r\n\r\n\tvar widgetConfig = (window as any)?.Widget.Config;\r\n\tvar widgetLogoURL = widgetConfig?.LogoUrl;\r\n\tvar widgetLogoFile = widgetConfig?.LogoImage?.Files?.[0]?.RawData;\r\n\tvar widgetBannerText = widgetConfig?.BannerText;\r\n\r\n\t//console.log(\"Location\", location.pathname + location.search);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{widgetLogoURL && \"\"}\r\n\t\t\t\t\t\t\t{widgetLogoFile && \"\"}\r\n\t\t\t\t\t\t\t{!widgetLogoURL && !widgetLogoFile && \"Credential Finder\"}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{/*widgetConfig && {widgetBannerText}*/}\r\n\t\t\t\t\t{!widgetConfig && The Credential Finder is a tool for exploring all of the information published to the Credential Registry}\r\n\t\t\t\t\t skipToContent()}>Skip to Content\r\n\t\t\t\t\r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{!widgetConfig && (\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tHome\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t)}\r\n
  • \r\n\t\t\t\t\t\t\tSearch\r\n\t\t\t\t\t\t\t
      \r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindCredential\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Credentials\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindOrganization\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Organizations\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindAssessment\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Assessments\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindLearningOpportunity\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Learning Opportunities\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindCompetencyFramework\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Competency Frameworks\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindCollection\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Collections\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindPathway\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Pathways\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{/*{!widgetHideFilter(\"FindPathwaySet\") &&*/}\r\n\t\t\t\t\t\t\t\t{/*\t*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t\t\"\"*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t\t{widgetGetPluralLabelForText(\"Pathway Sets\")}*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t*/}\r\n\t\t\t\t\t\t\t\t{/*\t*/}\r\n\t\t\t\t\t\t\t\t{/*}*/}\r\n\t\t\t\t\t\t\t\t{/*{!widgetHideFilter(\"FindScheduledOffering\") &&*/}\r\n\t\t\t\t\t\t\t\t{/*\t*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t\t\"\"*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t\t{widgetGetPluralLabelForText(\"Scheduled Offerings\")}*/}\r\n\t\t\t\t\t\t\t\t{/*\t\t*/}\r\n\t\t\t\t\t\t\t\t{/*\t*/}\r\n\t\t\t\t\t\t\t\t{/*}*/}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindOutcomeData\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Outcome Data\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindSupportService\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Support Services\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindOccupation\") && \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Occupations\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindJob\") && \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Jobs\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindWorkRole\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Work Roles\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindTask\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Tasks\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindTransferValue\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Transfer Values\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindTransferIntermediary\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Transfer Intermediaries\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindConceptScheme\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Concept Schemes\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindProgressionModel\") && \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Progression Models\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindCredentialingAction\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Quality Assurance Actions\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindRubric\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Rubrics\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindMetric\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Metrics\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{!widgetHideFilter(\"FindIndustry\") &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Industries\")}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n
    \r\n
  • \r\n
  • \r\n Finder Widgets\r\n
  • \r\n\t\t\t\t\t\t
  • \r\n Reports and Data\r\n
  • \r\n\t\t\t\t\t\t
  • \r\n \r\n Benchmark Reports\r\n \r\n
  • \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{true && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tCompare ({compareItems.length})\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{props.comparePanel}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{isMobileMenuOpen && }\r\n\t\t\t\t\t\t{!isMobileMenuOpen && ((window as any).Widget?.Config ? : )}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t/*\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t*/\r\n\t\t\t\t\t}\r\n
    \r\n\t\t\t
    \r\n\t\t\tContent after this point\r\n
    \r\n );\r\n}\r\n\r\nconst MobileMenuButton = styled.button`\r\n\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", false, \"#000\")};\r\n\tbackground-color: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"transparent\")};\r\n\tborder: none;\r\n\twidth: 40px;\r\n\theight: 40px;\r\n\tfont-size: 26px;\r\n\r\n\t& .wide {\r\n\t\ttransform: scaleX(1.25);\r\n\t}\r\n\r\n\t&:hover, &:focus {\r\n\t\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.aquaDark)};\r\n\t\tbackground-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, \"transparent\")};\r\n\t}\r\n\r\n\t@media(min-width: 1200px){\r\n\t\tdisplay: none;\r\n\t}\r\n\r\n\t&.open {\r\n position: fixed;\r\n right: 1rem;\r\n top: 1rem;\r\n z-index: 100;\r\n\t\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.aquaDark)};\r\n\t\tbackground-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, \"transparent\")};\r\n\r\n\t\t&:hover, &:focus {\r\n\t\t\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", false, \"#FFF\")};\r\n\t\t\tbackground-color: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"transparent\")};\r\n\t\t}\r\n }\r\n`;\r\n\r\nconst NavigationSkipButton = styled.button`\r\n\topacity: 0;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\theight: 0;\r\n\toverflow: hidden;\r\n\r\n\t& :focus {\r\n\t\theight: 50px;\r\n\t\tline-height: 16px;\r\n\t\topacity: 1;\r\n\t\tpadding: 5px;\r\n\t\tbackground-color: #FFF;\r\n\t\tcolor: #000;\r\n\t}\r\n`;\r\n\r\nconst ContentBegins = styled.div`\r\n\topacity: 0;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\theight: 0;\r\n\toverflow: hidden;\r\n`;\r\n","import styled from 'styled-components/macro';\r\n\r\nexport const Wrapper = styled.div`\r\n display: flex;\r\n justify-content: center;\r\n padding: 100px 0;\r\n`;\r\n","import React, { ReactComponentElement, ReactNode } from 'react';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\nimport { Wrapper } from './styles';\r\nimport Error from '../Error';\r\n\r\ninterface Props {\r\n isLoading: boolean;\r\n hasError: boolean;\r\n children: ReactNode;\r\n loadingComponent?: ReactNode;\r\n errorComponent?: ReactNode;\r\n}\r\n\r\nconst defaultLoadingComponent = (\r\n \r\n \r\n \r\n);\r\n\r\nconst defaultErrorComponent = ;\r\n\r\nexport default function LoadingOrError({\r\n isLoading,\r\n hasError,\r\n children,\r\n loadingComponent,\r\n errorComponent,\r\n}: Props) {\r\n if (isLoading) {\r\n if (loadingComponent) {\r\n return <>{loadingComponent};\r\n }\r\n return defaultLoadingComponent;\r\n }\r\n\r\n if (hasError) {\r\n if (errorComponent) {\r\n return <>{errorComponent};\r\n }\r\n return defaultErrorComponent;\r\n }\r\n\r\n return <>{children};\r\n}\r\n","import styled, { css } from 'styled-components';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\nconst PageSectionItem = styled.div<{\r\n filled?: boolean;\r\n noBorder?: boolean;\r\n}>`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 0 0 15px 0;\r\n\tmargin: 0 0 15px 0;\r\n justify-content: 'space-around';\r\n border-bottom: ${(p) => `1px solid ${widgetGetColor(\"SiteHeader\", false, p.theme.color.aquaDark)}`};\r\n &:last-child {\r\n border-bottom: none;\r\n }\r\n ${(p) =>\r\n p.filled &&\r\n css`\r\n background-color: ${p.theme.color.aquaDark};\r\n margin: 0 -10px -10px -10px;\r\n padding: 20px 10px;\r\n @media (max-width: ${(props) =>\r\n props.theme.breakpoint.tabletPortrait}) {\r\n margin-bottom: 0;\r\n }\r\n `}\r\n ${(p) =>\r\n p.noBorder &&\r\n css`\r\n border-bottom: none;\r\n `}\r\n`;\r\n\r\nexport default PageSectionItem;\r\n","export default __webpack_public_path__ + \"static/media/icon-organization-white-green-01.46b4fc2e.svg\";","export default __webpack_public_path__ + \"static/media/icon-occupations-and-industries-blue-green-01.0e731dde.svg\";","export default __webpack_public_path__ + \"static/media/icon-process-blue-green-01.236b7bf8.svg\";","import styled from 'styled-components/macro';\r\n\r\nexport const Wrapper = styled.div`\r\n display: flex;\r\n flex-wrap: wrap;\r\n`;\r\n\r\nexport const PillWrapper = styled.div`\r\n margin: 5px;\r\n`;\r\n","import styled from 'styled-components/macro';\r\n\r\nexport const Link = styled.a`\r\n text-decoration: none;\r\n display: flex;\r\n\tgap: 10px;\r\n justify-content: space-between;\r\n align-items: center;\r\n cursor: pointer;\r\n background-color: ${(props) => props.theme.color.greyLight};\r\n border: 1px solid ${(props) => props.theme.color.greyLight};\r\n border-radius: 20px;\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n line-height: 1.714;\r\n padding: 2px 10px;\r\n position: relative;\r\n\r\n &:hover {\r\n background-color: ${(props) => props.theme.color.white};\r\n border-color: ${(props) => props.theme.color.greyDark};\r\n }\r\n`;\r\n\r\nexport const Label = styled.span`\r\n\r\n`;\r\n","import React, { ReactNode } from 'react';\r\nimport { Label, Link } from './styles';\r\n\r\ninterface Props extends React.ButtonHTMLAttributes {\r\n href: string;\r\n label: string;\r\n leftIcon?: ReactNode;\r\n\trightIcon?: ReactNode;\r\n\ttarget?: string;\r\n\ttitle?: string;\r\n}\r\n\r\nexport default function PillLink({ href, label, leftIcon, rightIcon, target, title }: Props) {\r\n\tconst useTitle = title || \"Opens search for '\" + label + \"' in a new window\";\r\n\tconst targetWindow = target || \"searchWindow\";\r\n return (\r\n\t\t\r\n {leftIcon}\r\n\t\t\t{label &&\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n {rightIcon}\r\n \r\n );\r\n}\r\n","import React, { ReactElement, useState } from 'react';\r\nimport styled, { DefaultTheme, StyledComponent } from 'styled-components/macro';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faAngleUp, faAngleRight } from '@fortawesome/free-solid-svg-icons';\r\n\r\nexport interface TruncatedItemListProps {\r\n\tListItemsComponent?: StyledComponent, //Couldn't figure out how to get this to work with a vanilla element, may revisit it later\r\n\tsource: any[],\r\n\trenderItemWith: (item: any, index?: number) => JSX.Element | null,\r\n\ttruncateAfter: number,\r\n\tstartExpanded?: boolean,\r\n\tlistCSSClass?: string,\r\n\tlistItemsCSSClass?: string,\r\n\texpandButtonCSSClass?: string\r\n}\r\n\r\nexport default function TruncatedItemList(props: TruncatedItemListProps) {\r\n\tvar [expanded, setExpanded] = useState(props.startExpanded || false);\r\n\r\n\tvar ListItemsComponent = props.ListItemsComponent || TruncatedListItems;\r\n\treturn (\r\n\t\tprops.source?.length > 0 &&\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{props.source.map((item, itemIndex) => (\r\n\t\t\t\t\t(expanded || itemIndex < props.truncateAfter) &&\r\n\t\t\t\t\tprops.renderItemWith(item, itemIndex)\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t\t{(props.source.length > props.truncateAfter) && (\r\n\t\t\t\t { setExpanded(!expanded) }} className={\"truncatedListButton \" + props.expandButtonCSSClass}>\r\n\t\t\t\t\t{expanded && Collapse List}\r\n\t\t\t\t\t{!expanded && Show All {props.source.length} Items}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nconst TruncatedList = styled.div`\r\n\r\n`;\r\n\r\nconst TruncatedListItems = styled.div`\r\n\r\n`;\r\n\r\nconst ExpandButton = styled.button`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tfont-weight: bold;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\twidth: 100%;\r\n\tpadding: 5px 10px;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: rgba(78, 229, 225, 0.5);\r\n\t}\r\n\r\n\t& svg {\r\n\t\tfont-size: 20px;\r\n\t\tmargin-left: auto;\r\n\t}\r\n`;","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { faFilter, faSearch, faExternalLinkAlt } from '@fortawesome/free-solid-svg-icons';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { Link, ReferenceFramework } from '../../types/external';\r\nimport { Wrapper, PillWrapper } from './styles';\r\nimport PillLink from '../PillLink';\r\nimport { title } from 'process';\r\nimport TruncatedItemList from '../DetailPage/TruncatedItemList';\r\nimport { widgetReplacePluralLabelInText, widgetReplaceSingleLabelInText } from '../../utils/SiteWidgetizer';\r\n\r\ninterface Props {\r\n links: Array;\r\n}\r\n\r\nexport function AllPills({ links }: Props) {\r\n return (\r\n \r\n {(links || []).map((link, index) => (\r\n // const title=\"Opens search for '\" + link.Label + \"' in a new window\";\r\n \r\n }\r\n rightIcon={\r\n \r\n }\r\n />\r\n \r\n ))}\r\n \r\n );\r\n}\r\n\r\nexport default function Pills({ links }: Props) {\r\n\treturn (\r\n\t\t {\r\n\t\t\t\treturn (\r\n\t\t\t\t// const title=\"Opens search for '\" + link.Label + \"' in a new window\";\r\n\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\trightIcon={\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t/>\r\n\t\t\t\t)\r\n\t\t\t}}\r\n\t\t\ttruncateAfter={5}\r\n\t\t/>\r\n\t)\r\n}\r\n\r\nexport function ReferenceFrameworkPills(props: { links: Array | Array, itemTypeLabel?: string; }) {\r\n\t//Translate the incoming data to Credential Alignment Object\r\n\t//removing Unknown Framework. Have to be careful if shown with data from a framework (probably unlikely)\r\n\tvar items = ((props.links as any) || []).map((link: any) => {\r\n\t\treturn {\r\n\t\t\tLabel: link.Label || link.Name || \"Unknown Name\",\r\n\t\t\tDescription: link.Description || link.Description,\r\n\t\t\tCodedNotation: link.CodedNotation,\r\n\t\t\tTargetNode: link.TargetNode,\r\n\t\t\tURL: link.URL,\r\n\t\t\tFrameworkName: link.FrameworkName || \"\",\r\n\t\t\tFramework: link.Framework || \"https://null\"\r\n\t\t} as ReferenceFramework\r\n\t}) as Array;\r\n\r\n\t//Group the incoming data\r\n\tvar frameworks = [] as Array;\r\n\titems.forEach(item => {\r\n\t\tvar framework = frameworks.find(framework => framework.URL.toLowerCase() == item.Framework?.toLowerCase()) || frameworks.find(framework => framework.Name.toLowerCase() == item.FrameworkName?.toLowerCase());\r\n\t\tif (!framework) {\r\n\t\t\tframework = { Name: item.FrameworkName, URL: item.Framework, links: [] as Array };\r\n\t\t\tframeworks.push(framework);\r\n\t\t}\r\n\t\tframework.links.push(item);\r\n\t});\r\n\r\n\treturn (\r\n\t\t {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{framework.URL == \"https://null\" ? framework.Name : {framework.Name}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{framework.links.map((link: ReferenceFramework) => (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{link.Label}\r\n\t\t\t\t\t\t\t\t\t{link.URL && } />}\r\n\t\t\t\t\t\t\t\t\t{link.TargetNode && } target=\"_blank\" />}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)\r\n\t\t\t}}\r\n\t\t\ttruncateAfter={5}\r\n\t\t/>\r\n\t)\r\n}\r\n\r\nconst Framework = styled.div`\r\n\r\n`;\r\n\r\nconst FrameworkName = styled.div`\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst FrameworkItemList = styled.div`\r\n\tpadding: 0 20px;\r\n`;\r\n\r\nconst FrameworkItem = styled.div`\r\n\tdisplay: flex; align-items: center;\r\n\tgap: 5px;\r\n`;\r\n\r\nconst FrameworkItemName = styled.div`\r\n\t\r\n`","export function isFilled(item: any) {\r\n if (Array.isArray(item)) {\r\n return item.length > 0;\r\n }\r\n\r\n if (Number.isInteger(item)) {\r\n return true;\r\n }\r\n\r\n return Boolean(item);\r\n}\r\n","import styled from 'styled-components/macro';\r\n\r\nexport const Wrapper = styled.div`\r\n display: flex;\r\n flex-wrap: wrap;\r\n`;\r\n\r\nexport const PillWrapper = styled.div`\r\n margin: 2px 5px;\r\n background-color: ${(props) => props.theme.color.greyLight};\r\n border: 1px solid ${(props) => props.theme.color.greyLight};\r\n border-radius: 20px;\r\n`;\r\n\r\nexport const Label = styled.span`\r\n margin: 0 10px;\r\n`;\r\n","import React from 'react';\r\nimport { faFilter, faSearch } from '@fortawesome/free-solid-svg-icons';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { Link } from '../../types/external';\r\nimport { Label, Wrapper, PillWrapper } from './styles';\r\n\r\ninterface Props {\r\n links: Array;\r\n}\r\n\r\nexport default function Pills({ links }: Props) {\r\n return (\r\n \r\n {links.map((link, index) => (\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n );\r\n}","import React from 'react';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { Label } from '../../components/DetailPage/styles';\r\nimport { Organization } from '../../types/external';\r\nimport SearchPills, { AllPills } from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport DisplayPills from '../../components/PillDisplay';\r\ninterface Props {\r\n org: Organization;\r\n}\r\n\r\n// This is split out because we need to render it a second time on mobile devices.\r\nexport default function AboutDetail({ org }: Props) {\r\n return (\r\n <>\r\n {isFilled(org.AgentType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n {org.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {isFilled(org.AlternateName) && (\r\n \r\n \r\n {org.AlternateName.map((name, index) => (\r\n
    {name}
    \r\n ))}\r\n
    \r\n )}\r\n {isFilled(org.Connections) && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Place as PlaceType } from '../../types/external';\r\n\r\nexport default function PlaceList(props: { items: PlaceType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.items.map((item) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function Place(props: { item: PlaceType }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t
    \r\n\t\t\t\t{props.item.Name && {props.item.Name}}\r\n\t\t\t\t{props.item.Identifier && props.item.Identifier.map((identifier) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{identifier.IdentifierType ?\r\n\t\t\t\t\t\t\t({identifier.IdentifierTypeName || \"Identifier\"}:) :\r\n\t\t\t\t\t\t\t({identifier.IdentifierTypeName || \"Identifier\"}:)}\r\n\t\t\t\t\t\t{identifier.IdentifierValueCode || \"No Value\"}\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t
    \r\n\t\t\t{props.item.Description && {props.item.Description}}\r\n\t\t\t\r\n\t\t\t\t{props.item.StreetAddress && {props.item.StreetAddress ? props.item.StreetAddress : \"\"}}\r\n\t\t\t\t{(props.item.AddressLocality || props.item.AddressRegion) && {props.item.AddressLocality ? props.item.AddressLocality + \", \" : \"\"} {props.item.AddressRegion ? props.item.AddressRegion : \"\"}}\r\n\t\t\t\t{props.item.PostalCode && {props.item.PostalCode}}\r\n\t\t\t\t{props.item.AddressCountry && {props.item.AddressCountry}}\r\n\t\t\t\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nconst PlaceWrapper = styled.div`\r\n\tflex: 1 1 auto;\r\n\tpadding: 5px 0;\r\n\tline-height: 1.3em;\r\n`;\r\n\r\nconst Header = styled.div`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\talign-items: baseline;\r\n`\r\n\r\nconst Name = styled.div`\r\n\tfont-weight: bold;\r\n\tmargin-right: 10px;\r\n\r\n\t&:empty {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst Description = styled.div`\r\n\tpadding: 1px 5px;\r\n\tfont-size: 85%;\r\n`;\r\n\r\nconst Identifier = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: baseline;\r\n\tpadding: 0 10px;\r\n\r\n\t&:not(:first-child) {\r\n\t\tborder-left: 1px solid #CCC;\r\n\t}\r\n\r\n\t& b {\r\n\t\tmargin-right: 0.5em;\r\n\t}\r\n`;\r\n\r\nconst AddressText = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: stretch;\r\n\tfont-size: 85%;\r\n\r\n\t& div {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\tjustify-content: center;\r\n\t}\r\n`;\r\n\r\nconst StreetAddress = styled.div`\r\n\tborder-right: 1px solid #CCC;\r\n\tpadding-right: 10px;\r\n\r\n\t&:empty {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst AddressLocalityAndRegion = styled.div`\r\n\tpadding: 0 10px;\r\n\tborder-right: 1px solid #CCC;\r\n\r\n\t&:empty {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst PostalCode = styled.div`\r\n\tpadding: 0 10px;\r\n\tborder-right: 1px solid #CCC;\r\n`;\r\n\r\nconst AddressCountry = styled.div`\r\n\tpadding-left: 10px;\r\n\ttext-align: right;\r\n`;\r\n\r\n","export default __webpack_public_path__ + \"static/media/icon-location-blue-green-01.40bd72cc.svg\";","import { defaultMapSetting } from '../shared/data';\r\nimport { Place } from '../types/external';\r\n\r\nexport function setupMap(\r\n googleMap: google.maps.Map,\r\n maps: typeof google.maps,\r\n\tplaces: Array,\r\n defaultMapZoom?: number,\r\n) {\r\n const markers: Array = [];\r\n const infoWindows: Array = [];\r\n const bounds = new maps.LatLngBounds();\r\n\r\n places.forEach((place, index) => {\r\n if (place.Latitude && place.Longitude) {\r\n\t\t\tconst latLng = { lat: place.Latitude, lng: place.Longitude };\r\n\t\t\tvar marker = new maps.Marker({\r\n\t\t\t\tposition: latLng,\r\n\t\t\t\tmap: googleMap,\r\n\t\t\t\tlabel: place.MarkerLabel || \"\",\r\n\t\t\t\ttitle: place.MarkerTitle || \"\"\r\n\t\t\t});\r\n\t\t\tvar addressText = [place.StreetAddress, place.AddressLocality, place.AddressRegion].filter(m => m && m.length > 0).join(\", \") || \"Unnamed Location\";\r\n\t\t\tvar infoWindow = new maps.InfoWindow({\r\n\t\t\t\tcontent: (place.ResourceName ? \"\" + place.ResourceName + \"
    \" : \"\") +\r\n\t\t\t\t\t(place.ResourceProviderName ? place.ResourceProviderName + \"
    \" : \"\") +\r\n\t\t\t\t\t(place.Name ? place.Name + \"
    \" : \"\") +\r\n\t\t\t\t\t//\"\" + addressText + \"\",\r\n\t\t\t\t\t\"\" + addressText + \"\",\r\n\t\t\t});\r\n\t\t\tmarker.addListener(\"click\", () => {\r\n\t\t\t\t//Highlight the result and scroll to it\r\n\t\t\t\tvar resultDiv = document.querySelector(\"[data-meta_id='\" + (place as any).identifier + \"']\");\r\n\t\t\t\tresultDiv?.scrollIntoView();\r\n\t\t\t\tresultDiv?.classList.add(\"highlighted\");\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tresultDiv?.classList.remove(\"highlighted\");\r\n\t\t\t\t}, 100);\r\n\r\n\t\t\t\t//Open the info window on the map\r\n\t\t\t\tinfoWindows.filter(m => m != infoWindow).forEach(function (otherWindow) {\r\n\t\t\t\t\totherWindow.close();\r\n\t\t\t\t})\r\n\t\t\t\tinfoWindow.open(googleMap, marker);\r\n\t\t\t\tconst markerPosition = marker.getPosition();\r\n\t\t\t\tif (markerPosition) {\r\n\t\t\t\t\tgoogleMap.panTo(markerPosition);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t//Make it possible to relate this marker back to its result\r\n\t\t\tmarker.set(\"resultID\", (place as any).identifier);\r\n\t\t\tmarkers.push(marker);\r\n\t\t\tinfoWindows.push(infoWindow);\r\n bounds.extend(latLng);\r\n }\r\n\t});\r\n\r\n if (!bounds.isEmpty()) {\r\n googleMap.fitBounds(bounds);\r\n } else {\r\n googleMap.setCenter(defaultMapSetting.center);\r\n googleMap.setZoom(defaultMapSetting.zoom);\r\n }\r\n if (places.length === 1) {\r\n googleMap.setZoom(defaultMapZoom || 12);\r\n }\r\n return markers;\r\n}\r\n","import React from 'react';\r\nimport { Link } from '../../types/external';\r\nimport { ModalLinksWrapper, ModalLink } from './styles';\r\nimport { Button, InternalButtonLink } from '../common';\r\nimport { getLinkType } from '../../utils';\r\nimport PillLink from '../PillLink';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faFilter, faSearch } from '@fortawesome/free-solid-svg-icons';\r\nimport LinkObject from './LinkObject';\r\n\r\ninterface Props {\r\n links: Array;\r\n}\r\n\r\nexport default function ModalLinks({ links }: Props) {\r\n const buttonType = 'secondary';\r\n\r\n function renderModalLink(link: Link) {\r\n const linkType = getLinkType(link.URL);\r\n\r\n switch (linkType) {\r\n case 'external':\r\n if (link.URL.toLowerCase().indexOf(\"/search\") > -1) {\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\trightIcon={\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\treturn ( link && )\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\tcase 'internal':\r\n\t\t\t\tif (link.URL.toLowerCase().indexOf(\"/search\") > -1) {\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\trightIcon={\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{link.Label}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n case 'none':\r\n return ;\r\n }\r\n }\r\n\r\n return (\r\n \r\n {links.map((link, index) => (\r\n \r\n {renderModalLink(link)}\r\n \r\n ))}\r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Outline as OutlineType } from '../../types/external';\r\nimport ModalLinks from '../DetailPage/ModalLinks';\r\nimport { Inline, InlineLabel } from \"./styles\";\r\n\r\nexport default function OutlineList(props: { items: OutlineType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.items.map((item, index) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function Outline(props: { item: OutlineType }) {\r\n\treturn (props.item && \r\n\t\r\n\t\t{props.item.Image && {\"Image}\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t{props.item.ExtraData && props.item.ExtraData.Label === 'CodedNotation' && (\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t{props.item.ProviderList && props.item.ProviderList.length > 0 ? (\r\n\t\t\t
    \r\n\t\t\t\t{props.item.ProviderList.map((provider, index) => (\r\n\t\t\t\t\tprovider.Label && provider.URL && (\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t {index == 0 ? 'Providers:' : ''}\r\n\t\t\t\t\t\t\t\t{provider.Label}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t)\r\n\t\t\t\t))}\r\n\t\t\t
    \r\n\t\t\t) : (\r\n\t\t\tprops.item.Provider && (props.item.Provider.Label || props.item.Provider.URL) && (\r\n\t\t\t\tProvider:\r\n\t\t\t\t\t{props.item.Provider.Label}\r\n\t\t\t\t\r\n\t\t\t))\r\n\t\t\t}\r\n\t\t\t{props.item.Description && {props.item.Description.length > 1000 ? props.item.Description.substring(0, 1000) + \"...\" : props.item.Description}}\r\n\t\t\t{props.item.Tags && }\r\n\t\t
    \r\n\t
    \r\n\t) || null\r\n}\r\nfunction TextItem(props: { label: string, item: string }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t
    {props.item}
    \r\n\t\t
    \r\n\t) || null\r\n}\r\nconst OutlineWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: flex-start;\r\n\tpadding: 10px 0;\r\n\r\n\t&:first-child {\r\n\t\tpadding: 0 0 10px 0;\r\n\t}\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid ${(p) => p.theme.color.aquaDark};\r\n\t}\r\n`;\r\n\r\nconst Image = styled.img`\r\n\tflex: 1 1 120px;\r\n\tmax-width: 120px;\r\n\tmax-height: 120px;\r\n\tobject-fit: contain;\r\n\tmargin-right: 10px;\r\n\r\n\t@media (max-width: 600px){\r\n\t\tmax-width: 60px;\r\n\t\tmax-height: 60px;\r\n\t}\r\n`;\r\n\r\nconst Content = styled.div`\r\n\tflex: 1 1 auto;\r\n`;\r\n\r\nconst Label = styled.div`\r\n\tfont-weight: bold;\r\n\tmargin-bottom: 5px;\r\n`;\r\n\r\nconst Provider = styled.div`\r\n\tfont-size: 85%;\r\n\tfont-style: italic;\r\n\tmargin-bottom: 5px;\r\n`;\r\n\r\nconst Description = styled.div`\r\n\tfont-size: 90%;\r\n\tword-break: break-word;\r\n\tmargin-bottom: 5px;\r\n`;\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Inline, InlineLabel } from \"./styles\";\r\nimport { PlainTextLink } from \"./LinkObject\";\r\nimport { Link } from \"../../types/external\";\r\n\r\n/* This file is for Components shared across Modal Windows and the main Detail Page */\r\n\r\nexport const Box = styled.div`\r\n\tborder: 1px solid ${(p) => p.theme.color.aquaDark};\r\n\tmargin-bottom: 10px;\r\n`;\r\n\r\nexport const BoxLabel = styled.div`\r\n\tbackground-color: ${(p) => p.theme.color.aquaDark};\r\n\tpadding: 5px 10px;\r\n\tfont-size: 18px;\r\n\tfont-weight: bold;\r\n`;\r\n\r\nexport const BoxContent = styled.div`\r\n\tpadding: 10px;\r\n`;\r\n\r\nexport const Section = styled.div`\r\n\tpadding: 5px 0;\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid #CCC;\r\n\t}\r\n`;\r\n\r\nexport const SectionLabel = styled.div`\r\n\tfont-size: 18px;\r\n\tpadding: 5px 0;\r\n`;\r\n\r\nexport const SectionContent = styled.div`\r\n\tpadding: 0 0 0 20px;\r\n\tmargin-bottom: 10px;\r\n\r\n\t& .withBelow {\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\r\n\t& .withAbove {\r\n\t\tmargin-top: 0;\r\n\t}\r\n\r\n`;\r\n\r\nexport function SectionContentItem(props: { label: string, data: T, RenderWith: (data: T) => JSX.Element }) {\r\n\treturn (props.data && (Array.isArray(props.data) ? props.data.length > 0 : true) &&\r\n\t\t\r\n\t\t\t{props.label && {props.label}:}\r\n\t\t\t{props.RenderWith(props.data)}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nexport function LinkItem(props: { label: string, item: any }) {\r\n\tif (!props.item) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar link = typeof (props.item) == \"string\" ? ({ Label: props.item, URL: props.item } as Link) : (props.item as Link);\r\n\treturn (link.URL &&\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\n//Not exported to avoid confusion with SectionContentItem\r\nconst SectionContentItemWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tmin-height: 30px;\r\n\r\n\t& > * { margin-right: 10px; }\r\n`;\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { JurisdictionProfile as JurisdictionProfileType } from '../../types/external';\r\nimport { Outline } from './Outline';\r\nimport { Section, SectionLabel, SectionContent } from './Shared';\r\nimport PlaceList, { Place } from './Place';\r\n\r\nexport default function JurisdictionProfileList(props: { items: JurisdictionProfileType[], mainJurisdictionLabel?: string, jurisdictionExceptionLabel?: string, isGlobalJurisdictionText?: string }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.items.map((item) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function JurisdictionProfile(props: { item: JurisdictionProfileType, mainJurisdictionLabel?: string, jurisdictionExceptionLabel?: string, isGlobalJurisdictionText?: string }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t{props.item.Description && \r\n\t\t\t\t
    {props.item.Description}
    \r\n\t\t\t}\r\n\t\t\t{props.item.GlobalJurisdiction && \r\n\t\t\t\t
    {props.isGlobalJurisdictionText || \"The jurisdiction is global.\"}
    \r\n\t\t\t}\r\n\t\t\t{props.item.MainJurisdiction && \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
    {props.mainJurisdictionLabel || \"Applies In\"}
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{props.item.JurisdictionException?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
    {props.jurisdictionExceptionLabel || \"Does Not Apply In\"}
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{props.item.AssertedBy &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tAsserted By\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nconst JurisdictionProfileWrapper = styled.div`\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px dashed #CCC;\r\n\t}\r\n`;","import React, { ReactNode } from 'react';\r\nimport { isFilled } from '../../validation';\r\n\r\ninterface Props {\r\n data: any;\r\n keys: Array;\r\n children: ReactNode;\r\n}\r\n\r\nexport default function HasAnyFilled({ data, keys, children }: Props) {\r\n const hasAnyFilled = keys.some((key) => isFilled(data[key]));\r\n return hasAnyFilled ? <>{children} : null;\r\n}\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { findIconDefinition, IconName } from '@fortawesome/fontawesome-svg-core';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { ContactPoint as ContactPointType } from '../../types/external';\r\n\r\nexport default function ContactPointList(props: { items: ContactPointType[]; }) {\r\n\tif (props.items?.length > 0) {\r\n\t\treturn (\r\n\t\t\t
    \r\n\t\t\t\t{props.items.map((item) => (\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t
    \r\n\t\t)\r\n\t}\r\n\treturn null;\r\n}\r\n\r\nexport function ContactPoint(props: { item: ContactPointType }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{props.item.Name && {props.item.Name}}\r\n\t\t\t\t{props.item.ContactType && Type: {props.item.ContactType}}\r\n\t\t\t\t{props.item.Telephone?.length > 0 && Phone: {props.item.Telephone.join(\", \")}}\r\n\t\t\t\t{props.item.FaxNumber && Fax: {props.item.FaxNumber}}\r\n\t\t\t\t{props.item.Email?.length > 0 && Email:{props.item.Email.map((email) => {email})}}\r\n\t\t\t\r\n\t\t\t{props.item.SocialMedia?.length > 0 &&\r\n\t\t\t\r\n\t\t\t\t{props.item.SocialMedia.map((url) =>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t\t}\r\n\t\t\r\n\t)\r\n}\r\n\r\nexport function SocialMediaIcon(props: { url: string }) {\r\n\t//It's okay to ignore the typescript errors here\r\n\ttry {\r\n\t\tvar domainParts = props.url.toLowerCase().replace(\"http://\", \"\").replace(\"https://\", \"\").split(\"/\")[0].split(\".\");\r\n\t\tvar domain = domainParts[domainParts.length - 2];\r\n\r\n\t\tvar definition =\r\n\t\t\tfindIconDefinition({ prefix: \"fab\", iconName: domain + \"-square\" as IconName }) ||\r\n\t\t\tfindIconDefinition({ prefix: \"fab\", iconName: domain as IconName }) ||\r\n\t\t\tfindIconDefinition({ prefix: \"fas\", iconName: \"hashtag\" });\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t)\r\n\t}\r\n\tcatch (e) {\r\n\t\tconsole.log(\"Error parsing social media URL: \", { url: props.url, error: e });\r\n\t\treturn null;\r\n\t}\r\n}\r\n\r\nconst ContactPointWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\twidth: 100%;\r\n\tpadding: 5px;\r\n\tfont-size: 85%;\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px dashed #CCC;\r\n\t}\r\n`;\r\n\r\nconst ContactDetails = styled.div`\r\n\tflex: 1 1 auto;\r\n\tmargin-right: auto;\r\n\tpadding-right: 10px;\r\n\r\n\t&:empty {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst ContactName = styled.div`\r\n\r\n`;\r\n\r\nconst ContactType = styled.div`\r\n\t\r\n`;\r\n\r\nconst ContactTelephone = styled.div`\r\n\r\n`;\r\n\r\nconst ContactFaxNumber = styled.div`\r\n\r\n`;\r\n\r\nconst ContactEmail = styled.div`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\r\n\t& a {\r\n\t\tmargin: 0 5px;\r\n\t}\r\n`;\r\n\r\nconst ContactSocialMedia = styled.div`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\tmargin: 0 auto;\r\n\r\n\t& a {\r\n\t\tmargin: 2px;\r\n\t}\r\n`;\r\n","import React, { ReactNode, useEffect, useRef, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Organization, Credential, Assessment, LearningOpportunity, ScheduledOffering, Place as PlaceType, SupportService } from '../../types/external';\r\nimport { Place } from './Place';\r\nimport { isFilled } from '../../validation';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport locationsIcon from '../../assets/images/icons/icon-location-blue-green-01.svg';\r\nimport {\r\n Label,\r\n MapWrapper,\r\n} from './styles';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport {\r\n faChevronLeft,\r\n\tfaChevronRight,\r\n\tfaChevronDown\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport GoogleMap from 'google-map-react';\r\nimport { defaultMapSetting } from '../../shared/data';\r\nimport { googleMapsKey } from '../../shared/globals';\r\nimport { setupMap } from '../../services/map';\r\nimport JurisdictionProfileList from '../../components/DetailPage/JurisdictionProfile';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport ContactPointList from './ContactPoint';\r\n\r\ninterface Props {\r\n\titem: Credential | Assessment | LearningOpportunity | Organization | ScheduledOffering | SupportService;\r\n\tpageSectionDescription?: string;\r\n}\r\n\r\nexport default function LocationPageSection(props: Props) {\r\n const googleMap = useRef();\r\n const [selectedAddressIndex, setSelectedAddressIndex] = useState(0);\r\n\r\n\tvar generic = props.item as any;\r\n\tvar locations: PlaceType[] = generic.Address || generic.AvailableAt || [];\r\n\r\n\t//Filter out empty addresses\r\n\tlocations = locations.filter((item) => { return Object.keys(item).length > 0 });\r\n\r\n\t//Filter out locations whose only property is TargetContactPoint\r\n\tvar contactOnlyLocations = locations.filter((location) => (Object.keys(location).length == 1 && location.TargetContactPoint?.length > 0));\r\n\tlocations = locations.filter((location) => (contactOnlyLocations.indexOf(location) == -1));\r\n\r\n\t//Inject Location IDs for accessibility and to reference the numbered icons on the page\r\n\tlocations = locations.map((location, index) => {\r\n\t\treturn {\r\n\t\t\t...location,\r\n\t\t\tMarkerLabel: location.MarkerLabel || (index + 1).toString()\r\n\t\t}\r\n\t});\r\n\r\n\t//Get a list of all real locations with contacts\r\n\tvar allLocationContacts = locations.filter(m => m.TargetContactPoint).flatMap(m => m.TargetContactPoint);\r\n\r\n\t//Get a list of all contact-only data\r\n\tvar nonLocationContacts = contactOnlyLocations.flatMap((location) => (location.TargetContactPoint));\r\n\tif (generic.Email?.length > 0 || generic.SocialMedia?.length > 0) {\r\n\t\tnonLocationContacts.push({\r\n\t\t\tName: \"\",\r\n\t\t\tEmail: generic.Email,\r\n\t\t\tSocialMedia: generic.SocialMedia,\r\n\t\t\tContactType: \"\",\r\n\t\t\tFaxNumber: \"\",\r\n\t\t\tTelephone: []\r\n\t\t});\r\n\t}\r\n\r\n\t//Handle map marker clicks\r\n function nextMapMarkerOnClick(direction: 'left' | 'right') {\r\n return () => {\r\n const nextIndex =\r\n direction === 'left'\r\n ? selectedAddressIndex - 1\r\n : selectedAddressIndex + 1;\r\n const fallbackIndex =\r\n direction === 'left' ? locations.length - 1 : 0;\r\n\r\n if (locations[nextIndex]) {\r\n setSelectedAddressIndex(nextIndex);\r\n } else if (locations[fallbackIndex]) {\r\n setSelectedAddressIndex(fallbackIndex);\r\n }\r\n };\r\n }\r\n\r\n useEffect(() => {\r\n if (isFilled(locations) && googleMap.current) {\r\n const lat = locations[selectedAddressIndex].Latitude;\r\n const lng = locations[selectedAddressIndex].Longitude;\r\n\t\t\tgoogleMap.current.panTo({ lat, lng });\r\n\t\t\tgoogleMap.current.setZoom(12);\r\n }\r\n\t}, [googleMap, locations, selectedAddressIndex]);\r\n\r\n\t//Handle jurisdiction text\r\n const entityType = props.item.BroadType;\r\n\tvar mainJurisdicionLabel = \"This \" + entityType + \" has these assertions in:\";\r\n\tvar jurisdictionExceptionLabel = \"This \" + entityType + \" does not have these assertions in:\";\r\n if(entityType == \"Organization\") {\r\n mainJurisdicionLabel = \"This organization has a notable presence in:\";\r\n jurisdictionExceptionLabel = \"This organization does not have a notable presence in:\";\r\n\t}\r\n\r\n return (\r\n \r\n\t\t\t\r\n {isFilled(props.item.AvailabilityListing) && (\r\n \r\n \r\n {props.item.AvailabilityListing.map(\r\n (listing, index) => (\r\n \r\n {listing}\r\n\t\t\t\t\t\t\t\t\r\n ),\r\n )}\r\n \r\n )}\r\n {isFilled(locations) && (\r\n \r\n \r\n {locations.length > 1 && (\r\n\t\t\t\t\t\t\t\t\r\n \r\n \r\n )}\r\n \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n {locations.length > 1 && (\r\n\t\t\t\t\t\t\t\t\r\n \r\n \r\n )}\r\n \r\n \r\n {\r\n setupMap(map, maps, locations || []);\r\n googleMap.current = map;\r\n }}\r\n />\r\n \r\n\t\t\t\t\t\t{(locations.length > 1 || allLocationContacts.length > 0) && (\r\n\t\t\t\t\t\t\t 0 ? \" and \" + allLocationContacts.length + \" Contact\" + (allLocationContacts.length == 1 ? \"\" : \"s\") : \"\")}>\r\n\t\t\t\t\t\t\t\t{locations.map((place, index) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t setSelectedAddressIndex(index)}\r\n\t\t\t\t\t\t\t\t\t\t\tkey={`cr-location-${index}`}\r\n\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t))}\r\n \r\n )}\r\n \r\n )}\r\n\t\t\t\t{nonLocationContacts?.length > 0 &&\r\n\t\t\t\t\t(\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t)\r\n\t\t\t\t}\r\n\t\t\t\t{isFilled(props.item.SameAs) && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{props.item.SameAs.map((url) => (\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t{url}\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{isFilled(props.item.Jurisdiction) && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n
    \r\n \r\n );\r\n}\r\n\r\nfunction NumberedLocation(props: { number: number; place: PlaceType; }) {\r\n\tif (props.place != null) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{props.number}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn null;\r\n}\r\n\r\nfunction LocationListing(props: { label: string, children: ReactNode }) {\r\n\tconst [isOpen, setIsOpen] = useState(false);\r\n\r\n\tfunction openOrClose() {\r\n\t\tsetIsOpen(!isOpen);\r\n\t}\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t{props.label}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t{isOpen ? (\r\n\t\t\t\t{props.children}\r\n\t\t\t) : null}\r\n\t\t\r\n\t);\r\n}\r\n\r\nconst LocationScroller = styled.div`\r\n display: flex;\r\n align-items: stretch;\r\n margin-bottom: 10px;\r\n`;\r\n\r\nconst LocationScrollerButton = styled.button`\r\n cursor: pointer;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: ${(p) => p.theme.color.aquaLight};\r\n\t}\r\n`;\r\n\r\nconst LocationListingItem = styled.div`\r\n\t& .ContactPointList {\r\n\t\tpadding: 0 10px;\r\n\t}\r\n\r\n\t&:not(:last-child) { border-bottom: 1px solid #CCC; }\r\n`;\r\n\r\nconst LocationListingItemButton = styled.button`\r\n\tdisplay: block;\r\n\tborder-radius: 3px;\r\n\twidth: 100%;\r\n\ttext-align: left;\r\n\tborder: none;\r\n\tbackground-color: transparent;\r\n\tpadding: 5px 10px;\r\n\tcursor: pointer;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: ${(p) => p.theme.color.aquaLight};\r\n\t}\r\n\r\n`;\r\n\r\nexport const LocationNumber = styled.label`\r\n background-color: ${(p) => p.theme.color.aquaDark};\r\n padding: 5px 10px;\r\n border-radius: 50%;\r\n margin-right: 10px;\r\n`;\r\n\r\nconst LocationScrollerContent = styled.div`\r\n\tflex: 1 1 auto;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tpadding: 0 10px;\r\n`;\r\n\r\nconst NumberedLocationWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\twidth: 100%;\r\n`;\r\n\r\nconst LocationListingContent = styled.div`\r\n padding-top: 10px;\r\n`;\r\n\r\nconst LocationListingHeading = styled.button`\r\n display: flex;\r\n align-items: center;\r\n cursor: pointer;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\tpadding: 10px;\r\n\tborder-radius: 3px;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: ${(p) => p.theme.color.aquaLight};\r\n\t}\r\n\r\n\t& svg {\r\n\t\tmargin-left: auto;\r\n\t\tfont-size: 20px;\r\n\t}\r\n`;\r\n\r\nconst AvailabilityLink = styled.a`\r\n\tdisplay: block;\r\n\tmargin-bottom: 5px;\r\n\tword-break: break-word;\r\n`;","import React, { useContext, useState, useEffect } from 'react';\r\nimport { renderToString } from 'react-dom/server';\r\nimport styled from 'styled-components/macro';\r\nimport { MainItemBroadType } from '../../types/internal';\r\nimport { Button } from '../common';\r\nimport Banner from '../Banner';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faCheck } from '@fortawesome/free-solid-svg-icons';\r\nimport { isOrganization, isTransferValue} from '../../utils';\r\nimport { WhiteLink } from '../Banner/styles';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\nimport { addCompareItem, getCompareItemByCTID, removeCompareItem, getCompareItems, updateStateOnCompareChange } from '../../utils/LocalStorage';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\nimport { widgetGetColor, widgetGetSingleLabelForCTDLType } from '../../utils/SiteWidgetizer';\r\n\r\n\r\ninterface Props {\r\n item: MainItemBroadType;\r\n bannerIcon: string;\r\n\tfallbackIcon?: string;\r\n}\r\n\r\nexport default function PageBanner(props: Props) {\r\n\tconst [compareItems, setCompareItems] = useState(getCompareItems());\r\n\r\n\tuseEffect(() => {\r\n\t\tupdateStateOnCompareChange(() => { setCompareItems([...getCompareItems()]); });\r\n\t\tsetCompareItems(getCompareItems());\r\n\t}, []);\r\n\r\n function getSubTitle() {\r\n return isOrganization(props.item)\r\n ? undefined\r\n : props.item.OwnedByLabel && props.item.OwnedByLabel.Label;\r\n }\r\n\r\n\tfunction getSubTitleLink() {\r\n\t\tif (!isOrganization(props.item) && props.item.OwnedByLabel && props.item.OwnedByLabel.Label) {\r\n\t\t\treturn props.item.OwnedByLabel.URL ?\r\n\t\t\t\t{props.item.OwnedByLabel.Label} :\r\n\t\t\t\t<>{props.item.OwnedByLabel.Label};\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n \r\n\tfunction getLegacyLink() {\r\n\t\tif ( props.item.Meta_Id ) {\r\n const url = legacySourceUrl + \"/\" + props.item.BroadType + \"/\" + props.item.Meta_Id;\r\n const mystyle = {\r\n\t\t\t\tcolor: \"transparent\",\r\n\t\t\t\t//backgroundColor: \"#0a2942\",\r\n marginLeft: \"10px\"\r\n };\r\n\t\t\treturn <>\r\n\t\t\t\tLegacy Version\r\n \r\n\t\t\t\t\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar hasBadge: boolean = (props.item as any).Meta_HasVerificationBadge;\r\n\r\n\tfunction handleCompare() {\r\n\t\tgetCompareItems().find((item: any) => item.CTID == props.item.CTID) == null ? addCompareItem(props.item) : removeCompareItem(props.item);\r\n\t}\r\n\r\n\tconsole.log(\"Item\", props);\r\n\r\n return (\r\n Last updated: {props.item.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n\t\t\totherContent={\r\n\t\t\t\t<>\r\n\t\t\t\t\t{(((props.item as any)?.CTDLType != \"ceasn:Competency\") && ((props.item as any)?.CTDLType != \"CredentialingAction\")) && (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n }\r\n />\r\n );\r\n}\r\n\r\nfunction CustomButtonBox(props: { resource: any }) {\r\n\t//Initialize the container's identifier once per page load\r\n\tconst [customButtonBoxID, setCustomButtonBoxID] = useState(\"\");\r\n\tif (!customButtonBoxID) {\r\n\t\tsetCustomButtonBoxID((crypto as any).randomUUID() as string);\r\n\t}\r\n\r\n\t//Call the function to setup the container\r\n\tvar isInIframe = window != window.parent;\r\n\tuseEffect(() => {\r\n\t\tif (!props.resource?.Name) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tsetupCustomButtonBox();\r\n\t}, [props.resource]);\r\n\r\n\t//Setup the container\r\n\tfunction setupCustomButtonBox() {\r\n\t\t//Cancel if we aren't in an iframe\r\n\t\tif (!isInIframe) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t//Find the container or try again\r\n\t\tvar container = document.getElementById(customButtonBoxID) as any;\r\n\t\tif (!container) {\r\n\t\t\tsetTimeout(setupCustomButtonBox, 100);\r\n\t\t}\r\n\t\telse {\r\n\t\t\t//Create an event listener for when we are told to render the custom button\r\n\t\t\twindow.addEventListener(\"message\", event => {\r\n\t\t\t\tvar eventData = typeof (event.data) == \"string\" ? JSON.parse(event.data) : event.data;\r\n\t\t\t\tif (event.source == window.parent && eventData?.Type == \"RenderCustomButton\") {\r\n\t\t\t\t\t//Wipe out the container's contents\r\n\t\t\t\t\tcontainer.innerHTML = \"\";\r\n\r\n\t\t\t\t\t//If there is any content...\r\n\t\t\t\t\tif (eventData.Data.Content) {\r\n\t\t\t\t\t\t//Create the button\r\n\t\t\t\t\t\tvar button = document.createElement(\"button\");\r\n\t\t\t\t\t\tbutton.style.cssText = eventData.Data.Style;\r\n\t\t\t\t\t\tbutton.innerHTML = eventData.Data.Content;\r\n\r\n\t\t\t\t\t\t//Add a listener for when the button is clicked\r\n\t\t\t\t\t\tbutton.addEventListener(\"click\", click => {\r\n\t\t\t\t\t\t\twindow.parent.postMessage(JSON.stringify({\r\n\t\t\t\t\t\t\t\tType: \"CustomButtonClicked\",\r\n\t\t\t\t\t\t\t\tData: props.resource\r\n\t\t\t\t\t\t\t}), \"*\");\r\n\t\t\t\t\t\t\tbutton.disabled = true;\r\n\t\t\t\t\t\t\tbutton.innerHTML = \"Loading... \" + renderToString();\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t//Attach the button\r\n\t\t\t\t\t\tcontainer.appendChild(button);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t//Tell the parent page that we've loaded the data\r\n\t\t\twindow.parent.postMessage(JSON.stringify({\r\n\t\t\t\tType: \"ResourceLoaded\",\r\n\t\t\t\tData: props.resource\r\n\t\t\t}), \"*\");\r\n\t\t}\r\n\t}\r\n\r\n\t//Return the container or null\r\n\treturn isInIframe ? : null;\r\n}\r\n\r\nconst CustomButtonContainer = styled.div`\r\n\tpadding: 5px 0;\r\n\t\r\n\t& button {\r\n\t\tdisplay: block;\r\n\t\twidth: 100%;\r\n\t\tborder: none;\r\n\t\tborder-radius: 3px;\r\n\t\tpadding: 10px;\r\n\t\tfont-size: 1rem;\r\n\t\tline-height: 1.125;\r\n\t\tbackground: ${(props) => widgetGetColor(\"SearchResultLink\", false, props.theme.color.aquaDark)};\r\n border-color: ${(props) => widgetGetColor(\"SearchResultLink\", true, props.theme.color.aquaDark)};\r\n color: ${(props) => widgetGetColor(\"SearchResultLink\", true, props.theme.color.blueDark)};\r\n\r\n\t\t&:hover {\r\n\t\t\tfilter: brightness(1.5);\r\n\t\t}\r\n\t}\r\n`;\r\n","export default __webpack_public_path__ + \"static/media/icon-quality-assurance-blue-green-01.c03baf90.svg\";","import styled from 'styled-components/macro';\r\n\r\nexport const Wrapper = styled.div`\r\n position: fixed;\r\n width: 100%;\r\n height: 100%;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n z-index: 1;\r\n background-color: rgba(10, 41, 66, 0.65);\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n`;\r\n\r\nexport const StyledModal = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n background-color: ${(p) => p.theme.color.white};\r\n\tmin-height: 80%;\r\n max-height: 80%;\r\n width: 80%;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n width: 95%;\r\n }\r\n`;\r\n\r\nexport const Body = styled.div`\r\n overflow: auto;\r\n\tpadding: 20px;\r\n`;\r\n\r\nexport const Heading = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 11px 20px 9px 20px;\r\n\tborder-bottom: 1px solid ${(p) => p.theme.color.aquaDark};\r\n`;\r\n\r\nexport const HeadingText = styled.h3`\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\tfont-size: 26px;\r\n`;\r\n\r\nexport const SubHeading = styled.div`\r\n\tpadding: 5px 20px 7px 20px;\r\n\tfont-size: 25px;\r\n\tborder-bottom: 1px solid ${(p) => p.theme.color.aquaDark};\r\n`;\r\n\r\nexport const Close = styled.button`\r\n cursor: pointer;\r\n border: none;\r\n background-color: transparent;\r\n`;\r\n","import axios from 'axios';\r\nimport { appURL } from '../../shared/globals';\r\n\r\nexport var ajaxCacheData = [];\r\n\r\nexport function getResourceByURI(uri, updateState, onLoading, onSuccess, onError) {\r\n\turi = (uri || \"\").replace(\"http://\", \"https://\");\r\n\tconsole.log(\"Received request to get resource via URI: \" + uri, ajaxCacheData);\r\n\tvar match = ajaxCacheData.filter(m => { return m.URI == uri })[0];\r\n\tif (match) {\r\n\t\tmatch.Status == \"loading\" && onLoading?.();\r\n\t\tmatch.Status == \"success\" && onSuccess?.(match.Data);\r\n\t\tmatch.Status == \"error\" && onError?.(match.Data);\r\n\t}\r\n\telse {\r\n\t\tmatch = {\r\n\t\t\tURI: uri,\r\n\t\t\tData: null,\r\n\t\t\tStatus: \"loading\"\r\n\t\t};\r\n\t\tajaxCacheData.push(match);\r\n\r\n\t\taxios.get(uri).then((response) => {\r\n\t\t\tconsole.log(\"Got resource by URI\", response);\r\n\t\t\tmatch.Data = response.data;\r\n\t\t\tmatch.Status = \"success\";\r\n\t\t\tconsole.log(\"Updating state\");\r\n\t\t\tupdateState?.([]);\r\n\t\t\tonSuccess?.(match.Data);\r\n\t\t}).catch((response) => {\r\n\t\t\tconsole.log(\"Error getting resource by URI\", response);\r\n\t\t\tmatch.Data = response.data;\r\n\t\t\tmatch.Status = \"error\";\r\n\t\t\tconsole.log(\"Updating state\");\r\n\t\t\tupdateState?.([]);\r\n\t\t\tonError?.(match.Data);\r\n\t\t});\r\n\r\n\t\tupdateState?.([]);\r\n\t\tonLoading?.();\r\n\t}\r\n\r\n\treturn match;\r\n}\r\n\r\nexport function englishOrNull(languageMap) {\r\n\tif (typeof languageMap === \"string\") {\r\n return languageMap;\r\n }\r\n //for all english\r\n if (languageMap?.[\"en-US\"]) return languageMap[\"en-US\"];\r\n if (languageMap?.[\"en-us\"]) return languageMap[\"en-us\"];\r\n\r\n // // Check for any key that starts with \"en-\"\r\n for (const key in languageMap) {\r\n\t\tdebugger;\r\n if (key.startsWith(\"en\")) {\r\n return languageMap[key];\r\n }\r\n }\r\n\treturn null;\r\n}\r\n\r\nexport function createKeywordSearchLink(searchType, text) {\r\n\treturn { Label: text, URL: appURL + \"/search?autosearch=true&searchType=\" + searchType + \"&keywords=\" + text };\r\n}\r\n\r\nexport function createKeywordSearchLinkListFromCredentialAlignmentObjectList(searchType, itemList) {\r\n\treturn itemList?.map(item => { return createKeywordSearchLink(searchType, englishOrNull(item[\"ceterms:targetNodeName\"])); });\r\n}\r\n\r\nexport function createReferenceFrameworkFromCredentialAlignmentObject(searchType, cao) {\r\n\tvar label = englishOrNull(cao[\"ceterms:targetNodeName\"]) || cao[\"ceterms:codedNotation\"];\r\n\tvar url = appURL + \"/search?autosearch=true&searchType=\" + searchType + \"&keywords=\" + label;\r\n\treturn {\r\n\t\tLabel: label,\r\n\t\tURL: url,\r\n\t\tCodedNotation: cao[\"ceterms:codedNotation\"],\r\n\t\tDescription: englishOrNull(cao[\"ceterms:targetNodeDescription\"]),\r\n\t\tTargetNode: cao[\"ceterms:targetNode\"],\r\n\t\tFrameworkName: englishOrNull(cao[\"ceterms:frameworkName\"]),\r\n\t\tFramework: cao[\"ceterms:framework\"]\r\n\t};\r\n}\r\n\r\nwindow.AJAXCacheV2 = window.AJAXCacheV2 || [];\r\nexport var AJAXCacheV2 = window.AJAXCacheV2;\r\n\r\nexport function addResourceToCache(url, data) {\r\n\tvar match = window.AJAXCacheV2.find(m => m.URL == url);\r\n\tif (!match) {\r\n\t\twindow.AJAXCacheV2.push({\r\n\t\t\tURL: url,\r\n\t\t\tResponse: data,\r\n\t\t\tError: null,\r\n\t\t\tStatus: \"success\",\r\n\t\t\tOnSuccess: [],\r\n\t\t\tOnError: []\r\n\t\t});\r\n\t}\r\n}\r\n\r\nexport function getResourceByURLWithoutState(url, onLoading, onSuccess, onError, customConfig) {\r\n\t//Find the request in the queue\r\n\turl = (url || \"\").replace(\"http://\", \"https://\");\r\n\tvar match = window.AJAXCacheV2.filter(m => m.URL == url)[0];\r\n\r\n\t//If not found, create it\r\n\tif (!match) {\r\n\t\tmatch = {\r\n\t\t\tURL: url,\r\n\t\t\tResponse: null,\r\n\t\t\tError: null,\r\n\t\t\tStatus: \"loading\",\r\n\t\t\tOnSuccess: [], //Success and Error handlers get .push()'d later, so no need to include them here\r\n\t\t\tOnError: []\r\n\t\t};\r\n\t\twindow.AJAXCacheV2.push(match);\r\n\r\n\t\t//Get the data, then...\r\n\t\tcustomConfig = customConfig || { headers: { \"Accept\": \"application/json\" } };\r\n\t\taxios.get(url, customConfig).then(response => {\r\n\t\t\t//On success, run all of the success handlers associated with this match\r\n\t\t\tmatch.Response = response.data;\r\n\t\t\tmatch.Status = \"success\";\r\n\t\t\tconsole.log(\"Got resource by URL\", match);\r\n\r\n\t\t\tmatch.OnSuccess.forEach(handler => {\r\n\t\t\t\thandler?.(match.Response);\r\n\t\t\t});\r\n\t\t}).catch(error => {\r\n\t\t\t//On error, run all of the error handlers associated with this match\r\n\t\t\tmatch.Error = error;\r\n\t\t\tmatch.Status = \"error\";\r\n\t\t\tconsole.log(\"Error getting resource by URL\", match);\r\n\r\n\t\t\tmatch.OnError.forEach(handler => {\r\n\t\t\t\thandler?.(match.Error);\r\n\t\t\t})\r\n\t\t});\r\n\r\n\t}\r\n\r\n\t//If the match was found and it's still loading, then...\r\n\tif (match.Status == \"loading\") {\r\n\t\t//Add the success and error handlers to its handler lists and run the loading handler\r\n\t\tonSuccess && match.OnSuccess.push(onSuccess);\r\n\t\tonError && match.OnError.push(onError);\r\n\t\tonLoading?.();\r\n\t}\r\n\t//If the match already loaded, just run the appropriate handler\r\n\telse {\r\n\t\tmatch.Status == \"success\" && onSuccess?.(match.Response);\r\n\t\tmatch.Status == \"error\" && onError?.(match.Error);\r\n\t}\r\n\r\n\treturn match;\r\n}\r\n\r\n//Utility method to get something by URL (either locally or by fetching it), then run a render method\r\nexport function getAndRenderByURL(url, localGraph, fallbackObject, renderMethod) {\r\n\t//If the data is found in the local graph, run the render method\r\n\turl = (url || \"\").replace(\"http://\", \"https://\");\r\n\tvar data = localGraph.filter(m => m[\"@id\"] == url)[0];\r\n\tif (data) {\r\n\t\trenderMethod?.(data);\r\n\t\treturn;\r\n\t}\r\n\t//Otherwise, get the data...\r\n\telse {\r\n\t\tgetResourceByURLWithoutState(url, null,\r\n\t\t\t//On success, run the render method\r\n\t\t\t(response) => {\r\n\t\t\t\trenderMethod?.(response);\r\n\t\t\t},\r\n\t\t\t//On error, run the render method with a fallback object\r\n\t\t\t(error) => {\r\n\t\t\t\tfallbackObject = {\r\n\t\t\t\t\t...(fallbackObject || {}),\r\n\t\t\t\t\t\"request:error\": error\r\n\t\t\t\t};\r\n\t\t\t\trenderMethod?.(fallbackObject);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n}\r\n//\r\n\r\nexport function getAJAXCacheV2() {\r\n\treturn AJAXCacheV2;\r\n}\r\n//","import React, { ReactNode, useRef, useState, useEffect } from 'react';\r\nimport styled, { DefaultTheme, StyledComponent } from 'styled-components/macro';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faTimes } from '@fortawesome/free-solid-svg-icons';\r\nimport { Wrapper, StyledModal, Close, Heading, HeadingText, SubHeading, Body } from './styles';\r\nimport { Button } from '../common';\r\nimport { englishOrNull } from '../GetResourceByURI';\r\nimport { postData } from '../MiniSearch';\r\nimport { apiUrl, appURL } from '../../shared/globals';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\nimport { Outline as OutlineType } from '../../types/external';\r\nimport { Outline } from '../DetailPage/Outline';\r\nimport { getResourceByURLWithoutState } from '../GetResourceByURI';\r\nimport { useGet } from '../../hooks';\r\n\r\n\r\nexport interface ModalButtonAndWindowProps {\r\n\titems: any[];\r\n\tbuttonLabel: string;\r\n\tresourceTitle: string;\r\n\tmodalTitle?: string;\r\n\thideCount?: boolean;\r\n\tContent: (loadedData?: any) => JSX.Element;\r\n\tWrapper?: StyledComponent | undefined\r\n\tButtonContent?: () => JSX.Element;\r\n\tonButtonClick?: () => void;\r\n\tgetDataOnClickFromURL?: string;\r\n\toverrideCount?: number;\r\n}\r\nexport function ModalButtonAndWindow(props: ModalButtonAndWindowProps) {\r\n\tvar OuterWrapper = props.Wrapper || ModalButtonWrapper;\r\n\tconst [isOpen, setIsOpen] = useState(false);\r\n\tconst [loadedData, setLoadedData] = useState(null as any);\r\n\tconst [isLoading, hasError, get] = useGet();\r\n\r\n\tfunction clickInsideModal(e: React.MouseEvent) {\r\n\t\te.stopPropagation();\r\n\t}\r\n\r\n\tfunction loadData() {\r\n\t\tif (props.getDataOnClickFromURL) {\r\n\t\t\tget(props.getDataOnClickFromURL, (result: any) => {\r\n\t\t\t\tsetLoadedData(result);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\treturn (props.items?.length > 0 || props.getDataOnClickFromURL || loadedData) && (\r\n\t\t\r\n\t\t\t setIsOpen(false)}>Close modal window\r\n\t\t\t\r\n\t\t\t{isOpen &&\r\n\t\t\t\t setIsOpen(false)}>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.resourceTitle}\r\n\t\t\t\t\t\t\t setIsOpen(false)} aria-label={\"Close modal window\"}>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.modalTitle || props.buttonLabel}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.getDataOnClickFromURL && !loadedData && }\r\n\t\t\t\t\t\t\t{(loadedData || !props.getDataOnClickFromURL) && }\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t setIsOpen(false)}>Close modal window\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nexport interface ModalButtonAndWindowWithRegistrySearchProps extends ModalButtonAndWindowProps {\r\n\tctdlQuery: any,\r\n\tResultRenderer?: (data: any) => JSX.Element,\r\n\thasResultsHandler?: () => void,\r\n\tnoResultsHandler?: () => void\r\n}\r\nexport function ModalButtonAndWindowWithRegistrySearch( props: ModalButtonAndWindowWithRegistrySearchProps ) {\r\n\treturn {\r\n\t\t\treturn {\r\n\t\t\t\tQuery: props.ctdlQuery,\r\n\t\t\t\tSkip: skip,\r\n\t\t\t\tTake: take,\r\n\t\t\t\tUseBetaAPI: true\r\n\t\t\t};\r\n\t\t}}\r\n\t\tgetResultsFromResponse={(response: any) => {\r\n\t\t\treturn response.Result.data;\r\n\t\t}}\r\n\t\tgetTotalResultsFromResponse={(response: any) => {\r\n\t\t\tvar total = response.Result.total;\r\n\t\t\tif (total == 0) {\r\n\t\t\t\tprops.noResultsHandler?.();\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tprops.hasResultsHandler?.();\r\n\t\t\t}\r\n\t\t\treturn total;\r\n\t\t}}\r\n\t/>\r\n}\r\n\r\nexport interface ModalButtonAndWindowWithSearchProps extends ModalButtonAndWindowProps {\r\n\tgetQuery: (skip: number, take: number) => any,\r\n\tgetResultsFromResponse: (response: any) => Array,\r\n\tgetTotalResultsFromResponse: (response: any) => number,\r\n\tqueryURL: string,\r\n\tResultRenderer?: (data: any) => JSX.Element\r\n}\r\nexport function ModalButtonAndWindowWithSearch( props: ModalButtonAndWindowWithSearchProps ) {\r\n\tvar OuterWrapper = props.Wrapper || ModalButtonWrapper;\r\n\tconst [isOpen, setIsOpen] = useState(false);\r\n\tconst [searchState, setSearchState] = useState({\r\n\t\tTotalResults: 0,\r\n\t\tSkip: 0,\r\n\t\tTake: 10,\r\n\t\tBusy: false,\r\n\t\tAllowSearch: true,\r\n\t\tError: null as any\r\n\t});\r\n\tconst [loadedResults, setLoadedResults] = useState([] as Array);\r\n\tconst [renderTrick, setRenderTrick] = useState({ render: true });\r\n\tvar scrollTimer = null as any;\r\n\r\n\tfunction clickInsideModal(e: React.MouseEvent) {\r\n\t\te.stopPropagation();\r\n\t}\r\n\r\n\tvar ResultRenderer = props.ResultRenderer || SimpleResult;\r\n\r\n\tfunction doSearch() {\r\n\t\tconsole.log(\"search entered\");\r\n\t\tif (!searchState.AllowSearch) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconsole.log(\"search begins\");\r\n\t\tsearchState.Busy = true;\r\n\t\tsearchState.AllowSearch = false;\r\n\t\trefreshSearchStateAndResults();\r\n\t\tpostData(\r\n\t\t\tprops.queryURL,\r\n\t\t\tprops.getQuery(searchState.Skip, searchState.Take),\r\n\t\t\t(response: any) => {\r\n\t\t\t\tsetLoadedResults(loadedResults.concat(props.getResultsFromResponse(response)));\r\n\t\t\t\tsearchState.TotalResults = props.getTotalResultsFromResponse(response);\r\n\t\t\t\tsearchState.Skip += searchState.Take;\r\n\t\t\t\tsearchState.Busy = false;\r\n\t\t\t\tif (searchState.Skip < searchState.TotalResults) {\r\n\t\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\t\tsearchState.AllowSearch = true; //Allow another search if there is another page of results to get\r\n\t\t\t\t\t\trefreshSearchStateAndResults();\r\n\t\t\t\t\t}, 200);\r\n\t\t\t\t}\r\n\t\t\t\trefreshSearchStateAndResults();\r\n\t\t\t},\r\n\t\t\t(error: any) => {\r\n\t\t\t\tsearchState.Error = error;\r\n\t\t\t\trefreshSearchStateAndResults();\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tuseEffect(() => {\r\n\t\tdoSearch();\r\n\t}, []);\r\n\r\n\tfunction handleScroll(e: any) {\r\n\t\tconsole.log(\"scroll\");\r\n\t\tif (e.target.scrollTop + e.target.clientHeight >= e.target.scrollHeight - 250) {\r\n\t\t\tconsole.log(\"triggered\");\r\n\t\t\tclearTimeout(scrollTimer);\r\n\t\t\tscrollTimer = setTimeout(() => {\r\n\t\t\t\tconsole.log(\"doing search\");\r\n\t\t\t\tdoSearch();\r\n\t\t\t}, 250);\r\n\t\t}\r\n\t}\r\n\r\n\tfunction refreshSearchStateAndResults() {\r\n\t\tsetSearchState(searchState);\r\n\t\tsetRenderTrick({ render: !renderTrick.render });\r\n\t}\r\n\r\n\treturn searchState.TotalResults > 0 && (\r\n\t\t\r\n\t\t\t{searchState.TotalResults > 0 && \r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{isOpen &&\r\n\t\t\t\t setIsOpen(false)}>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.resourceTitle}\r\n\t\t\t\t\t\t\t setIsOpen(false)} aria-label={\"Close modal window for '\" + props.resourceTitle + \"'\"}>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{searchState.TotalResults + \" \" + (props.modalTitle || props.buttonLabel)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{loadedResults.map((result, index) => (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{searchState.Busy && }\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nexport function SimpleResult(props: { data: any }) {\r\n\tvar type = props.data[\"@type\"];\r\n\tvar ctid = props.data[\"ceterms:ctid\"] || \"\";\r\n\tvar url = appURL + \"/resources/\" + ctid;\r\n\tif (type == \"ceasn:Competency\") {\r\n\t\tvar host = props.data[\"ceasn:isPartOf\"] || props.data[\"ceterms:isMemberOf\"];\r\n\t\turl = appURL + \"/resources/\" + (Array.isArray(host) ? host[0] : host) + \"?competencyCTID=\" + ctid;\r\n\t}\r\n\tvar name = englishOrNull(props.data[\"ceterms:name\"]) || englishOrNull(props.data[\"ceasn:name\"]) || englishOrNull(props.data[\"skos:prefLabel\"]) || englishOrNull(props.data[\"ceasn:competencyLabel\"]) || \"\";\r\n\tvar description = englishOrNull(props.data[\"ceterms:description\"]) || englishOrNull(props.data[\"ceasn:description\"]) || englishOrNull(props.data[\"skos:definition\"]) || englishOrNull(props.data[\"ceasn:competencyText\"]) || \"\";\r\n\treturn (\r\n\t\t\r\n\t\t\t{name && {name}}\r\n\t\t\t{description && {description}}\r\n\t\t\r\n\t)\r\n}\r\n\r\nexport function OutlineResult(props: { data: any }) {\r\n\tconst [provider, setProvider] = useState({} as OutlineType);\r\n\tvar ctid = props.data[\"ceterms:ctid\"] || \"\";\r\n\tvar url = appURL + \"/resources/\" + ctid;\r\n\tvar name = englishOrNull(props.data[\"ceterms:name\"]) || englishOrNull(props.data[\"ceasn:name\"]) || englishOrNull(props.data[\"skos:prefLabel\"]) || englishOrNull(props.data[\"ceasn:competencyLabel\"]) || \"\";\r\n\tvar description = englishOrNull(props.data[\"ceterms:description\"]) || englishOrNull(props.data[\"ceasn:description\"]) || englishOrNull(props.data[\"skos:definition\"]) || englishOrNull(props.data[\"ceasn:competencyText\"]) || \"\";\r\n\tvar image = props.data[\"ceterms:image\"] || \"\";\r\n\tvar providerURLRaw = [props.data[\"ceterms:ownedBy\"], props.data[\"ceterms:offeredBy\"], props.data[\"ceasn:creator\"], props.data[\"ceasn:publisher\"], [\"\"]].filter(m => m && m.length > 0)[0] || [\"\"];\r\n\tvar providerURL = Array.isArray(providerURLRaw) ? providerURLRaw[0] : providerURLRaw;\r\n\r\n\tuseEffect(() => {\r\n\t\tif (providerURL && providerURL.length > 0) {\r\n\t\t\tgetResourceByURLWithoutState(providerURL, null, (response: any) => {\r\n\t\t\t\tsetProvider({\r\n\t\t\t\t\tLabel: englishOrNull(response[\"ceterms:name\"]),\r\n\t\t\t\t\tURL: appURL + \"/resources/\" + response[\"ceterms:ctid\"]\r\n\t\t\t\t} as OutlineType);\r\n\t\t\t});\r\n\t\t}\r\n\t}, []);\r\n\r\n\tvar item = {\r\n\t\tLabel: name,\r\n\t\tDescription: description,\r\n\t\tImage: image,\r\n\t\tURL: url,\r\n\t\tProvider: provider\r\n\t} as OutlineType;\r\n\t\r\n\treturn (\r\n\t\t\r\n\t)\r\n}\r\n\r\nconst SimpleResultWrapper = styled.div`\r\n\tpadding: 10px 0;\r\n\tborder-top: 1px solid #CCC;\r\n`;\r\n\r\nconst SimpleName = styled.a`\r\n\tdisplay: block;\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst SimpleDescription = styled.div`\r\n\tpadding: 0 5px;\r\n`;\r\n\r\nconst ActivityWrapper = styled.div`\r\n\tmin-height: 100px;\r\n\tpadding: 10px;\r\n\ttext-align: center;\r\n`;\r\n\r\nconst ModalButtonWrapper = styled.div`\r\n\tmargin-bottom: 10px;\r\n`;\r\n\r\nconst InvisibleButton = styled.button`\r\n\topacity: 0;\r\n\theight: 0;\r\n\toverflow: hidden;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\twidth: 0;\r\n\tborder: none;\r\n`;","import React from 'react';\r\nimport {\r\n Assessment,\r\n Credential,\r\n LearningOpportunity,\r\n Organization,\r\n} from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent } from './Shared';\r\nimport JurisdictionProfileList from './JurisdictionProfile';\r\n\r\n\r\nexport default function JurisdictionAssertions(props: { item: Organization | Assessment | LearningOpportunity | Credential }) {\r\n return (\r\n\t\t
    \r\n\t\t\t{props.item.AccreditedIn &&\r\n\t\t\t\t\r\n\t\t\t\t\tAccredited In\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{props.item.ApprovedIn &&\r\n\t\t\t\t\r\n\t\t\t\t\tApproved In\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{props.item.OfferedIn &&\r\n\t\t\t\t\r\n\t\t\t\t\tOffered In\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{props.item.RecognizedIn &&\r\n\t\t\t\t\r\n\t\t\t\t\tRecognized In\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{props.item.RegulatedIn &&\r\n\t\t\t\t\r\n\t\t\t\t\tRegulated In\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t}\r\n
    \r\n );\r\n}\r\n","import React from 'react';\r\nimport { ModalType } from '../../types/internal';\r\nimport { Organization, Credential, Assessment, LearningOpportunity } from '../../types/external';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport qaIcon from '../../assets/images/icons/icon-quality-assurance-blue-green-01.svg';\r\nimport { Section } from './styles';\r\nimport { ModalButtonAndWindow } from '../Modal';\r\nimport OutlineList from './Outline';\r\nimport HasAnyFilled from '../HasAnyFilled';\r\nimport JurisdictionAssertions from './JurisdictionAssertions';\r\nimport SearchPills from '../SearchPills';\r\nimport { isOrganization } from '../../utils';\r\nimport { isFilled } from '../../validation';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport { Label } from './styles';\r\n\r\ninterface Props {\r\n\titem: Credential | Assessment | LearningOpportunity | Organization;\r\n openedModal?: ModalType;\r\n onOpenModalClick: (modalType: ModalType) => () => void;\r\n\tonCloseModalClick: () => void;\r\n\tpageSectionDescription?: string;\r\n}\r\n\r\nexport default function QualityAssurancePageSection(props: Props) {\r\n\tvar mergedJurisdictionAssertions = [\r\n\t\tprops.item.AccreditedIn,\r\n\t\tprops.item.ApprovedIn,\r\n\t\tprops.item.RecognizedIn,\r\n\t\tprops.item.RegulatedIn,\r\n\t\tprops.item.OfferedIn\r\n\t].filter((item) => { return item ? true : false }).flatMap((item) => { return item });\r\n\r\n return (\r\n \r\n\t\t\t\r\n\t\t\t\t{(props.item.QAReceived?.length > 0 || props.item.OwnerQAReceived?.length > 0 || mergedJurisdictionAssertions?.length > 0) &&\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n {isOrganization(props.item) && isFilled(props.item.QAPerformed) && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n )}\r\n \r\n \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-additional-information-blue-green-01.df49653f.svg\";","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAB1UExURQQEBNDQ0Pf4+RQUFGRkZMDAwN/f3////wAAAAxHnD09PW5ubnx8fObo6hxTo6CgoDAwMDlpr096uO3w9HubykpKSouLiyEhIampqcfV6MnJyZWVlVRUVAQEBLOzswsLC2OJwLfI4tfh75Ks09jY2F5eXqe93A4kHBwAAAABdFJOU/WNMd71AAADiklEQVRYw82XeZerLAyHR1wQxX3fu9j5/h/xTUArjti5tz3nPZc/pnZIHoH8EtIv97Px9eWOzgejBoBBPxj2T0AbcevR13rrrn9YPJpfALpKbozrAZacjcczgL+ezGuA60Z6wIxzQ+GXZXuy4ZL7HhqZRAvgODX/emwDmNVaQHG2eJKnSXrPlm8P1WwHiGFm1Phfw/x2y5Pktpw0mPVaAIZAI4pb2NALgxHKNYxgVmgBJsw4R0B6pzRBAMulD5h5p4Dg4J8xck+FPwvfAjRJw9ZB3gKE+WeAnF1W/+SXLUw6AKw/XAH31wCCIiU//O9sG6n8lwFmlQ7gwMQkH4NGiqbB409zGYTLAg82uz0gWsnXhCVheLlj9ECE4iDhAJ6LGxTBqQBUsi9Wfc+a5a1Jtp4k+6ZqzvQ/AcRG/8HAU2voGrh0feuVsdsTgFp2+1kB8NgUdWLAVLqAYJfAXZ4+AWOZUrikdRV3C0BWmoFjDEnY5MmygOvmEzI1Po6/Vi4V4JocjAgLnnFTAOoWaOZPe4AxRlyUqgIIinJ3W9gOMYuFLY/GWY1CPchqeUk36dwVPeZ0V/raYxgtKdEbU8W3hTGhauHpNDpoESwq2JI6aYJCCmQUNyXuJK8CUKKuqGGXVYH4hFIOUVrJoipnedExG4dnNpKMPKsBVqIbTbd0xpXGf14PskQEQErj+52CQsKQrNJK3wHQPLnuStJfA66btN4DZCzdCes1QHOx0HQtiuHtNQAVZuvu1nSXXNHp1eap9/aRkCzJWYKZpQVYKvrHOXxfG10q7AG4Ntefyav2grRYETefHYAsLZZZlXpvXi2FxDtpslrzz5qsyjlr87LSm34DmEVHXjSakNWz0Tp6gNMac/BLp/pOq9tbH4xi+HI/7ff/QcAihsH8a0AMeTJ1Dtxc0EFEhAYW3jQ+Joi8C01au7IHILN/AvApL2zag2P0aMVnZh4BpdWKpNQAbDK5VVmYWDZMaIciSqIjoMfKY2oBPZ3x6vXEBWgQAJQ01gFKUT6OALcYacDhnVyUJwBURguAoa5rTwXwMwB82NTzRBcyZwjwaA2AcRx3gEj0VBsgbn1YPp9IK9Y/EWcAoI0AvPMPWzCDbNoBzCzrHBKD8cgNqCycOhER3yuYewKcrut6n441ET9c1C3EZVvCogbfNjrc3cM2avjObROfewmwcfg9/Om8fzkX/m/Af7MOji5S3wumAAAAAElFTkSuQmCC\"","import React, { useState, useEffect } from 'react';\r\nimport { render } from 'react-dom';\r\nimport styled from 'styled-components/macro';\r\nimport jsonLDIcon from '../../assets/images/icons/icon-jsonld.png';\r\nimport { useGet } from '../../hooks';\r\nimport { ModalType } from '../../types/internal';\r\nimport { isFilled } from '../../validation';\r\nimport LoadingOrError from '../LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../Modal';\r\nimport { VStack } from '../Stack';\r\nimport LinkObject from './LinkObject';\r\nimport {\r\n Inline,\r\n InlineLabel,\r\n Label,\r\n} from './styles';\r\nimport { Button } from '../common';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\n\r\ninterface Props {\r\n\titem: any;\r\n}\r\n\r\nexport default function JSONLinkedDataModal({ item }: Props) {\r\n const [isLoading, hasError, get] = useGet();\r\n\tconst [JSONLinkedData, setJSONLinkedData] = useState();\r\n\tconst [modalIsOpen, setModalIsOpen] = useState(false);\r\n\r\n\tfunction getJSONLinkedData(tries: number) {\r\n\t\tif (item?.RegistryData?.Resource?.URL && tries >= 0) {\r\n\t\t\tget(item.RegistryData.Resource.URL, (data: any) => {\r\n\t\t\t\tsetJSONLinkedData(data);\r\n\t\t\t\tsetModalIsOpen(true);\r\n\t\t\t});\r\n\t\t}\r\n\t\telse {\r\n\t\t\tconsole.log(\"retrying\", tries);\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tgetJSONLinkedData(tries - 1);\r\n\t\t\t}, 100);\r\n\t\t}\r\n\t}\r\n\r\n\tuseEffect(() => {\r\n\t\tif (item.RegistryData) {\r\n\t\t\tgetJSONLinkedData(10);\r\n\t\t}\r\n\t}, [item])\r\n\r\n\treturn (!item.RegistryData || !isFilled(item.RegistryData)) ? null : (\r\n
    \r\n \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t>\r\n\t\t\t\t (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t{item.RegistryData && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    Registry Data
    \r\n\t\t\t\t\t\t\t\t\t\"JSON-LD\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{!item.RegistryData && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\"JSON-LD\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t\thideCount={true}\r\n\t\t\t\t\tresourceTitle={item.Name}\r\n\t\t\t\t\tmodalTitle=\"Registry Data\"\r\n\t\t\t\t\tContent={() => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{item.RegistryData && item.RegistryData.CTID && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tCTID:\r\n\t\t\t\t\t\t\t\t\t
    {item.CTID}
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{item.RegistryData && item.RegistryData.Envelope && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{item.RegistryData && item.RegistryData.Resource && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{JSONLinkedData && (\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t{JSON.stringify(JSONLinkedData, null, 4)}\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t)}\r\n\t\t\t\t/>\r\n \r\n
    \r\n );\r\n}\r\n\r\nconst JSONLDIconButton = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tpadding: 1px;\r\n\tmin-height: 40px;\r\n\r\n\t& div {\r\n\t\tflex: 1 1 auto;\r\n\t}\r\n\r\n\t& img {\r\n\t\twidth: 50px;\r\n\t\theight: 50px;\r\n\t}\r\n`;","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport additionalInfoIcon from '../../assets/images/icons/icon-additional-information-blue-green-01.svg';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport JSONLinkedDataModal from './JSONLinkedDataModal';\r\nimport { Label, Inline, InlineLabel } from './styles';\r\nimport { Section, SectionLabel, SectionContent } from './Shared';\r\nimport { ModalType } from '../../types/internal';\r\nimport { Link } from '../../types/external';\r\nimport { PlainTextLink } from './LinkObject';\r\n\r\nexport default function AdditionalInformationPageSection(props: { item: any, pageSectionDescription?: string }) {\r\n\treturn ( props.item &&\r\n\t\r\n\t\t\r\n\t\t\t{false && }\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t{props.item.VersionIdentifier && }\r\n\t\t\t\t{props.item.VersionIdentifier && <>\r\n\t\t\t\t\t{typeof (props.item.VersionIdentifier) == \"string\" && }\r\n\t\t\t\t\t{Array.isArray(props.item.VersionIdentifier) && props.item.VersionIdentifier.map((identifier: any, index: number) => (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t{(typeof (identifier) == \"string\" && identifier.toLowerCase().includes(\"http\")) && }\r\n\t\t\t\t\t\t\t{(typeof (identifier) == \"string\" && !identifier.toLowerCase().includes(\"http\")) && }\r\n\t\t\t\t\t\t\t{(typeof (identifier) == \"object\") &&\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{identifier.IdentifierType && identifier.IdentifierType.startsWith('http') && (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t}\r\n\t\t\t\t{props.item.Identifier && <>\r\n\t\t\t\t\t{typeof (props.item.Identifier) == \"string\" && }\r\n\t\t\t\t\t{Array.isArray(props.item.Identifier) && props.item.Identifier.map((identifier: any) => (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t{(typeof (identifier) == \"string\" && identifier.toLowerCase().includes(\"http\")) && }\r\n\t\t\t\t\t\t\t{(typeof (identifier) == \"string\" && !identifier.toLowerCase().includes(\"http\")) && }\r\n\t\t\t\t\t\t\t{(typeof (identifier) == \"object\") &&\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{identifier.IdentifierType && identifier.IdentifierType.startsWith('http') && (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t}\r\n\t\t\t
    \r\n\t\t
    \r\n\t\t{(props.item.Meta_LastUpdated || props.item.FoundingDate || props.item.DateEffective || props.item.ExpirationDate || props.item.StartDate || props.item.EndDate) &&\r\n\t\t\t\r\n\t\t\t\t{false && }\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\r\n\t\t}\r\n\t\t{(props.item.AlternateName?.length > 0 || props.item.InLanguage?.length > 0 || props.item.License?.length > 0 || props.item.Rights?.length > 0 || props.item.HasScope?.length>0) &&\r\n\t\t\t\r\n\t\t\t\t{false && }\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\r\n\t\t}\r\n\t\t{/*{(props.item.LatestVersion?.URL || props.item.PreviousVersion?.URL || props.item.NextVersion?.URL || props.item.Supersedes?.URL || props.item.SupersededBy?.URL) &&*/}\r\n\t\t{/*\t*/}\r\n\t\t{/*\t\t{false && }*/}\r\n\t\t{/*\t\t\t*/}\r\n\t\t{/*\t\t\t\t*/}\r\n\t\t{/*\t\t\t\t*/}\r\n\t\t{/*\t\t\t\t*/}\r\n\t\t{/*\t\t\t\t*/}\r\n\t\t{/*\t\t\t\t*/}\r\n\t\t{/*\t\t\t*/}\r\n\t\t{/*\t*/}\r\n\t\t{/*}*/}\r\n\t\t\r\n\t\t\t{false && }\r\n\t\t\t\r\n\t\t\r\n\t
    \r\n\t) || null\r\n}\r\n\r\nfunction TextItem(props: { label: string, item: string }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t
    {props.item}
    \r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nfunction LinkItem(props: { label: string, item: any }) {\r\n\tif (!props.item) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar link = typeof (props.item) == \"string\" ? ({ Label: props.item, URL: props.item } as Link) : (props.item as Link);\r\n\treturn (link.URL &&\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nconst InfoSection = styled(PageSectionItem)`\r\n\tpadding: 0;\r\n`;\r\n","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { Outline } from '../../types/external';\r\nimport { getLinkType } from '../../utils';\r\n\r\ninterface Props {\r\n outline: Outline;\r\n}\r\nexport default function TextLink({ outline }: Props) {\r\n const linkType = getLinkType(outline.URL);\r\n\r\n switch (linkType) {\r\n case 'external':\r\n return (\r\n \r\n {outline.Label}\r\n \r\n );\r\n case 'internal':\r\n return {outline.Label};\r\n case 'none':\r\n return <>{outline.Label};\r\n }\r\n}\r\n","import styled from 'styled-components/macro';\r\n\r\nexport const Body = styled.div`\r\n padding: 10px;\r\n border: ${(p) => `1px solid ${p.theme.color.aquaDark}`};\r\n`;\r\n\r\nexport const Heading = styled.div`\r\n padding: 10px;\r\n background-color: ${(p) => p.theme.color.aquaDark};\r\n`;\r\n\r\nexport const Description = styled.div`\r\n margin-bottom: 10px;\r\n`;\r\n\r\nexport const Section = styled.div`\r\n margin-bottom: 10px;\r\n\r\n &:last-of-type {\r\n margin-bottom: 0;\r\n }\r\n`;\r\n\r\nexport const Type = styled.span`\r\n padding: 10px;\r\n background-color: ${(p) => p.theme.color.aquaLight};\r\n display: inline-block;\r\n`;\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\n\r\nexport interface Props {\r\n\tFromDate?: string;\r\n\tToDate?: string;\r\n\tBothDatesPreText?: string;\r\n\tBothDatesMidText?: string;\r\n\tFromOnlyPreText?: string;\r\n\tToOnlyPreText?: string;\r\n}\r\nexport default function DateRange(props: Props) {\r\n\t//Can't set default values on props directly because TS complains, so use some extra variables\r\n\tvar bothDatesPreText = props.BothDatesPreText || \"Data Set Start Date\";\r\n\tvar bothDatesMidText = props.BothDatesMidText || \"Data Set End Date\";\r\n\tvar fromOnlyPreText = props.FromOnlyPreText || \"Data Set Start Date\";\r\n\tvar toOnlyPreText = props.ToOnlyPreText || \"Data Set End Date\";\r\n\r\n\treturn (\r\n\t\t(props.FromDate && props.ToDate && {bothDatesPreText}{props.FromDate}{bothDatesMidText}{props.ToDate}) ||\r\n\t\t(props.FromDate && !props.ToDate && {fromOnlyPreText}{props.FromDate}) ||\r\n\t\t(!props.FromDate && props.ToDate && {toOnlyPreText}{props.ToDate}) ||\r\n\t\tnull\r\n\t)\r\n}\r\n\r\nconst DateRangeSet = styled.div`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\r\n\t& > *:not(:last-child) {\r\n\t\tmargin-right: 0.8em;\r\n\t}\r\n`;","import React, { ReactElement, ReactNode } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { CostProfile as CostProfileType, CostItem as CostItemType } from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionLabel, SectionContent, SectionContentItem } from './Shared';\r\nimport DateRange from './DateRange';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { formatPrice } from '../../utils';\r\nimport LinkObject from './LinkObject';\r\n\r\nexport default function CostProfileList(props: { items: CostProfileType[] }) {\r\n\treturn (props.items?.length > 0 && \r\n\t\t
    \r\n\t\t{props.items.map((item) => (\r\n\t\t\t\r\n\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function CostProfile(props: { item: CostProfileType }) {\r\n\treturn (props.item && \r\n\t\t\r\n\t\t\t
    {props.item.Name || \"Cost Information\"}
    \r\n\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t
    {props.item.Description}
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t{props.item.Condition?.length > 0 &&\r\n\t\t\t\t\t\t
      \r\n\t\t\t\t\t\t\t{props.item.Condition.map((condition) => (\r\n\t\t\t\t\t\t\t\t
    • {condition}
    • \r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t
    \r\n\t\t\t\t{props.item.CostDetails && }\r\n\t\t\t
    \r\n\t\t\t{props.item.CostItems?.length > 0 &&\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function CostItemList(props: { items: CostItemType[], currencySymbol: string }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t{props.items.map((item) => (\r\n\t\t\t\r\n\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function CostItem(props: { item: CostItemType, currencySymbol: string }) {\r\n\treturn (props.item && \r\n\t\t\r\n\t\t\t } />\r\n\t\t\t } />\r\n\t\t\t } />\r\n\t\t\t
    {data}
    } />\r\n\t\t\t{formatPrice(props.item.Price, props.currencySymbol)}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nconst CostProfileWrapper = styled.div`\r\n\t\r\n`;\r\n\r\nconst BasicInfo = styled.div`\r\n\tdisplay: flex;\r\n\tmargin-bottom: 5px;\r\n\r\n\t& > div {\r\n\t\tflex: 1 1 auto;\r\n\t}\r\n\r\n\t& > a {\r\n\t\tmargin-left: 10px;\r\n\t}\r\n`;\r\n\r\nconst CostItemWrapper = styled.div`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\talign-items: baseline;\r\n\tpadding: 2px 10px;\r\n\tborder-top: 1px dashed #CCC;\r\n\r\n\t& > *:not(:last-child) {\r\n\t\tmin-width: 10%;\r\n\t\tmargin-right: 10px;\r\n\t}\r\n`;\r\n\r\nconst Price = styled.div`\r\n\tfont-size: 16px;\r\n\tfont-weight: bold;\r\n\tmargin-left: auto;\r\n\tpadding: 0 10px;\r\n`;","import React from 'react';\r\nimport { VerificationServiceProfile as ProfileType } from '../../types/external';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\n\r\nimport { Body, Description, Heading } from './styles';\r\nimport { Label, Section } from '../../components/DetailPage/styles';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { isFilled } from '../../validation';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport TextLink from '../TextLink';\r\nimport CostProfileList from '../DetailPage/CostProfile';\r\nimport LinkObject from '../DetailPage/LinkObject';\r\nimport { widgetGetPluralLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\ninterface Props { \r\n profile: ProfileType;\r\n}\r\n\r\nexport default function VerificationServiceProfile({ profile }: Props) {\r\n\tif (!profile || !isFilled(profile)) {\r\n\t\treturn null;\r\n\t}\r\n return (\r\n
    \r\n \r\n {profile.Description}\r\n {profile.SubjectWebpage && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{profile.SubjectWebpage && }\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{profile.OfferedBy && (\r\n

    \r\n Offered By: \r\n \r\n

    \r\n )}\r\n\t\t\t\t{profile.DateEffective && (\r\n
    \r\n
    Date Effective: {profile.DateEffective}
    \r\n
    \r\n \t)}\r\n\t\t\t\t{profile.EstimatedCost && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    Estimated Costs
    \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t
    \t\t\r\n\t\t\t\t)}\r\n\r\n \r\n\t\t\t\t{profile.VerifiedClaimType && (\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{isFilled(profile.OfferedIn) && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{profile.OfferedIn.map(\r\n\t\t\t\t\t\t\t(property, index) => (\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t{property.Description && (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{property.Description}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{property.GlobalJurisdiction && (\r\n\t\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    This property is global.
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{property.AssertedBy && (\r\n\t\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t\tAsserted By: \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{property.MainJurisdiction && (\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    {property.MainJurisdiction.Name}
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{property.JurisdictionException && (\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t{property.JurisdictionException.map(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t(place) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{place.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t

    \t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{isFilled(profile.Jurisdiction) && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{profile.Jurisdiction.map(\r\n\t\t\t\t\t\t\t(jurisdiction, index) => (\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t{jurisdiction.Description && (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{jurisdiction.Description}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{jurisdiction.GlobalJurisdiction && (\r\n\t\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    This jurisdiction is global.
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{jurisdiction.AssertedBy && (\r\n\t\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\t\tAsserted By: \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{jurisdiction.MainJurisdiction && (\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    {jurisdiction.MainJurisdiction.Name}
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{jurisdiction.JurisdictionException && (\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t{jurisdiction.JurisdictionException.map(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t(place) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{place.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{profile.HolderMustAuthorizeLabel && (\r\n\t\t\t\t\t
    \t\t\t\t\r\n\t\t\t\t\t\t\r\n \t
    {profile.HolderMustAuthorizeLabel}
    \r\n\t\t\t\t\t
    \t\t\r\n\t\t\t\t)}\r\n\t\t\t\t{profile.VerificationDirectory && profile.VerificationDirectory.URL && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{profile.VerificationDirectory && }\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{profile.VerificationMethodDescription && (\r\n\t\t\t\t\t
    \t\t\t\t\r\n\t\t\t\t\t\t{profile.VerificationMethodDescription}\r\n\t\t\t\t\t
    \t\t\r\n\t\t\t\t)}\r\n\t\t\t\t{profile.VerificationService && profile.VerificationService.URL && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{profile.VerificationService && }\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t{profile.TargetCredential && profile.TargetCredential.Values && (\r\n\t\t\t\t\t
    \t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \t\t\r\n\t\t\t\t)}\r\n\t\t\t\t\r\n \r\n
    \r\n );\r\n}\r\n","import React from 'react';\r\nimport { VerificationServiceProfile as ProfileType } from '../../types/external';\r\nimport VerificationServiceProfile from '../VerificationServiceProfile';\r\n\r\ninterface Props {\r\n profiles: Array;\r\n}\r\n\r\nexport default function Profiles({ profiles }: Props) {\r\n if (profiles == null || profiles.values == null) {\r\n return null;\r\n }\r\n return (\r\n
    \r\n {profiles.map((profile, index) => (\r\n \r\n ))}\r\n
    \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\n\r\ninterface Props {\r\n\titems: TabItem[];\r\n\tactiveIndex: number;\r\n}\r\n\r\nexport interface TabItem {\r\n\tLabel: string;\r\n\tContent: JSX.Element | null;\r\n}\r\n\r\nexport function TabSetOrSingle(props: Props) {\r\n\tvar validItems = props.items?.filter(m => m != null && m.Content != null) || [];\r\n\tif (validItems.length == 1) {\r\n\t\treturn (\r\n\t\t\t<>{validItems[0].Content}\r\n\t\t)\r\n\t}\r\n\telse if (validItems.length > 1) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t)\r\n\t}\r\n\telse {\r\n\t\treturn null;\r\n\t}\r\n}\r\n\r\nexport default function TabSet(props: Props) {\r\n\tconst [activeIndex, setActiveIndex] = useState(props.activeIndex);\r\n\r\n\tfunction switchTab(index: number) {\r\n\t\tsetActiveIndex(index);\r\n\t}\r\n\r\n\tuseEffect(() => {\r\n\t\tsetActiveIndex(props.activeIndex || 0);\r\n\t}, [props.activeIndex]);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.items.map((item, index) =>\r\n\t\t\t\t\t\t\t switchTab(index)}\r\n\t\t\t\t\t\t\t\tclassName={index == activeIndex ? \"currentTab\" : \"\"}\r\n\t\t\t\t\t\t\t\tkey={'tab-button-' + index}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t{item.Label}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{props.items.map((item, index) =>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{item.Content}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\n\r\nconst TabSetWrapper = styled.div`\r\n\t\r\n`;\r\n\r\nconst TabButtonsWrapper = styled.div`\r\n\toverflow-x: auto;\r\n\tmargin-bottom: 10px;\r\n`;\r\n\r\nconst TabButtons = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: stretch;\r\n\tborder-bottom: 1px solid ${(p) => p.theme.color.aquaDark};\r\n`;\r\n\r\nconst TabButton = styled.button`\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tjustify-content: flex-end;\r\n\tfont-size: 16px;\r\n\tpadding: 12px;\r\n\tmargin: 0 5px;\r\n\tmin-width: 150px;\r\n\talign-items: center;\r\n\tbackground-color: ${(p) => p.theme.color.aquaLight};\r\n\tborder: none;\r\n\tcolor: ${(p) => p.theme.color.blueDark};\r\n\tfont-weight: 500;\r\n\tborder-radius: 3px 3px 0 0;\r\n\r\n\t& :hover, & :focus {\r\n\t\tbackground-color: ${(p) => p.theme.color.aquaDark};\r\n\t}\r\n\r\n\t&.currentTab {\r\n\t\tborder-bottom: 2px solid #000;\r\n\t\tmargin-bottom: -1px;\r\n\t\ttext-shadow: 0 0 #000;\r\n\t\tpadding-bottom: 11px;\r\n\t\tbackground-color: ${(p) => p.theme.color.aquaDark};\r\n\t}\r\n\r\n`;\r\n\r\nconst TabContents = styled.div`\r\n\tposition: relative;\r\n`;\r\n\r\n//Have to use weird transform tricks instead of display: none because react will wipe out divs in hidden tabs otherwise\r\nconst Tab = styled.div`\r\n\t&:not(.currentTab) {\r\n\t\tposition: absolute;\r\n\t\ttop: 0;\r\n\t\tleft: 0;\r\n\t\ttransform: rotateY(90deg);\r\n\t\ttransform-origin: left center;\r\n\t}\r\n`;","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { CostManifest as CostManifestType } from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionLabel, SectionContent, SectionContentItem } from './Shared';\r\nimport DateRange from './DateRange';\r\nimport { TabSetOrSingle } from './TabSelector';\r\nimport { CostProfile } from './CostProfile';\r\nimport LinkObject from './LinkObject';\r\n\r\nexport default function CostManifestList(props: { items: CostManifestType[] }) {\r\n\treturn ( props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t{props.items.map((item) => (\r\n\t\t\t\r\n\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function CostManifest(props: { item: CostManifestType }) {\r\n\treturn ( props.item &&\r\n\t\t\r\n\t\t{props.item.Name || \"Common Costs\"}\r\n\t\t\r\n\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{props.item.Description &&
    {props.item.Description}
    }\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t{props.item.CostDetails && }\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t{props.item.EstimatedCost?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tApplicable Cost Information\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t\t\tLabel: item.Name || \"Cost Data \" + (itemIndex + 1),\r\n\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t
    \r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nconst BasicInfo = styled.div`\r\n\tdisplay: flex;\r\n\r\n\t& > div {\r\n\t\tflex: 1 1 auto;\r\n\t}\r\n\r\n\t& > a {\r\n\t\tmargin-left: 10px;\r\n\t}\r\n`;","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { ValueProfile as ValueProfileType } from '../../types/external';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { Box, BoxContent, Section, SectionContent, SectionContentItem } from './Shared';\r\n\r\nexport default function ValueProfileList(props: { items: ValueProfileType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t{props.items.map((item) => (\r\n\t\t\t\r\n\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function ValueProfile(props: { item: ValueProfileType }) {\r\n\tif (!props.item) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar valueText = [\r\n\t\t(props.item.Value && props.item.Value + \" Credit\" + (props.item.Value == 1 ? \"\" : \"s\")),\r\n\t\t((props.item.MinValue && props.item.MaxValue) && (props.item.MinValue + \" to \" + props.item.MaxValue + \" Credits\")),\r\n\t\t(props.item.MinValue && !props.item.MaxValue && \"At least \" + props.item.MinValue + \" Credit\" + (props.item.MinValue == 1 ? \"\" : \"s\")),\r\n\t\t(props.item.MaxValue && !props.item.MinValue && \"Up to \" + props.item.MaxValue + \" Credit\" + (props.item.MaxValue == 1 ? \"\" : \"s\")),\r\n\t\t(props.item.Percentage && ((props.item.Value || props.item.MinValue || props.item.MaxValue) ? \"(\" + props.item.Percentage + \"%)\" : props.item.Percentage + \"% Credit\"))\r\n\t].filter(m => m).join(\" \");\r\n\r\n\treturn (props.item &&\r\n\t\t
    \r\n\t\t\t\r\n\t\t\t\t{props.item.Description &&
    {props.item.Description}
    }\r\n\t\t\t\t
    {data}
    } />\r\n\t\t\t\t } />\r\n\t\t\t\t } />\r\n\t\t\t\t } />\r\n\t\t\t
    \r\n\t\t
    \r\n\t) || null\r\n}\r\n","import React, { useRef, useEffect, useState } from 'react';\r\nimport { renderToString } from 'react-dom/server';\r\nimport styled from 'styled-components/macro';\r\nimport { appURL, registryURL } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\n\r\nexport interface PreloadedResource {\r\n\tURL: string,\r\n\tData: any\r\n}\r\n\r\nexport interface ResourceWrapper {\r\n\tURL: string,\r\n\tData?: any,\r\n\tError?: any,\r\n\tOnSuccess?: Array<(data: any) => void>,\r\n\tOnError?: Array<(data: any) => void>\r\n}\r\n\r\nexport default function AJAXResourceList(props: {\r\n\turls: Array,\r\n\tresources?: Array,\r\n\tonSuccess?: (data: any, itemContainer: Element, itemList?: Element) => void,\r\n\tonError?: (data: any, itemContainer: Element, itemList?: Element) => void,\r\n\tStyleComponent?: () => JSX.Element,\r\n}) {\r\n\t//Initialize\r\n\tconst [listID, setListID] = useState(\"\");\r\n\tif (!listID) {\r\n\t\tsetListID((crypto as any).randomUUID() as string);\r\n\t}\r\n\r\n\t//Kick off the render process\r\n\tuseEffect(() => {\r\n\t\tsetupRenderedContainer();\r\n\t}, []);\r\n\r\n\t//Get the rendered container by brute force because react sucks, then render stuff\r\n\tfunction setupRenderedContainer() {\r\n\t\tvar itemList = document.getElementById(listID);\r\n\t\tif (!itemList) {\r\n\t\t\tsetTimeout(setupRenderedContainer, 100);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tif (!itemList.classList.contains(\"setup\")) {\r\n\t\t\t\titemList.classList.add(\"setup\");\r\n\t\t\t\tsetupAJAXResourceList(itemList, props.urls, props.resources, props.onSuccess, props.onError);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t//Return the div\r\n\treturn props.urls && props.urls.length > 0 && (\r\n\t\t<>\r\n\t\t\t{props.StyleComponent && }\r\n\t\t\t\r\n\t\t\r\n\t) || null;\r\n}\r\n\r\nexport function setupAJAXResourceList(\r\n\titemList: Element,\r\n\turls: Array,\r\n\tresources?: Array,\r\n\tonSuccess?: (data: any, itemContainer: Element, itemList?: Element) => void,\r\n\tonError?: (data: any, itemContainer: Element, itemList?: Element) => void,\r\n) {\r\n\t//Validation\r\n\tif (!itemList || !urls || urls.length == 0) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t//Flag the list\r\n\titemList.classList.add(\"ajaxResourceList\");\r\n\r\n\t//Variables\r\n\tvar cacheV3 = getAJAXCacheV3();\r\n\tvar listItemBoxes = [] as Array;\r\n\tvar listeners = [] as any;\r\n\r\n\t//Store resources that are already obtained\r\n\tif (resources && resources.length > 0) {\r\n\t\tresources.forEach(resource => {\r\n\t\t\tappendAJAXCacheV3Resource(resource);\r\n\t\t});\r\n\t}\r\n\r\n\t//Pre-create each URL's container so that they show up in order\r\n\turls.forEach(url => {\r\n\t\tvar box = document.createElement(\"div\");\r\n\t\tbox.classList.add(\"resourceListItem\");\r\n\t\tbox.dataset.url = url;\r\n\t\titemList.appendChild(box);\r\n\t\tbox.innerHTML = renderToString();\r\n\t\tlistItemBoxes.push(box);\r\n\t});\r\n\r\n\t//Check for scrollable parents, up to and including the window, and bind scroll handlers\r\n\tvar listeningScrollableElements = [] as Array;\r\n\tvar scrollableProperties = [\"overflow\", \"overflowX\", \"overflowY\"];\r\n\r\n\taddScrollHandlerToScrollableElements(itemList);\r\n\r\n\tfunction addScrollHandlerToScrollableElements(element: any) {\r\n\t\tif (element == document || element == window) {\r\n\t\t\taddScrollHandler(window as any);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\telse {\r\n\t\t\ttry { //For some reason, react still causes this to be called once in a while, and it crashes the entire page, so wrap it in a try-catch\r\n\t\t\t\tvar style = getComputedStyle(element) as any;\r\n\t\t\t\tscrollableProperties.forEach(property => {\r\n\t\t\t\t\tif ((style[property] == \"auto\" || style[property] == \"scroll\") && !listeningScrollableElements.includes(element)) {\r\n\t\t\t\t\t\tlisteningScrollableElements.push(element);\r\n\t\t\t\t\t\taddScrollHandler(element);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\taddScrollHandlerToScrollableElements(element.parentNode);\r\n\t\t\t}\r\n\t\t\tcatch (e) {}\r\n\t\t}\r\n\t}\r\n\r\n\t//Refresh the list when the element scrolls\r\n\tfunction addScrollHandler(element: any) {\r\n\t\tvar listener = element.addEventListener(\"scroll\", () => {\r\n\t\t\trefreshList();\r\n\t\t});\r\n\t\tlisteners.push({ element: element, listener: listener });\r\n\t}\r\n\r\n\t//Auto-trigger the first scroll\r\n\trefreshList();\r\n\r\n\t//Helper Functions\r\n\r\n\t//Check to see which elements are within the container's viewport, and fetch/render them\r\n\tfunction refreshList() {\r\n\t\t//For some reason this still gets called even though the listeners are removed, I hate react\r\n\t\tif (!itemList) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t//Remove event listeners and delete the list if react has detached it, since react will stupidly create a brand new list instead of just reattaching this one\r\n\t\tif (!itemList.parentNode || itemList.clientHeight == 0 || !getComputedStyle(itemList).display) {\r\n\t\t\tlisteners.forEach((item: any) => {\r\n\t\t\t\titem.element.removeEventListener(\"scroll\", item.listener);\r\n\t\t\t});\r\n\t\t\titemList.remove(); //Detach from document\r\n\t\t\titemList.innerHTML = \"\"; //If for some reason the delete fails too, at least empty out the element\r\n\t\t\t(itemList as any) = null; //Hopefully flag for garbage collection\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t//Otherwise, calculate and load stuff as normal\r\n\t\tvar threshold = (window as any).innerHeight + 50; //getBoundingClientRect().top is relative to the window even in a scrollable div, so use this as the threshold\r\n\t\tlistItemBoxes.filter(box => !box.classList.contains(\"triggered\")).forEach(box => {\r\n\t\t\tvar top = box.getBoundingClientRect().top;\r\n\t\t\tif (top >= 0 && top <= threshold) {\r\n\t\t\t\tbox.classList.add(\"triggered\");\r\n\t\t\t\tgetResourceViaResourceCacheV3((box as any).dataset.url, (data: any) => {\r\n\t\t\t\t\t(onSuccess || defaultSuccess)(data, box, itemList);\r\n\t\t\t\t}, (data: any) => {\r\n\t\t\t\t\tdefaultError(data, box, itemList);\r\n\t\t\t\t\tonError?.(data, box, itemList);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t//Default success handler\r\n\tfunction defaultSuccess(data: any, itemContainer: Element, itemList?: Element) {\r\n\t\tvar container = itemContainer as any;\r\n\t\tcontainer.innerHTML = \"Loaded: \" + (container.dataset?.url || \"\") + \"\";\r\n\t}\r\n\r\n\t//Default error handler\r\n\tfunction defaultError(data: any, itemContainer: Element, itemList?: Element) {\r\n\t\tvar container = itemContainer as any;\r\n\t\tcontainer.innerHTML = \"\" + (container.dataset?.url || \"\") + \"\";\r\n\t\tconsole.log(\"Error Loading Item\", {\r\n\t\t\tdata: data,\r\n\t\t\titemContainer: itemContainer,\r\n\t\t\titemList: itemList\r\n\t\t});\r\n\t}\r\n}\r\n\r\n\r\nconst AJAXResourceListWrapper = styled.div`\r\n\r\n\t& .resourceListItem {\r\n\t\tmin-height: 50px;\r\n\t}\r\n`;\r\n\r\n//Utility methods\r\n//Get the AJAX Cache V3\r\nexport function getAJAXCacheV3(): Array {\r\n\tif (!(window as any).AJAXCacheV3) {\r\n\t\t(window as any).AJAXCacheV3 = [] as Array;\r\n\t}\r\n\treturn (window as any).AJAXCacheV3 as Array;\r\n}\r\n\r\n//Get a resource from AJAX Cache V3 based on its URL\r\nexport function getAJAXCacheV3Resource(url: string) {\r\n\treturn getAJAXCacheV3().find(resource => resource.URL == url);\r\n}\r\n\r\n//Append a resource object to Ajax Cache V3 if it isn't already present, and return the resource either way\r\nexport function appendAJAXCacheV3ResourceRaw(url: string, resourceData: any) {\r\n\tappendAJAXCacheV3Resource({\r\n\t\tURL: url,\r\n\t\tData: resourceData\r\n\t});\r\n}\r\nexport function appendAJAXCacheV3Resource(resource: ResourceWrapper) {\r\n\tvar cacheV3 = getAJAXCacheV3();\r\n\tvar wrapper = {\r\n\t\tURL: resource.URL,\r\n\t\tData: resource.Data,\r\n\t\tError: resource.Error,\r\n\t\tOnSuccess: resource.OnSuccess || [] as Array<(data: any) => void>,\r\n\t\tOnError: resource.OnError || [] as Array<(data: any) => void>\r\n\t};\r\n\tvar match = cacheV3.find(item => item.URL == wrapper.URL);\r\n\tif (!match) {\r\n\t\tcacheV3.push(wrapper);\r\n\t}\r\n\treturn match || wrapper;\r\n}\r\n\r\n//Combine all requests for a URL into a single object with 1-n success/error handlers, and process them when the object is loaded\r\nexport function getResourceViaResourceCacheV3(url: string, onSuccess?: (data: any) => void, onError?: (data: any) => void) {\r\n\t//Get the matching data\r\n\turl = url.replace(/^http:\\/\\//i, \"https://\");\r\n\tvar match = getAJAXCacheV3Resource(url);\r\n\r\n\t//If it was found, simulate the async rendering (for consistency) and process the result\r\n\tif (match) {\r\n\t\tif (match.Data && onSuccess) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tonSuccess((match || {}).Data);\r\n\t\t\t}, 0);\r\n\t\t}\r\n\t\telse if (match.Error && onError) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tonError((match || {}).Error);\r\n\t\t\t}, 0);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tonSuccess && match.OnSuccess?.push(onSuccess);\r\n\t\t\tonError && match.OnError?.push(onError);\r\n\t\t}\r\n\t}\r\n\t//Otherwise, append the resource object and its handlers, then fetch the resource and process the results\r\n\telse {\r\n\t\tvar appended = appendAJAXCacheV3Resource({\r\n\t\t\tURL: url,\r\n\t\t\tOnSuccess: onSuccess ? [onSuccess] : [],\r\n\t\t\tOnError: onError ? [onError] : []\r\n\t\t});\r\n\t\tfetch(url)\r\n\t\t\t.then(response => {\r\n\t\t\t\tif (response.ok) {\r\n\t\t\t\t\treturn response.text();\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tthrow response;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.then(text => {\r\n\t\t\t\tvar result = JSON.parse(text);\r\n\t\t\t\tconsole.log(\"Loaded \" + url, result);\r\n\t\t\t\tappended.Data = result;\r\n\t\t\t\tappended.OnSuccess?.forEach(successMethod => {\r\n\t\t\t\t\tsuccessMethod(appended.Data);\r\n\t\t\t\t});\r\n\t\t\t\tappended.OnSuccess = [];\r\n\t\t\t})\r\n\t\t\t.catch(error => {\r\n\t\t\t\tconsole.log(\"Error loading \" + url, error);\r\n\t\t\t\tappended.Error = error;\r\n\t\t\t\tappended.OnError?.forEach(errorMethod => {\r\n\t\t\t\t\terrorMethod(appended.Error);\r\n\t\t\t\t});\r\n\t\t\t\tappended.OnError = [];\r\n\t\t\t});\r\n\t}\r\n}\r\n\r\n//Utility functions common to rendering after data has been fetched\r\nexport function createElement(elementType: string, cssClass: string) {\r\n\tvar element = document.createElement(elementType);\r\n\tcssClass.split(\" \").forEach(cssItem => cssItem && element.classList.add(cssItem));\r\n\treturn element;\r\n}\r\n\r\nexport function getEnglish(data: any) {\r\n\treturn !data ? null : (data[\"en-us\"] || data[\"en-US\"] || data[\"en\"] || data);\r\n}\r\n\r\nexport function renderText(container: any, content: any, elementType?: string, cssClass?: string, title?: string, handler?: (box: any, text: string) => void) {\r\n\treturn renderElement(container, content, elementType || \"div\", cssClass || \"\", (element, content) => {\r\n\t\tvar text = getEnglish(content);\r\n\t\telement.innerHTML = text;\r\n\t\ttitle && (element.title = title);\r\n\t\thandler?.(element, text);\r\n\t});\r\n}\r\n\r\nexport function renderLink(container: any, contentURL: string, contentLabel?: string, target?: string, cssClass?: string, title?: string, handler?: (link: any, url: string) => void) {\r\n\treturn renderElement(container, contentURL, \"a\", cssClass || \"\", (element, content) => {\r\n\t\telement.href = contentURL;\r\n\t\telement.innerHTML = contentLabel || contentURL;\r\n\t\ttarget && (element.target = target);\r\n\t\ttitle && (element.title = title);\r\n\t\thandler?.(element, contentURL);\r\n\t});\r\n}\r\n\r\nexport function renderImage(container: any, contentURL: string, cssClass?: string, title?: string, altText?: string, handler?: (image: any, url: string) => void) {\r\n\treturn renderElement(container, contentURL, \"img\", cssClass || \"\", (image, url) => {\r\n\t\timage.src = contentURL;\r\n\t\timage.altText = altText || \"\";\r\n\t\ttitle && (image.title = title);\r\n\t\thandler?.(image, contentURL);\r\n\t});\r\n}\r\n\r\nexport function renderElement(container: any, content: any, elementType: string, cssClass: string, handler: (element: any, content: any) => void) {\r\n\tif (content) {\r\n\t\tvar element = container.appendChild(createElement(elementType || \"div\", cssClass || \"\"));\r\n\t\thandler?.(element, content);\r\n\r\n\t\treturn element;\r\n\t}\r\n\r\n\treturn null;\r\n}\r\n\r\nexport function getDetailPageHeaderModifiedDate(dateString: string) {\r\n\ttry {\r\n\t\tvar modified = new Date(dateString);\r\n\t\treturn [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"][modified.getMonth()] + \" \" + modified.getDate() + \", \" + modified.getFullYear();\r\n\t}\r\n\tcatch (e) {\r\n\t\treturn \"Unknown\"\r\n\t}\r\n}\r\n\r\nexport function lookupSchema(handler: (schemaGraph: Array) => void) {\r\n\t//If the graph object exists...\r\n\tif ((window as any).SchemaGraph) {\r\n\t\t//If the data is already loaded...\r\n\t\tif ((window as any).SchemaGraph.Loaded) {\r\n\t\t\t//Mimic the async nature of the request and call the handler\r\n\t\t\tsetTimeout(function () {\r\n\t\t\t\thandler?.((window as any).SchemaGraph.Graph);\r\n\t\t\t}, 0);\r\n\t\t}\r\n\t\t//If the data isn't loaded yet...\r\n\t\telse {\r\n\t\t\t//Queue the handler\r\n\t\t\thandler && (window as any).SchemaGraph.Handlers.push(handler);\r\n\t\t}\r\n\t}\r\n\t//If the graph object does not exist...\r\n\telse {\r\n\t\t//Create the graph object\r\n\t\t(window as any).SchemaGraph = {\r\n\t\t\tLoaded: false,\r\n\t\t\tGraph: [],\r\n\t\t\tHandlers: [],\r\n\t\t\tTimestamp: Date.now()\r\n\t\t};\r\n\r\n\t\t//Try to get the data from the local storage\r\n\t\tvar cachedText = (window as any).localStorage?.getItem(\"ajaxv3:SchemaGraph\");\r\n\t\tif (cachedText) {\r\n\t\t\tvar cachedData = JSON.parse(cachedText);\r\n\t\t\tconsole.log(\"Loading schema from local storage...\");\r\n\t\t\t//If the cache is less than 12 hours old, use it\r\n\t\t\tif (cachedData.Timestamp - Date.now() < 43200000) {\r\n\t\t\t\t//Set the graph object\r\n\t\t\t\t(window as any).SchemaGraph = cachedData;\r\n\r\n\t\t\t\t//Call the handler\r\n\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\thandler?.((window as any).SchemaGraph.Graph);\r\n\t\t\t\t}, 0);\r\n\r\n\t\t\t\t//Return in order to avoid calling the rest of the method\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t//Otherwise, load the data\r\n\t\tconsole.log(\"Fetching schema from credreg.net...\");\r\n\t\thandler && (window as any).SchemaGraph.Handlers.push(handler);\r\n\t\tgetResourceViaResourceCacheV3(\"https://credreg.net/ctdl/schema/encoding/json\", (ctdlData) => {\r\n\t\t\tgetResourceViaResourceCacheV3(\"https://credreg.net/ctdlasn/schema/encoding/json\", (ctdlasnData) => {\r\n\t\t\t\tgetResourceViaResourceCacheV3(\"https://credreg.net/qdata/schema/encoding/json\", (qdataData) => {\r\n\t\t\t\t\t//Combine and deduplicate the schema objects\r\n\t\t\t\t\t(ctdlData[\"@graph\"]).concat(ctdlasnData[\"@graph\"]).concat(qdataData[\"@graph\"]).forEach((item: any) => {\r\n\t\t\t\t\t\tif (!(window as any).SchemaGraph.Graph.find((graphItem: any) => graphItem[\"@id\"] == item[\"@id\"])) {\r\n\t\t\t\t\t\t\t(window as any).SchemaGraph.Graph.push(item);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\t//Set the graph object as loaded and call its handlers\r\n\t\t\t\t\t(window as any).SchemaGraph.Loaded = true;\r\n\t\t\t\t\t(window as any).SchemaGraph.Handlers.forEach((handler: any) => {\r\n\t\t\t\t\t\thandler?.((window as any).SchemaGraph.Graph);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\t//Clear its handlers\r\n\t\t\t\t\t(window as any).SchemaGraph.Handlers = [];\r\n\r\n\t\t\t\t\t//Cache the object\r\n\t\t\t\t\t(window as any).localStorage?.setItem(\"ajaxv3:SchemaGraph\", JSON.stringify((window as any).SchemaGraph));\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t})\r\n\t}\r\n}\r\n\r\nexport function renderOutline(data: any, itemContainer: Element, itemList?: Element) {\r\n\tvar container = itemContainer as any;\r\n\tcontainer.innerHTML = \"\";\r\n\tcontainer.classList.add(\"outline\");\r\n\trenderImage(container, data[\"ceterms:image\"], \"outlineImage\", \"Resource image\");\r\n\tvar content = renderElement(container, true, \"div\", \"outlineContent\", () => { });\r\n\tif (data[\"@id\"]?.includes(registryURL + \"/resources/ce-\")) {\r\n\t\trenderLink(content, appURL + \"/resources/\" + data[\"ceterms:ctid\"], getEnglish(data[\"ceterms:name\"] || data[\"ceasn:name\"] || data[\"skos:prefLabel\"] || data[\"ceasn:competencyLabel\"] || \"Unnamed Resource\"), \"_blank\", \"outlineName\");\r\n\t\trenderText(content, getEnglish(data[\"ceterms:description\"] || data[\"ceasn:description\"] || data[\"skos:definition\"] || data[\"ceasn:competencyText\"] || \"No Description\"), \"div\", \"outlineDescription\");\r\n\t}\r\n\telse {\r\n\t\trenderLink(content, data[\"@id\"], \"External Resource\", \"_blank\", \"outlineName external\");\r\n\t\trenderText(content, \"External Link to \" + data[\"@id\"], \"div\", \"outlineDescription\");\r\n\t}\r\n\r\n}\r\n\r\nexport function OutlineStyleBlock() {\r\n\treturn \r\n}\r\n","import React, { useRef, useEffect, useState } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { renderToString } from 'react-dom/server';\r\nimport styled from 'styled-components/macro';\r\nimport { apiUrl, appURL, registryURL } from '../../shared/globals';\r\nimport { IdentifierValue } from '../../types/external';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\nimport { setupAJAXResourceList, getResourceViaResourceCacheV3, getAJAXCacheV3Resource, createElement, getEnglish } from '../AJAXResourceList';\r\n\r\nexport function renderCompetencyFromRDF(competency: any, itemContainer: Element, relatedItemsMap: Array, renderChildCompetencies: boolean) {\r\n\tvar container = itemContainer as any;\r\n\tcontainer.classList.add(\"competency2\");\r\n\tcontainer.innerHTML = \"\";\r\n\r\n\t//Competency Content\r\n\tvar CompetencyContent = container.appendChild(createElement(\"div\", \"competencyContent\"));\r\n\t{\r\n\t\tvar CompetencyPrefix = CompetencyContent.appendChild(createElement(\"div\", \"competencyPrefix\"));\r\n\t\tcreateTitledBox(CompetencyPrefix, \"Competency Category\", competency[\"ceasn:competencyCategory\"], \"competencyPrefixItem competencyCategory\");\r\n\t\tcreateTitledBox(CompetencyPrefix, \"List ID\", competency[\"ceasn:listID\"], \"competencyPrefixItem listID\");\r\n\t\tcreateTitledBox(CompetencyPrefix, \"List ID\", competency.ListID, \"competencyPrefixItem listID\"); //For bnode competencies from the API\r\n\t\tcreateTitledBox(CompetencyPrefix, \"Coded Notation\", competency[\"ceasn:codedNotation\"], \"competencyPrefixItem codedNotation\");\r\n\t\tcreateTitledBox(CompetencyPrefix, \"Coded Notation\", competency.CodedNotation, \"competencyPrefixItem codedNotation\"); //For bnode competencies from the API\r\n\t\tcreateTitledBox(CompetencyPrefix, \"Alt Coded Notation\", competency[\"ceasn:altCodedNotation\"], \"competencyPrefixItem altCodedNotation\");\r\n\t}\r\n\t{\r\n\t\tvar CompetencyBody = CompetencyContent.appendChild(createElement(\"div\", \"competencyBody\"));\r\n\t\tcreateTitledBox(CompetencyBody, \"Competency Label\", competency[\"ceasn:competencyLabel\"], \"competencyLabel\");\r\n\t\tcreateTitledBox(CompetencyBody, \"Competency Label\", competency.CompetencyLabel, \"competencyLabel\"); //For bnode competencies from the API\r\n\t\tcreateTitledBox(CompetencyBody, \"Competency Text\", competency[\"ceasn:competencyText\"], \"competencyText\");\r\n\t\tcreateTitledBox(CompetencyBody, \"Competency Text\", competency.CompetencyText, \"competencyText\"); //For bnode competencies from the API\r\n\t\tcreateTitledBox(CompetencyBody, \"Comment\", competency[\"ceasn:comment\"], \"competencyComment\", (data => { return getEnglish(data)?.map((item: string) => \"
    \" + item + \"
    \").join(\"\"); }));\r\n\t\tcreateTitledBox(CompetencyBody, \"Comment\", competency.Comment, \"competencyComment\", (data => \"
    \" + data + \"
    \")); //For bnode competencies from the API\r\n\t\tcreateTitledBox(CompetencyBody, \"CTID\", competency[\"ceterms:ctid\"], \"competencyCTID\", (data => { return \"CTID:\" + data + \"\"; }));\r\n\t}\r\n\r\n\t//Competency Extras\r\n\tvar CompetencyExtras = container.appendChild(createElement(\"div\", \"competencyExtras\"));\r\n\t{\r\n\t\t//Misc\r\n\t\tcreateItemList(CompetencyExtras, \"Identifier URL{s}\", competency[\"ceasn:identifier\"], \"identifier\", renderLinkListItem);\r\n\t\tcreateItemList(CompetencyExtras, \"Identifier URL{s}\", competency.TargetNode, \"identifier\", (item: any, valueBox: any) => {\r\n\t\t\tif (item && !item.toLowerCase().includes(registryURL.toLowerCase())) {\r\n\t\t\t\trenderLinkListItem(item, valueBox);\r\n\t\t\t}\r\n\t\t}); //For bnode competencies from the API\r\n\t\t//Versions\r\n\t\tcreateVersionBox(CompetencyExtras, \"Latest Version\", getEnglish(competency[\"ceterms:latestVersion\"]), \"latestVersion\");\r\n\t\tcreateVersionBox(CompetencyExtras, \"Next Version\", getEnglish(competency[\"ceterms:nextVersion\"]), \"nextVersion\");\r\n\t\tcreateVersionBox(CompetencyExtras, \"Previous Version\", getEnglish(competency[\"ceterms:previousVersion\"]), \"previousVersion\");\r\n\t\tcreateVersionIdentifierBox(CompetencyExtras, \"Version Identifier\", createIdentifier(competency[\"ceterms:versionIdentifier\"]), \"versionIdentifier\");\r\n\r\n\t\tcreateItemList(CompetencyExtras, \"Keyword{s}\", getEnglish(competency[\"ceasn:conceptKeyword\"]), \"keyword\", renderSearchLinkListItem);\r\n\t\tcreateItemList(CompetencyExtras, \"Local Subject{s}\", getEnglish(competency[\"ceasn:localSubject\"]), \"localSubject\", renderSearchLinkListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Concept{s}\", competency[\"ceasn:conceptTerm\"], \"conceptTerm\", renderConceptListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Complexity Level{s}\", competency[\"ceasn:complexityLevel\"], \"complexityLevel\", renderConceptListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Education Level Type{s}\", competency[\"ceasn:educationLevelType\"], \"complexityLevel\", renderConceptListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Environmental Hazard Type{s}\", competency[\"ceterms:environmentalHazardType\"], \"environmentalHazardType\", renderConceptListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Performance Level Type{s}\", competency[\"ceterms:performanceLevelType\"], \"performanceLevelType\", renderConceptListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Physical Capability Type{s}\", competency[\"ceterms:physicalCapabilityType\"], \"physicalCapabilityType\", renderConceptListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Sensory Capability Type{s}\", competency[\"ceterms:sensoryCapabilityType\"], \"sensoryCapabilityType\", renderConceptListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Has Progression Level{s}\", competency[\"asn:hasProgressionLevel\"], \"hasProgressionLevel\", renderProgressionLevelListItem);\r\n\r\n\t\t//Substantiating\r\n\t\tcreateItemList(CompetencyExtras, \"Source Documentation{s}\", competency[\"ceasn:sourceDocumentation\"], \"sourceDocumentation\", renderLinkListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Inferred Competenc{ies}\", competency[\"ceasn:inferredCompetency\"], \"inferredCompetency\", renderCompetencyLinkListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Substantiating Competency Framework{s}\", competency[\"ceasn:substantiatingCompetencyFramework\"], \"substantiatingCompetencyFramework\", renderResourceLinkListItem);\r\n\t\tcreateAJAXItemList(CompetencyExtras, \"Substantiating Credential{s}\", competency[\"ceasn:substantiatingCredential\"], \"substantiatingCredential\", renderResourceLinkListItem);\r\n\t\tcreateItemList(CompetencyExtras, \"Substantiating Occupation{s}\", competency[\"ceasn:substantiatingOccupation\"], \"substantiatingOccupation\", renderLinkListItem);\r\n\t\tcreateItemList(CompetencyExtras, \"Substantiating Job{s}\", competency[\"ceasn:substantiatingJob\"], \"substantiatingJob\", renderLinkListItem);\r\n\t\tcreateItemList(CompetencyExtras, \"Substantiating Work Role{s}\", competency[\"ceasn:substantiatingWorkRole\"], \"substantiatingWorkRole\", renderLinkListItem);\r\n\t\tcreateItemList(CompetencyExtras, \"Substantiating Task{s}\", competency[\"ceasn:substantiatingTask\"], \"substantiatingTask\", renderLinkListItem);\r\n\t\tcreateItemList(CompetencyExtras, \"Substantiating Resource{s}\", competency[\"ceasn:substantiatingResource\"], \"substantiatingResource\", renderLinkListItem);\r\n\r\n\t\t//Alignments\r\n\t\t/*\r\n\t\tcompetency[\"test:testAlignment\"] = [\r\n\t\t\t\"https://credentialengineregistry.org/resources/ce-58aec6a6-b1e1-4c49-af01-238b9b8f2638\",\r\n\t\t\t\"https://credentialengineregistry.org/resources/ce-59c6a9f8-4839-494c-ba71-14e0b9b44c4b\",\r\n\t\t\t\"https://credentialengineregistry.org/resources/ce-a5a7d0e8-7bc1-43eb-a13c-91c81c2d8cab\",\r\n\t\t\t\"https://credentialengineregistry.org/resources/ce-db440f2e-9a9f-45a0-b624-fc277ec6761f\",\r\n\t\t\t\"https://credentialengineregistry.org/resources/ce-20400c85-3eb3-451f-859a-bee31569c52a\"\r\n\t\t];\r\n\t\t*/\r\n\t\t//createCompetencyDSPList(CompetencyExtras, \"Test Alignment{s}\", competency, \"test:testAlignment\", \"testAlignment\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Exact Alignment{s}\", competency, \"ceasn:exactAlignment\", \"exactAlignment\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Prerequisite Alignment{s}\", competency, \"ceasn:prerequisiteAlignment\", \"prerequisiteAlignment\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Broad Alignment{s}\", competency, \"ceasn:broadAlignment\", \"broadAlignment\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Narrow Alignment{s}\", competency, \"ceasn:narrowAlignment\", \"narrowAlignment\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Major Alignment{s}\", competency, \"ceasn:majorAlignment\", \"majorAlignment\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Minor Alignment{s}\", competency, \"ceasn:minorAlignment\", \"minorAlignment\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Knowledge{s} Embodied\", competency, \"ceasn:knowledgeEmbodied\", \"knowledgeEmbodied\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Skill{s} Embodied\", competency, \"ceasn:skillEmbodied\", \"skillEmbodied\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Abilit{ies} Embodied\", competency, \"ceasn:abilityEmbodied\", \"abilityEmbodied\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Alignment{s} To\", competency, \"ceasn:alignTo\", \"alignTo\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Alignment{s} From\", competency, \"ceasn:alignFrom\", \"alignFrom\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Cross Subject Reference{s}\", competency, \"ceasn:crossSubjectReference\", \"crossSubjectReference\");\r\n\t\tcreateCompetencyDSPList(CompetencyExtras, \"Is Version Of Reference{s}\", competency, \"ceasn:isVersionOf\", \"isVersionOf\");\r\n\r\n\t\t//Industry/Occupation/Instruction\r\n\t\t/*\r\n\t\tcompetency[\"test:testReference\"] = [\r\n\t\t\t{\r\n\t\t\t\t\"ceterms:targetNodeName\": { \"en\": \"Test Reference 1\" },\r\n\t\t\t\t\"ceterms:targetNodeDescription\": { \"en\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam ut sodales lorem.\" },\r\n\t\t\t\t\"ceterms:codedNotation\": \"ABC-123\"\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\t\"ceterms:targetNodeName\": { \"en\": \"Test Reference 2\" },\r\n\t\t\t\t\"ceterms:targetNodeDescription\": { \"en\": \"Sed augue justo, dignissim et laoreet vitae, imperdiet eu enim. Ut ac magna a erat elementum rutrum sed non justo. Nulla porttitor mi vitae odio sagittis feugiat. In volutpat vel lacus quis malesuada.\" },\r\n\t\t\t\t\"ceterms:codedNotation\": \"999-999\"\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\t\"ceterms:targetNodeName\": { \"en\": \"Test Reference 3\" },\r\n\t\t\t\t\"ceterms:targetNodeDescription\": { \"en\": \"Nullam dictum, elit ac pharetra vehicula, nibh libero tempus quam, sit amet hendrerit arcu ligula nec nisi.\" },\r\n\t\t\t\t\"ceterms:codedNotation\": \"XYZ-10101\"\r\n\t\t\t}\r\n\t\t];\r\n\t\t*/\r\n\t\tcreateItemList(CompetencyExtras, \"Test Reference{s}\", competency[\"test:testReference\"], \"testReference\", renderCredentialAlignmentObjectSearchLinkListItem, true);\r\n\t\tcreateItemList(CompetencyExtras, \"Industry Type{s}\", competency[\"ceterms:industryType\"], \"industryType\", renderCredentialAlignmentObjectSearchLinkListItem, true);\r\n\t\tcreateItemList(CompetencyExtras, \"Occupation Type{s}\", competency[\"ceterms:occupationType\"], \"occupationType\", renderCredentialAlignmentObjectSearchLinkListItem, true);\r\n\t\tcreateItemList(CompetencyExtras, \"Instructional Program Type{s}\", competency[\"ceterms:instructionalProgramType\"], \"instructionalProgramType\", renderCredentialAlignmentObjectSearchLinkListItem, true);\r\n\r\n\t}\r\n\r\n\t//Competency Children\r\n\tif (renderChildCompetencies) {\r\n\t\tvar CompetencyChildren = container.appendChild(createElement(\"div\", \"competencyChildren\"));\r\n\t\tsetupAJAXResourceList(CompetencyChildren, competency[\"ceasn:hasChild\"], undefined, (data, itemContainer, itemList) => { renderCompetencyFromRDF(data, itemContainer, relatedItemsMap, true); });\r\n\t}\r\n\r\n\t//Helpers\r\n\tfunction createTitledBox(container: any, label: string, content: any, cssClass: string, handler?: (data: any) => string) {\r\n\t\tif (content) {\r\n\t\t\tvar box = container.appendChild(createElement(\"div\", cssClass));\r\n\t\t\tbox.title = label;\r\n\t\t\tbox.innerHTML = (handler || getEnglish)(content);\r\n\t\t}\r\n\t}\r\n\r\n\tfunction createVersionBox(container: any, label: string, content: any, cssClass: string, handler?: (data: any) => string) {\r\n\t\tif (content) {\r\n\t\t\tvar box = container.appendChild(createElement(\"div\", cssClass));\r\n\t\t\tvar labelElement = createElement(\"span\", \"label\");\r\n\t\t\tvar contentElement = createElement(\"a\", \"content\") as HTMLAnchorElement; // Explicitly cast to HTMLAnchorElement\r\n\r\n\t\t\tlabelElement.textContent = label + \": \";\r\n\t\t\tvar processedContent = (handler || getEnglish)(content);\r\n\t\t\tcontentElement.innerHTML = processedContent;\r\n\t\t\tcontentElement.href = content; // Set the href to the original content\r\n\r\n\t\t\tbox.appendChild(labelElement);\r\n\t\t\tbox.appendChild(contentElement);\r\n\t\t}\r\n\t}\r\n\r\n\tfunction createIdentifier(identifier: Array) {\r\n\t\treturn (identifier || []).map(source => {\r\n\t\t\treturn {\r\n\t\t\t\tIdentifierType: getEnglish(source[\"ceterms:identifierType\"]),\r\n\t\t\t\tIdentifierTypeName: getEnglish(source[\"ceterms:identifierTypeName\"]),\r\n\t\t\t\tIdentifierValueCode: getEnglish(source[\"ceterms:identifierValueCode\"]),\r\n\t\t\t} as IdentifierValue;\r\n\t\t});\r\n\t}\r\n\r\n\tfunction createVersionIdentifierBox(container: any, label: string, content: IdentifierValue[], cssClass: string, handler?: (data: any) => string) {\r\n\t\tif (content && content.length > 0) {\r\n\t\t\tconst box = container.appendChild(createElement(\"div\", cssClass));\r\n\t\t\tconst labelElement = createElement(\"span\", \"label\");\r\n\r\n\t\t\tlabelElement.textContent = label + \": \";\r\n\t\t\tbox.appendChild(labelElement);\r\n\r\n\t\t\tcontent.forEach((identifier, index)=> {\r\n\t\t\t\tconst identifierElement = createElement(\"div\", \"identifier\");\r\n\r\n\t\t\t\tif (typeof identifier === \"string\") {\r\n\t\t\t\t\tidentifierElement.textContent = identifier;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst identifierText = `${identifier.IdentifierType ? identifier.IdentifierType + \" - \" : \"\"}${identifier.IdentifierTypeName} ${identifier.IdentifierValueCode} `;\r\n\t\t\t\t\tidentifierElement.textContent = identifierText;\r\n\t\t\t\t}\r\n\t\t\t\tif (index < content.length - 1) {\r\n\t\t\t\t\tidentifierElement.textContent += \", \";\r\n\t\t\t\t}\r\n\t\t\t\tlabelElement.style.display = \"inline\";\r\n\t\t\t\tidentifierElement.style.display = \"inline\";\r\n\t\t\t\tbox.appendChild(identifierElement);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tfunction createItemListInternals(container: any, label: string, dataList: Array, cssClass: string, collapsed: boolean) {\r\n\t\tvar box = container.appendChild(createElement(\"div\", \"itemList collapseBox \" + cssClass + (collapsed ? \"\" : \" expanded\")));\r\n\t\tvar labelBox = box.appendChild(createElement(\"button\", \"itemListLabel collapseButton\"));\r\n\t\tlabelBox.innerHTML = dataList.length + \" \" + label.replace(/{ies}/g, dataList.length == 1 ? \"y\" : \"ies\").replace(/{s}/g, dataList.length == 1 ? \"\" : \"s\");\r\n\t\tvar valueBox = box.appendChild(createElement(\"div\", \"itemListValue collapseContent\"));\r\n\t\tlabelBox.addEventListener(\"click\", () => {\r\n\t\t\tbox.classList.contains(\"expanded\") ? box.classList.remove(\"expanded\") : box.classList.add(\"expanded\");\r\n\t\t});\r\n\t\treturn valueBox;\r\n\t}\r\n\r\n\tfunction createItemList(container: any, label: string, content: any, cssClass: string, handler: (item: any, valueBox: any) => void, collapsed?: boolean) {\r\n\t\tif (content) {\r\n\t\t\tvar dataList = (Array.isArray(content) ? content : [content]);\r\n\t\t\tvar valueBox = createItemListInternals(container, label, dataList, cssClass, collapsed || false);\r\n\t\t\tdataList.forEach(item => {\r\n\t\t\t\thandler?.(item, valueBox);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tfunction createAJAXItemList(container: any, label: string, content: any, cssClass: string, successHandler: (data: any, itemContainer: Element, itemList?: Element) => void, collapsed?: boolean) {\r\n\t\tif (content) {\r\n\t\t\tvar dataList = (Array.isArray(content) ? content : [content]);\r\n\t\t\tvar valueBox = createItemListInternals(container, label, dataList, \"ajaxList \" + cssClass, collapsed || false);\r\n\t\t\tsetupAJAXResourceList(valueBox, dataList, undefined, successHandler, (error: any, itemContainer: any) => {\r\n\t\t\t\titemContainer.classList.remove(\"resourceListItem\");\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tfunction createCompetencyDSPList(container: any, label: string, source: any, property: string, cssClass: string) {\r\n\t\tcreateAJAXItemList(container, label, source[property], cssClass, renderCompetencyLinkListItem);\r\n\t\tgetResourceViaResourceCacheV3(apiUrl + \"/detail/descriptionsetbyctid/\" + source[\"ceterms:ctid\"] + \"?perBranchLimit=-1\", (data: any) => {\r\n\t\t\tconsole.log(\"DSP for competency\", data);\r\n\t\t\tif (data.Result.RelatedItemsMap) {\r\n\t\t\t\tconsole.log(\"Related Items Map for competency\", data.Result.RelatedItemsMap);\r\n\t\t\t\tvar allMatches = data.Result.RelatedItemsMap.filter((mapItem: any) => {\r\n\t\t\t\t\treturn mapItem?.Path?.match(new RegExp(\"< \" + property + \" < ceasn:Competency$\")) != null\r\n\t\t\t\t}).flatMap((mapItem: any) => mapItem.URIs) as Array;\r\n\r\n\t\t\t\tvar filteredMatches = [] as Array;\r\n\t\t\t\tallMatches.forEach(match => {\r\n\t\t\t\t\t!filteredMatches.includes(match) && filteredMatches.push(match);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (filteredMatches?.length > 0) {\r\n\t\t\t\t\tcreateAJAXItemList(container, \"External/Incoming \" + label, filteredMatches, cssClass + \" external\", renderCompetencyLinkListItem)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tfunction renderLinkListItem(item: any, valueBox: any) {\r\n\t\tvar link = valueBox.appendChild(createElement(\"a\", \"linkListItem\"));\r\n\t\tlink.href = item;\r\n\t\tlink.innerHTML = item;\r\n\t\tlink.target = \"_blank\";\r\n\t}\r\n\r\n\tfunction renderSearchLinkListItem(item: any, valueBox: any) {\r\n\t\tif (!item.indexOf) {\r\n\t\t\tdebugger;\r\n\t\t}\r\n\t\tvar link = valueBox.appendChild(createElement(\"a\", \"linkListItem searchLinkListItem\"));\r\n\t\tlink.href = item.indexOf(\"http\") == 0 ? item : \"/search?searchtype=competencyframework&keywords=\" + encodeURIComponent(item);\r\n\t\tlink.innerHTML = item;\r\n\t\tlink.target = \"_blank\";\r\n\t}\r\n\r\n\tfunction renderDetailPageLinkListItem(item: any, valueBox: any) {\r\n\t\tvar link = valueBox.appendChild(createElement(\"a\", \"linkListItem detailPageLinkListItem\"));\r\n\t\tvar url = item.replace(registryURL, appURL);\r\n\t\tlink.href = url;\r\n\t\tlink.innerHTML = url;\r\n\t\tlink.target = \"_blank\";\r\n\t}\r\n\r\n\tfunction renderConceptListItem(data: any, valueBox: any, listBox: any) {\r\n\t\tvalueBox.innerHTML = \"\";\r\n\t\tvar concept = data[\"@graph\"]?.find((m: any) => m[\"@type\"] == \"skos:Concept\") || data;\r\n\t\tvar schemeURI = Array.isArray(concept[\"skos:inScheme\"])\r\n\t\t\t\t\t\t? concept[\"skos:inScheme\"][0] : concept[\"skos:inScheme\"] || \"\"\r\n\t\tvar renderURL = concept[\"@id\"].includes(\"credentialengineregistry.org\") ? (appURL + \"/conceptscheme/ce-\" + schemeURI.split(\"/ce-\")[1] + \"?targetCTID=\" + concept[\"ceterms:ctid\"]) : concept[\"@id\"];\r\n\t\tvar renderLabel = (concept[\"skos:notation\"] !== null && concept[\"skos:notation\"] !== undefined)\r\n \t\t\t\t? getEnglish(concept[\"skos:notation\"]) + ' ' + getEnglish(concept[\"skos:prefLabel\"])\r\n \t\t\t\t: getEnglish(concept[\"skos:prefLabel\"])|| renderURL;\r\n\t\tvar renderDefinition = getEnglish(concept[\"skos:definition\"]);\r\n\r\n\t\tvar wrapper = valueBox.appendChild(createElement(\"div\", \"concept\"));\r\n\t\tvar link = wrapper.appendChild(createElement(\"a\", \"\"));\r\n\t\tlink.href = renderURL;\r\n\t\tlink.innerHTML = renderLabel;\r\n\t\tif (renderDefinition) {\r\n\t\t\tvar definition = wrapper.appendChild(createElement(\"div\", \"description\"));\r\n\t\t\tdefinition.innerHTML = renderDefinition;\r\n\t\t}\r\n\t}\r\n\r\n\tfunction renderProgressionLevelListItem(data: any, valueBox: any, listBox: any) {\r\n\t\tvalueBox.innerHTML = \"\";\r\n\t\tvar concept = data[\"@graph\"]?.find((m: any) => m[\"@type\"] == \"asn:ProgressionLevel\") || data;\r\n\t\tvar schemeURI = Array.isArray(concept[\"ceasn:inProgressionModel\"]) \r\n\t\t\t\t\t\t? concept[\"ceasn:inProgressionModel\"][0] : concept[\"ceasn:inProgressionModel\"] || \"\";\r\n\t\tvar renderURL = concept[\"@id\"].includes(\"credentialengineregistry.org\") ? (appURL + \"/progressionmodel/ce-\" + schemeURI.split(\"/ce-\")[1] + \"?targetCTID=\" + concept[\"ceterms:ctid\"]) : concept[\"@id\"];\r\n\t\tvar renderLabel = getEnglish(concept[\"skos:prefLabel\"]) || renderURL;\r\n\t\tvar renderDefinition = getEnglish(concept[\"skos:definition\"]);\r\n\r\n\t\tvar wrapper = valueBox.appendChild(createElement(\"div\", \"concept\"));\r\n\t\tvar link = wrapper.appendChild(createElement(\"a\", \"\"));\r\n\t\tlink.href = renderURL;\r\n\t\tlink.innerHTML = renderLabel;\r\n\t\tif (renderDefinition) {\r\n\t\t\tvar definition = wrapper.appendChild(createElement(\"div\", \"description\"));\r\n\t\t\tdefinition.innerHTML = renderDefinition;\r\n\t\t}\r\n\t}\r\n\r\n\tfunction renderCredentialAlignmentObjectSearchLinkListItem(item: any, valueBox: any) {\r\n\t\tvar code = item[\"ceterms:codedNotation\"] || \"\";\r\n\t\tvar name = getEnglish(item[\"ceterms:targetNodeName\"]) || \"\";\r\n\t\tvar description = getEnglish(item[\"ceterms:targetNodeDescription\"]) || \"\";\r\n\t\tvar wrapper = valueBox.appendChild(createElement(\"div\", \"credentialAlignmentObject\"));\r\n\t\tvar link = wrapper.appendChild(createElement(\"a\", \"\"));\r\n\t\tlink.href = \"/search?searchtype=competencyframework&keywords=\" + encodeURIComponent(code || name);\r\n\t\tlink.innerHTML = [code, name].filter(m => m).join(\": \");\r\n\t\tlink.target = \"_blank\";\r\n\t\tif (description) {\r\n\t\t\tvar descriptionBox = wrapper.appendChild(createElement(\"div\", \"description\"));\r\n\t\t\tdescriptionBox.innerHTML = description;\r\n\t\t}\r\n\t}\r\n\r\n\tfunction renderCompetencyLinkListItem(item: any, valueBox: any) {\r\n\t\tvalueBox.innerHTML = \"\";\r\n\t\tvalueBox.classList.remove(\"resourceListItem\");\r\n\t\tvalueBox.classList.add(\"competencyLinkListItem\");\r\n\t\tvar url = item[\"@id\"];\r\n\t\tvar frameworkURL = item[\"ceasn:isPartOf\"];\r\n\t\tvar collectionURLs = item[\"ceterms:isMemberOf\"];\r\n\t\tvar text = getEnglish(item[\"ceasn:competencyText\"]);\r\n\r\n\t\tvar containerLink = valueBox.appendChild(createElement(\"a\", \"competencyContainer\"));\r\n\t\tvar containerDiv = valueBox.appendChild(createElement(\"div\", \"competencyContainer\"));\r\n\t\tvar separator = valueBox.appendChild(document.createTextNode(\": \"));\r\n\t\tvar itemLink = valueBox.appendChild(createElement(\"a\", \"\"));\r\n\r\n\t\tif (frameworkURL || (collectionURLs && collectionURLs.length == 1)) {\r\n\t\t\tvalueBox.removeChild(containerDiv);\r\n\t\t\tgetResourceViaResourceCacheV3(frameworkURL || collectionURLs[0], (data) => {\r\n\t\t\t\tcontainerLink.href = (data[\"@id\"] || \"\").replace(registryURL, appURL);\r\n\t\t\t\tcontainerLink.target = \"_blank\";\r\n\t\t\t\tcontainerLink.innerHTML = getEnglish(data[\"ceterms:name\"] || data[\"ceasn:name\"]);\r\n\t\t\t});\r\n\t\t}\r\n\t\telse if (collectionURLs && collectionURLs.length > 1) {\r\n\t\t\tvalueBox.removeChild(containerLink);\r\n\t\t\tcontainerDiv.innerHTML = collectionURLs.length + \" Collections\";\r\n\t\t}\r\n\t\telse {\r\n\t\t\tvalueBox.removeChild(containerLink);\r\n\t\t\tvalueBox.removeChild(separator);\r\n\t\t}\r\n\r\n\t\t//itemLink.href = url.replace(registryURL, appURL);\r\n\t\titemLink.href = url.includes(registryURL) ? ( appURL + \"/competency/\" + item[\"ceterms:ctid\"] ) : url;\r\n\t\titemLink.target = \"_blank\";\r\n\t\titemLink.innerHTML = text;\r\n\t}\r\n\r\n\tfunction renderResourceLinkListItem(item: any, valueBox: any) {\r\n\t\tvalueBox.innerHTML = \"\";\r\n\t\tvalueBox.classList.remove(\"resourceListItem\");\r\n\t\tvalueBox.classList.add(\"renderResourceLinkListItem\");\r\n\t\tvar ctid = item[\"ceterms:ctid\"];\r\n\t\tvar url = appURL + \"/resources/\" + ctid;\r\n\t\tvar link = valueBox.appendChild(createElement(\"a\", \"linkListItem detailPageLinkListItem\"));\r\n\t\tlink.href = url;\r\n\t\tlink.innerHTML = getEnglish(item[\"ceterms:name\"] || item[\"ceasn:name\"] || item[\"skos:prefLabel\"] || item[\"ceasn:competencyLabel\"] || \"Unknown Name\");\r\n\t\tlink.target = \"_blank\";\r\n\t}\r\n}\r\n\r\nexport function CompetencyStyleBlock() {\r\n\treturn \r\n}\r\n\r\n/* Properties\r\nasn:hasProgressionLevel\r\nceasn:abilityEmbodied\r\nceasn:alignFrom\r\nceasn:alignTo\r\nceasn:altCodedNotation\r\nceasn:author\r\nceasn:broadAlignment\r\nceasn:codedNotation\r\nceasn:comment\r\nceasn:competencyCategory\r\nceasn:competencyLabel\r\nceasn:competencyText\r\nceasn:complexityLevel\r\nceasn:comprisedOf\r\nceasn:conceptKeyword\r\nceasn:conceptTerm\r\nceasn:creator\r\nceasn:crossSubjectReference\r\nceasn:dateCreated\r\nceasn:dateModified\r\nceasn:derivedFrom\r\nceasn:educationLevelType\r\nceasn:exactAlignment\r\nceasn:hasChild\r\nceasn:identifier\r\nceasn:inferredCompetency\r\nceasn:inLanguage\r\nceasn:isChildOf\r\nceasn:isPartOf\r\nceasn:isTopChildOf\r\nceasn:isVersionOf\r\nceasn:knowledgeEmbodied\r\nceasn:license\r\nceasn:listID\r\nceasn:localSubject\r\nceasn:majorAlignment\r\nceasn:minorAlignment\r\nceasn:narrowAlignment\r\nceasn:prerequisiteAlignment\r\nceasn:shouldIndex\r\nceasn:skillEmbodied\r\nceasn:sourceDocumentation\r\nceasn:substantiatingCompetencyFramework\r\nceasn:substantiatingCredential\r\nceasn:substantiatingJob\r\nceasn:substantiatingOccupation\r\nceasn:substantiatingOrganization\r\nceasn:substantiatingResource\r\nceasn:substantiatingTask\r\nceasn:substantiatingWorkRole\r\nceasn:taskEmbodied\r\nceasn:weight\r\nceterms:ctid\r\nceterms:environmentalHazardType\r\nceterms:hasTask\r\nceterms:hasWorkforceDemand\r\nceterms:industryType\r\nceterms:instructionalProgramType\r\nceterms:isMemberOf\r\nceterms:occupationType\r\nceterms:performanceLevelType\r\nceterms:physicalCapabilityType\r\nceterms:sensoryCapabilityType\r\nnavy:hasMaintenanceTask\r\nnavy:hasSourceIdentifier\r\nnavy:hasTrainingTask\r\n*/","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionContent } from '../../components/DetailPage/Shared';\r\nimport { CompetencyFramework as CompetencyFrameworkType, Competency as CompetencyType, AJAXSettings } from '../../types/external';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { TabSetOrSingle } from './TabSelector';\r\nimport { appURL } from '../../shared/globals';\r\nimport AJAXResourceList, { appendAJAXCacheV3Resource } from '../../components/AJAXResourceList';\r\nimport { CompetencyStyleBlock, renderCompetencyFromRDF } from '../../components/DetailPage/Competency';\r\n\r\nexport function CompetencyFrameworkList(props: { frameworkList: AJAXSettings; }) {\r\n\treturn (\r\n\t\t (\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tLabel: (framework as CompetencyFrameworkType).Name,\r\n\t\t\t\t\t\tContent: \r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\t\t\t)}\r\n\t\t/>\r\n\t)\r\n}\r\n\r\nexport function CompetencyFramework(props: { framework: CompetencyFrameworkType }) {\r\n\treturn (\r\n\t\t\r\n\t\t\t{props.framework.CTID && {props.framework.Name}}\r\n\t\t\t{!props.framework.CTID && {props.framework.Name}}\r\n\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.framework.Description}\r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.framework.Meta_HasPart.filter((competency) => (props.framework.HasTopChild.indexOf(competency.CredentialRegistryURL) > -1)).map((competency) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport function CompetencyFrameworkAJAX(props: { framework: CompetencyFrameworkType }) {\r\n\tvar applicableCompetencies = props.framework.Meta_HasPart.filter(competency => competency.Meta_IsReferenced);\r\n\tapplicableCompetencies.filter(m => m.CredentialRegistryURL.indexOf(\"_:\") == 0).forEach(competency => {\r\n\t\tappendAJAXCacheV3Resource({\r\n\t\t\tURL: competency.CredentialRegistryURL,\r\n\t\t\tData: competency\r\n\t\t});\r\n\t});\r\n\tvar applicableCompetencyURLs = applicableCompetencies.map(competency => competency.CredentialRegistryURL);\r\n\treturn (\r\n\t\t\r\n\t\t\t{props.framework.CTID && {props.framework.Name}}\r\n\t\t\t{!props.framework.CTID && {props.framework.Name}}\r\n\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.framework.Description}\r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t applicableCompetencyURLs.includes(url))}\r\n\t\t\t\t\t\turls={applicableCompetencyURLs}\r\n\t\t\t\t\t\tonSuccess={(data, itemContent, listContent) => renderCompetencyFromRDF(data, itemContent, [], false)}\r\n\t\t\t\t\t\tStyleComponent={CompetencyStyleBlock}\r\n\t\t\t\t\t/>\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport function Competency(props: { competency: CompetencyType, competencyList: Array }) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.competency.Meta_IsReferenced ?\r\n\t\t\t\t\t\t\t :\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t{props.competency.CompetencyCategory ? {props.competency.CompetencyCategory} : null}\r\n\t\t\t\t\t{props.competency.ListID ? {props.competency.ListID} : null}\r\n\t\t\t\t\t{props.competency.CodedNotation ? {props.competency.CodedNotation} : null}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{props.competency.CompetencyLabel ? {props.competency.CompetencyLabel} : null}\r\n\t\t\t\t\t{props.competency.CompetencyText ?
    {props.competency.CompetencyText}
    : null}\r\n\t\t\t\t\t{props.competency.Comment ?
    {props.competency.Comment}
    : null}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t{props.competency.HasChild?.length > 0 ? (\r\n\t\t\t\t\r\n\t\t\t\t\t{props.competency.HasChild.map(function (childURI) {\r\n\t\t\t\t\t\tconst child = props.competencyList.filter((item) => (item.CredentialRegistryURL == childURI))[0];\r\n\t\t\t\t\t\tif (child) {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t) : null}\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nconst CompetencyWrapper = styled.div`\r\n\tpadding: 5px;\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid #DDD;\r\n\t}\r\n`;\r\n\r\nconst CompetencyData = styled.div`\r\n\tdisplay: flex;\r\n`;\r\n\r\nconst CompetencyPrefix = styled.div`\r\n\tflex: 1 1 auto;\r\n\tmax-width: 300px;\r\n\tdisplay: flex;\r\n\tmargin-right: 10px;\r\n\tfont-size: 80%;\r\n`;\r\n\r\nconst CompetencyIconItem = styled.div`\r\n\tflex: 1 1 auto;\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tjustify-content: center;\r\n\tpadding: 2.5px 5px;\r\n\topacity: 0.8;\r\n`;\r\n\r\nconst CompetencyPrefixItem = styled.div`\r\n\tflex: 1 1 auto;\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tjustify-content: center;\r\n\tmin-width: 50px;\r\n\tmax-width: 150px;\r\n\tpadding: 2.5px 5px;\r\n\tbackground-color: #EEE;\r\n\tmargin: 1px;\r\n`;\r\n\r\nconst CompetencyContent = styled.div`\r\n\tflex: 1 1 100%;\r\n`;\r\n\r\nconst CompetencyLabel = styled.div`\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst CompetencyChildren = styled.div`\r\n\tpadding: 5px 0 0 25px;\r\n`;\r\n","import React, { ReactElement, ReactNode } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Assessment, ConditionProfile as ConditionProfileType, Outline, QuantitativeValue } from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionLabel, SectionContent, SectionContentItem } from './Shared';\r\nimport OutlineList from './Outline';\r\nimport JurisdictionProfileList from './JurisdictionProfile';\r\nimport CostManifestList from './CostManifest'\r\nimport CostProfileList from './CostProfile'\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport ValueProfileList from './ValueProfile';\r\nimport DateRange from './DateRange';\r\nimport { TabSetOrSingle } from './TabSelector';\r\nimport { ModalButtonAndWindow } from '../Modal';\r\nimport { CompetencyFrameworkList } from './CompetencyFramework';\r\nimport { widgetGetPluralLabelForText, widgetReplaceSingleLabelInText, widgetReplacePluralLabelInText } from '../../utils/SiteWidgetizer';\r\n\r\nexport default function ConditionProfileList(props: { items: ConditionProfileType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.items.map((item) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function ConditionProfile(props: { item: ConditionProfileType }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t{props.item.Name || \"Conditions\"}\r\n\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
    {props.item.Description || \"No Description\"}
    \r\n\t\t\t\t\t\t{props.item.Condition?.length > 0 &&\r\n\t\t\t\t\t\t\t
      \r\n\t\t\t\t\t\t\t\t{props.item.Condition.map((condition) => (\r\n\t\t\t\t\t\t\t\t\t
    • {condition}
    • \r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t{props.item.SubjectWebpage &&\r\n\t\t\t\t\t\tSee Web Page for these Conditions\r\n\t\t\t\t\t}\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t{(props.item.DateEffective || props.item.SubmissionOf?.length > 0 || props.item.SubmissionOfDescription || props.item.Weight) && \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tDetails:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{(props.item.SubmissionOf?.length > 0 || props.item.SubmissionOfDescription) &&\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    Submission Of: {props.item.SubmissionOfDescription}
    \r\n\t\t\t\t\t\t\t\t\t{props.item.SubmissionOf?.length > 0 && \r\n\t\t\t\t\t\t\t\t\t\t
      \r\n\t\t\t\t\t\t\t\t\t\t\t{props.item.SubmissionOf.map((submissionItem) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
    • {submissionItem.indexOf(\"http\") == 0 ? {submissionItem} : <>{submissionItem}}
    • \r\n\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{(props.item.AudienceLevelType?.length > 0 || props.item.AudienceType?.length > 0 || props.item.Experience || props.item.YearsOfExperience || props.item.MinimumAge) &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tApplicable Audience:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t } />\r\n\t\t\t\t\t\t\t } />\r\n\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{(props.item.CommonCosts?.Values?.length > 0 || props.item.EstimatedCost?.length > 0) && \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tCost Information:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{(props.item.CreditValue?.length > 0 || props.item.CreditUnitTypeDescription) &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tCredit Information:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.item.CreditUnitTypeDescription &&
    {props.item.CreditUnitTypeDescription}
    }\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.Jurisdiction?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tJurisdiction Information:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.ResidentOf?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tResidency Information:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.TargetCredential?.Values?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Credentials\")}:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.TargetAssessment?.Values?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Assessments\")}:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.TargetLearningOpportunity?.Values?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Learning Opportunities\")}:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.TargetOccupation?.Values?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Occupations\")}:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.TargetJob?.Values?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{widgetGetPluralLabelForText(\"Jobs\")}:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t{(props.item.TargetCompetency?.Values?.length > 0 ) &&\r\n\t\t\t\t
    \t\t\t\r\n\t\t\t\tRelated {widgetGetPluralLabelForText(\"Competencies\")}\r\n\t\t\t\t\t }\r\n\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t/>\r\n\t\t\t\t
    \r\n\t\r\n\t\t\t}\r\n\t\t\t\t{props.item.AssertedBy?.Values?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tAsserted By:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.AlternativeCondition?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tAlternatives and Options:\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t\t\tLabel: item.Name || \"Option \" + (itemIndex + 1),\r\n\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\tkey={'alternative-' + props.item.Meta_Id}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport function getConditionProfileListButtonName(prefixText: string, conditionProfileList: Array): string {\r\n\tif (!conditionProfileList || conditionProfileList.length == 0) {\r\n\t\treturn prefixText + \"Specific Details\";\r\n\t}\r\n\r\n\tvar countsText = [\r\n\t\tsingleOrMulti(getDistinctCount(conditionProfileList, m => m.TargetCredential?.Values, m => m.TargetCredential?.Total || 0), \"{count} Credential{s}\"),\r\n\t\tsingleOrMulti(getDistinctCount(conditionProfileList, m => m.TargetAssessment?.Values, m => m.TargetAssessment?.Total || 0), \"{count} Assessment{s}\"),\r\n\t\tsingleOrMulti(getDistinctCount(conditionProfileList, m => m.TargetLearningOpportunity?.Values, m => m.TargetLearningOpportunity?.Total || 0), \"{count} Learning Opportunit{ies}\"),\r\n\t\tsingleOrMulti(getDistinctCount(conditionProfileList, m => m.TargetOccupation?.Values, m => m.TargetOccupation?.Total || 0), \"{count} Occupation{s}\"),\r\n\t\tsingleOrMulti(getDistinctCount(conditionProfileList, m => m.TargetCompetency?.Values?.flatMap(n => n.Meta_HasPart), m => m.TargetCompetency?.Total || 0), \"{count} Competenc{ies}\"),\r\n\t\tsingleOrMulti(getDistinctCount(conditionProfileList, m => m.AlternativeCondition, m => 0), \"Has {count} Alternative{s}\"),\r\n\t].filter(m => m).join(\", \");\r\n\r\n\treturn prefixText + \" \" + (countsText ? countsText : \"Specific Details\") + (conditionProfileList.length > 1 ? \" (Across \" + conditionProfileList.length + \" Sets of Conditions)\" : \"\");\r\n\r\n\tfunction getDistinctCount(list: Array, getTargets: (profile: ConditionProfileType) => Array | undefined, getFallbackCount: (profile: ConditionProfileType) => number): number {\r\n\t\tvar distinctIDs = list.flatMap(m => getTargets(m) || []).map(m => m.CTID || m.Meta_Id || m.URL || JSON.stringify(m)).filter((value, index, self) => { return self.indexOf(value) == index });\r\n\t\tvar fallbackTotal = list.flatMap(m => getFallbackCount(m)).reduce((prev, next) => prev + next, 0);\r\n\t\treturn distinctIDs.length || fallbackTotal;\r\n\t}\r\n\r\n\tfunction singleOrMulti(count: number, labelTemplate: string) : string {\r\n\t\tvar text = count == 0 ? \"\" : labelTemplate.replace(/{count}/g, count.toString()).replace(/{s}/g, count == 1 ? \"\" : \"s\").replace(/{ies}/g, count == 1 ? \"y\" : \"ies\");\r\n\t\treturn count == 0 ? \"\" : count == 1 ? widgetReplaceSingleLabelInText(text) : widgetReplacePluralLabelInText(text);\r\n\t}\r\n\t\r\n}\r\n\r\nconst ConditionProfileWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst DisplayItem = styled.div`\r\n\r\n`;\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { ConditionManifest as ConditionManifestType, ConditionProfile as ConditionProfileType } from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionLabel, SectionContent, SectionContentItem } from './Shared';\r\nimport { TabSetOrSingle } from './TabSelector';\r\nimport { ConditionProfile } from './ConditionProfile';\r\nimport LinkObject from './LinkObject';\r\n\r\nexport default function ConditionManifestList(props: { items: ConditionManifestType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.items.map((item) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function ConditionManifest(props: { item: ConditionManifestType }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t{props.item.Name || \"Common Conditions\"}\r\n\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{props.item.Description &&
    {props.item.Description}
    }\r\n\t\t\t\t\t\t{props.item.SubjectWebpage && }\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nfunction ConditionProfileSet(props: { label: string, items: ConditionProfileType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.label}\r\n\t\t\t\r\n\t\t\t\t {\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\tLabel: item.Name || \"Option \" + (itemIndex + 1),\r\n\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})}\r\n\t\t\t\t/>\r\n\t\t\t\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nconst BasicInfo = styled.div`\r\n\tdisplay: flex;\r\n\r\n\t& > div {\r\n\t\tflex: 1 1 auto;\r\n\t}\r\n\r\n\t& > a {\r\n\t\tmargin-left: 10px;\r\n\t}\r\n`;","import React, { ReactElement, ReactNode } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { ProcessProfile as ProcessProfileType } from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionLabel, SectionContent, SectionContentItem } from './Shared';\r\nimport DateRange from './DateRange';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport JurisdictionProfileList from './JurisdictionProfile';\r\nimport OutlineList from './Outline';\r\nimport { PlainTextLink } from './LinkObject';\r\nimport LinkObject from './LinkObject';\r\n\r\nexport default function ProcessProfileList(props: { items: ProcessProfileType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.items.map((item) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function ProcessProfile(props: { item: ProcessProfileType }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
    {props.item.Description || \"No Description\"}
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t{props.item.SubjectWebpage && }\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t{(props.item.DataCollectionMethodType || props.item.ExternalInputType?.length > 0 || props.item.ProcessFrequency || props.item.VerificationMethodDescription || props.item.ScoringMethodDescription?.length > 0 || props.item.ScoringMethodExample || props.item.ProcessMethod || props.item.ProcessStandards) && \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\tDetails:\r\n\t\t\t\t\t\t } />\r\n\t\t\t\t\t\t } />\r\n\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t } />\r\n\t\t\t\t\t\t } />\r\n\t\t\t\t\t\t } />\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{props.item.ProcessingAgent?.Values?.length > 0 && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tProcessing Agent:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{props.item.TargetCredential?.Values?.length > 0 && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tProcess for Credentials:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{props.item.TargetAssessment?.Values?.length > 0 && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tProcess for Assessments:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{props.item.TargetLearningOpportunity?.Values?.length > 0 && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tProcess for Learning Opportunities:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{props.item.TargetCompetencyFramework?.Values?.length > 0 && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tProcess for Competency Frameworks:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t\t{props.item.Jurisdiction?.length > 0 && (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tJurisdiction Information:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t)}\r\n\t\t\t
    \r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nconst BasicInfo = styled(Section)`\r\n\tdisplay: flex;\r\n\r\n\t& > a {\r\n\t\tmargin-left: auto;\r\n\t}\r\n`;","//Render from Finder API\r\nexport function renderJSONLDMetaTags(resource, broadType, modifierMethod) {\r\n\t//Skip if empty/null/etc\r\n\tif (!resource) {\r\n\t\treturn;\r\n\t}\r\n\r\n\t//Match the broad type to a known type\r\n\tvar renderHelper = [\r\n\t\t{ broadType: \"organization\", renderMethod: renderAPI_Organization },\r\n\t\t{ broadType: \"credential\", renderMethod: renderAPI_Credential },\r\n\t\t{ broadType: \"assessment\", renderMethod: renderAPI_Assessment },\r\n\t\t{ broadType: \"learningopportunity\", renderMethod: renderAPI_LearningOpportunity },\r\n\t\t{ broadType: \"conceptscheme\", renderMethod: renderLD_ConceptScheme },\r\n\t\t{ broadType: \"competencyframework\", renderMethod: renderLD_CompetencyFramework },\r\n\t\t{ broadType: \"competency\", renderMethod: renderLD_Competency },\r\n\t\t{ broadType: \"collection\", renderMethod: renderLD_Collection },\r\n\t\t{ broadType: \"pathway\", renderMethod: renderAPI_Pathway },\r\n\t].find(m => m.broadType == broadType.toLowerCase());\r\n\r\n\t//Get the data and modify as needed\r\n\tvar result = {\r\n\t\t\"@context\": \"https://schema.org/\",\r\n\t\t\"@type\": \"CreativeWork\",\r\n\t};\r\n\r\n\t//Append Common properties\r\n\tappend(result, \"additionalType\", (resource.CTDLType || resource[\"@type\"])?.replace(\"ceterms:\", \"https://purl.org/ctdl/terms/\").replace(\"ceasn:\", \"https://purl.org/ctdlasn/terms/\").replace(\"qdata:\", \"https://credreg.net/qdata/terms/\"));\r\n\tappend(result, \"name\", resource.Name || resource[\"ceterms:name\"] || resource[\"ceasn:name\"] || resource[\"ceasn:competencyLabel\"] || resource[\"skos:prefLabel\"], resource.Meta_Language);\r\n\tappend(result, \"alternateName\", resource.AlternateName || resource[\"ceterms:alternateName\"] || resource[\"skos:altLabel\"], resource.Meta_Language, true);\r\n\tappend(result, \"description\", resource.Description || resource[\"ceterms:description\"] || resource[\"ceasn:description\"] || resource[\"ceasn:competencyText\"] || resource[\"skos:definition\"], resource.Meta_Language);\r\n\tappend(result, \"image\", resource.Image || resource[\"ceterms:image\"]);\r\n\tappend(result, \"sameAs\", resource.RegistryData?.Resource?.URL || resource[\"@id\"]);\r\n\tappend(result, \"identifier\", resource.CTID || resource[\"ceterms:ctid\"], false, false, ctid => { return { \"@type\": \"PropertyValue\", \"propertyID\": \"https://purl.org/ctdl/terms/ctid\", \"value\": ctid } });\r\n\tappend(result, \"inLanguage\", resource.Meta_Language || resource[\"ceterms:inLanguage\"] || resource[\"ceasn:inLanguage\"], null, true);\r\n\r\n\t//Append Type-specific properties\r\n\t(renderHelper?.renderMethod || render_Generic)(resource, result);\r\n\tmodifierMethod?.(resource, result);\r\n\r\n\t//Render the data\r\n\tconsole.log(\"Rendering data for \" + broadType + \" as schema:\" + result[\"@type\"], { source: resource, result: result });\r\n\trenderJSONLDMetaTag(result);\r\n}\r\n//\r\n\r\n//Append data if it exists\r\nfunction append(container, property, value, asLangStringLanguage, asArray, modMethod) {\r\n\tif (value) {\r\n\t\tvar converted;\r\n\r\n\t\t//If the object is already a language map, just use it\r\n\t\tif (typeof (value) == \"object\" && !Array.isArray(value)) {\r\n\t\t\tconverted = value;\r\n\t\t}\r\n\t\t//Otherwise, convert it\r\n\t\telse {\r\n\t\t\t//If the value needs to be an array, ensure that it is one\r\n\t\t\tconverted = asArray ? (Array.isArray(value) ? value : [value]) : value;\r\n\t\t\t//If the value needs to (also) be a langString, turn it into an object with the appropriate language key\r\n\t\t\tif (asLangStringLanguage) {\r\n\t\t\t\tvar temp = {};\r\n\t\t\t\ttemp[asLangStringLanguage] = converted;\r\n\t\t\t\tconverted = temp;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tcontainer[property] = modMethod ? modMethod(converted) : converted;\r\n\t}\r\n}\r\n//\r\n\r\n//Create or update the meta tag in the header\r\nexport function renderJSONLDMetaTag(data) {\r\n\tvar tag = document.head.querySelector(\".jsonldmeta\");\r\n\tif (!tag) {\r\n\t\ttag = document.createElement(\"script\");\r\n\t\ttag.type = \"application/ld+json\";\r\n\t\ttag = document.head.appendChild(tag);\r\n\t}\r\n\ttag.innerHTML = JSON.stringify(data);\r\n}\r\n//\r\n\r\n//--- Methods to render data for specific types ---//\r\nfunction render_Generic(resource, result) {\r\n\t\r\n}\r\n//\r\n\r\nfunction renderAPI_Organization(resource, result) {\r\n\tresult[\"@type\"] = \"Organization\";\r\n}\r\n//\r\n\r\nfunction renderAPI_Credential(resource, result) {\r\n\tresult[\"@type\"] = \"EducationalOccupationalCredential\";\r\n}\r\n//\r\n\r\nfunction renderAPI_Assessment(resource, result) {\r\n\tresult[\"@type\"] = \"Quiz\";\r\n}\r\n//\r\n\r\nfunction renderAPI_LearningOpportunity(resource, result) {\r\n\tresult[\"@type\"] = resource.CTDLType == \"ceterms:LearningProgram\" ? \"EducationalOccupationalProgram\" : \"Course\";\r\n}\r\n//\r\n\r\nfunction renderAPI_Pathway(resource, result) {\r\n\tresult[\"@type\"] = \"Collection\"; //Pathway is almost a subclass of Collection\r\n}\r\n//\r\n\r\nfunction renderLD_ConceptScheme(resource, result) {\r\n\tresult[\"@type\"] = \"https://www.w3.org/2009/08/skos-reference/skos.html#ConceptScheme\";\r\n}\r\n//\r\n\r\nfunction renderLD_CompetencyFramework(resource, result) {\r\n\tresult[\"@type\"] = \"Collection\"; //Competency Framework is a subclass of Collection\r\n}\r\n//\r\n\r\nfunction renderLD_Competency(resource, result) {\r\n\tresult[\"@type\"] = \"DefinedTerm\"; //No schema.org class for Competency\r\n}\r\n//\r\n\r\nfunction renderLD_Collection(resource, result) {\r\n\tresult[\"@type\"] = \"Collection\";\r\n}\r\n//\r\n\r\n","import React, { useRef, useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport {\r\n MobileAboutDetail,\r\n Description,\r\n Label,\r\n Wrapper,\r\n ListWithoutBullet,\r\n} from '../../components/DetailPage/styles';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport orgIcon from '../../assets/images/icons/icon-organization-white-green-01.svg';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport sectorsIcon from '../../assets/images/icons/icon-occupations-and-industries-blue-green-01.svg';\r\nimport processIcon from '../../assets/images/icons/icon-process-blue-green-01.svg';\r\nimport AboutDetail from './AboutDetail';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useMediaQuery, useGet } from '../../hooks';\r\nimport { ModalType } from '../../types/internal';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { Organization, VerificationServiceProfile, CostManifest, ConditionManifest, ProcessProfile } from '../../types/external';\r\nimport LocationPageSection from '../../components/DetailPage/LocationPageSection';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport QualityAssurancePageSection from '../../components/DetailPage/QualityAssurancePageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport TextLink from '../../components/TextLink';\r\nimport VerificationServiceProfiles from '../../components/VerificationServiceProfile/list';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faExternalLinkAlt } from '@fortawesome/free-solid-svg-icons';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport CostManifestList from '../../components/DetailPage/CostManifest';\r\nimport ConditionManifestList from '../../components/DetailPage/ConditionManifest';\r\nimport ProcessProfileList from '../../components/DetailPage/ProcessProfile';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from '../../utils/SiteWidgetizer';\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function OrganizationPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [orgDataIsLoading, orgDataHasError, getOrgData] = useGet();\r\n const [org, setOrg] = useState({} as Organization);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n const mapMarkerListeners = useRef>([]);\r\n const [openedModal, setOpenedModal] = useState();\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n\r\n useEffect(() => {\r\n function removeMapMarkerListeners() {\r\n mapMarkerListeners.current.forEach((listener) => {\r\n listener.remove();\r\n });\r\n }\r\n return removeMapMarkerListeners;\r\n }, []);\r\n useEffect(() => {\r\n getOrgData(`${apiUrl}/organization/${id}`, (data: Organization) => {\r\n\t\t\tsetOrg(data);\r\n\t\t\trenderJSONLDMetaTags(data, \"Organization\");\r\n // check condition (prototyping if doing fetch after load - not implemented)\r\n if ( data && data.HasVerificationService && data.HasVerificationService.Total > 0 ) {\r\n\r\n }\r\n // possibly disable button or would have to handle user clicking button before data is available\r\n // prefetch data\r\n // setState()\r\n });\r\n }, [getOrgData, id]);\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(org.CTDLTypeLabel, \"Organization\");\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {org.Description && (\r\n {org.Description}\r\n )}\r\n\t\t\t\t\t\t\t\t{org.SubjectWebpage && (\r\n\t\t\t\t\t\t\t\t\t\r\n )}\r\n \r\n {org.MissionAndGoalsStatement && (\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n \r\n )}\r\n {org.MissionAndGoalsStatementDescription && (\r\n \r\n \r\n \r\n )}\r\n {org.AgentPurpose && (\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n \r\n )}\r\n {org.AgentPurposeDescription && (\r\n \r\n \r\n \r\n )}\r\n \r\n\r\n {org.ParentOrganization && org.ParentOrganization.Values && (\r\n \t\r\n\t\t\t\t\t\t\t\t\t\r\n
      \r\n {org.ParentOrganization.Values.map(\r\n (item, index) => (\r\n \r\n \r\n \r\n ),\r\n )}\r\n
    \r\n
    \t\t\r\n\t\t\t\t )}\r\n {org.Department && org.Department.Values && (\r\n \t\r\n \t\t\t\r\n
      \r\n {org.Department.Values.map(\r\n (item, index) => (\r\n \r\n \r\n \r\n ),\r\n )}\r\n
    \r\n
    \t\t\r\n\t\t\t\t )}\r\n {org.SubOrganization && org.SubOrganization.Values && (\r\n \t\r\n\t\t\t\t\t\t\t\t\t\r\n
      \r\n {org.SubOrganization.Values.map(\r\n (item, index) => (\r\n \r\n \r\n \r\n ),\r\n )}\r\n
    \r\n
    \t\t\r\n\t\t\t\t )}\r\n \r\n {isMobile && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {org.AgentSectorType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {org.IndustryType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {org.ServiceType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {org.Keyword && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n\t\t\t\t\t\r\n
    \r\n \r\n \r\n\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\r\n {org.SupportServiceStatement && (\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{org.TransferValueStatement && (\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n \r\n )}\r\n \r\n \r\n {org.HasCostManifest && org.HasCostManifest.Total > 0 && (\r\n\t\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Cost Manifests\"\r\n\t\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\t\toverrideCount={org.HasCostManifest.Total}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\r\n )}\r\n {org.HasConditionManifest && org.HasConditionManifest.Total > 0 && (\r\n\t\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Condition Manifests\"\r\n\t\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\t\toverrideCount={org.HasConditionManifest.Total}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\r\n )}\r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Administration Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.AdministrationProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Appeal Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.AppealProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Development Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.DevelopmentProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Maintenance Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.MaintenanceProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Complaint Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.ComplaintProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Review Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.ReviewProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Revocation Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.RevocationProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n \r\n \r\n \r\n {org.HasVerificationService && org.HasVerificationService.Total > 0 && (\r\n \r\n\t\t\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle={widgetGetPluralLabelForText(\"Verification Service Profiles\")}\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={org.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={org.HasVerificationService.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n \r\n )}\r\n \r\n \r\n \r\n
    \r\n
    \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/powered_by_credential_registry.3a95e241.png\";","import styled from 'styled-components/macro';\r\nimport { CleanList, ContentDelimiter } from '../common';\r\n\r\nexport const Title = styled.h5`\r\n font-size: ${(props) => props.theme.fontSize.md};\r\n margin: 0 0 0.5em 0;\r\n`;\r\n\r\nexport const FooterTop = styled(ContentDelimiter)`\r\n margin: 0 auto 2rem;\r\n\r\n .site-name {\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n font-weight: 700;\r\n }\r\n`;\r\n\r\nexport const FooterMiddle = styled(ContentDelimiter)`\r\n margin: 0 auto 2rem;\r\n display: grid;\r\n gap: 20px;\r\n grid-template-columns: repeat(2, 1fr);\r\n\r\n @media (min-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n grid-template-columns: repeat(3, 1fr);\r\n }\r\n\r\n @media (min-width: ${(props) => props.theme.breakpoint.desktop}) {\r\n grid-template-columns: repeat(6, 1fr);\r\n }\r\n`;\r\n\r\nexport const FooterBottom = styled(ContentDelimiter)`\r\n margin: 3rem auto 0;\r\n`;\r\n\r\nexport const FooterMain = styled.footer`\r\n border-top: 1px solid ${(props) => props.theme.color.aquaDark};\r\n padding: 4rem 0 2rem;\r\n\r\n\t@media print {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nexport const FooterMenu = styled(CleanList)`\r\n margin: 0 0 1.5rem;\r\n\r\n li {\r\n margin-bottom: 0.5em;\r\n }\r\n\r\n a {\r\n color: ${(props) => props.theme.color.blueDark};\r\n text-decoration: none;\r\n }\r\n`;\r\n\r\nexport const LogoListWrapper = styled.div`\r\n h5 {\r\n font-size: ${(props) => props.theme.fontSize.md};\r\n font-weight: normal;\r\n margin: 0 0 1.5em 0;\r\n }\r\n`;\r\n\r\nexport const LogoList = styled(CleanList)`\r\n display: grid;\r\n gap: 20px;\r\n grid-template-columns: repeat(2, auto);\r\n\r\n @media (min-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n grid-template-columns: repeat(4, auto);\r\n }\r\n\r\n @media (min-width: ${(props) => props.theme.breakpoint.desktop}) {\r\n grid-template-columns: repeat(7, auto);\r\n }\r\n\r\n li {\r\n margin-bottom: 1rem;\r\n }\r\n\r\n a {\r\n color: ${(props) => props.theme.color.blueDark};\r\n text-decoration: none;\r\n }\r\n\r\n img {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nexport const PoweredBy = styled.img`\r\n\tmax-width:150px;\r\n`;","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { appURL } from '../../shared/globals';\r\nimport poweredByImage from '../../assets/images/common/powered_by_credential_registry.png'\r\nimport {\r\n FooterTop,\r\n FooterMiddle,\r\n FooterMain,\r\n Title,\r\n\tFooterMenu,\r\n\tPoweredBy\r\n} from './styles';\r\n\r\nfunction ItemLink(props: any) {\r\n return (\r\n
  • \r\n {props.children}\r\n
  • \r\n );\r\n}\r\n\r\nfunction ItemA(props: any) {\r\n return (\r\n
  • \r\n {props.children}\r\n
  • \r\n );\r\n}\r\n\r\nexport default function Footer() {\r\n return (\r\n \r\n \r\n\t\t\t\t\r\n \r\n \r\n
    \r\n \r\n Home\r\n Search\r\n Reports and Data\r\n \r\n Benchmark Reports\r\n \r\n \r\n
    \r\n
    \r\n Follow Us:\r\n \r\n \r\n Twitter\r\n \r\n \r\n Facebook\r\n \r\n \r\n YouTube\r\n \r\n \r\n LinkedIn\r\n \r\n \r\n
    \r\n
    \r\n Contact Us:\r\n \r\n \r\n Email Us\r\n \r\n \r\n
    \r\n\r\n
    \r\n Information:\r\n \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tSupported By\r\n\t\t\t\t\t\t\r\n \r\n
    \r\n
    \r\n Policies and Terms of Use:\r\n \r\n \r\n Privacy Policy\r\n \r\n \r\n Terms of Use\r\n \r\n \r\n Publishers Agreement\r\n \r\n \r\n Minimum Data Policy\r\n \r\n \r\n Data Currency Policy\r\n \r\n \r\n
    \r\n
    \r\n Websites:\r\n \r\n \r\n Credential Engine\r\n \r\n \r\n Credential Engine Technical Planning\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/CE-Icon_3-Course_Blue-Green_High-Res.78a913b1.png\";","export default __webpack_public_path__ + \"static/media/CE-Icon_3-Learning-Program_Blue-Green_High-Res.29110fc0.png\";","export default __webpack_public_path__ + \"static/media/icon-pathwaysets-blue-green-01.3484e979.svg\";","export default __webpack_public_path__ + \"static/media/CE-Icon_9-Scheduled-Offering_Blue-Green_High-Res.bee6094d.png\";","import React, { ReactNode, useEffect, useState, useContext } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Button } from '../common';\r\nimport { Link } from 'react-router-dom';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faPlus, faCheck, faMapMarkerAlt } from '@fortawesome/free-solid-svg-icons';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\nimport { Assessment,\r\n\t \tCompetencyFramework,\r\n\t \tConceptScheme,\r\n\t \tCredential,\r\n\t LearningOpportunity,\r\n\t\tOrganization,\r\n\t\tPathway,\r\n\t\tPathwaySet,\r\n\t\tTransferValue,\r\n\t\tTransferIntermediary,\r\n\t\tCollection,\r\n\t\tSupportService,\r\n\t\tScheduledOffering,\r\n\t\tOccupation,\r\n\t\tJob,\r\n\t\tTask,\r\n\t\tWorkRole,\r\n\t\tProgressionModel,\r\n\t\tDataSetProfile,\r\n\t\tCredentialingAction,\r\n\t\tRubric,\r\n\t\tIndustry,\r\n\t\tMetric\r\n\t } from '../../types/external';\r\n//\r\nimport assessmentIcon from '../../assets/images/icons/icon-assessments-blue-green-01.svg';\r\nimport competencyFrameworkIcon from '../../assets/images/icons/icon-competencies-blue-green-01.svg';\r\nimport conceptSchemeIcon from '../../assets/images/UpdatedIcons/CE-Icon_18-Concept-Scheme_Blue-Green_High-Res.png';\r\nimport courseIcon from '../../assets/images/UpdatedIcons/CE-Icon_3-Course_Blue-Green_High-Res.png';\r\nimport credentialIcon from '../../assets/images/icons/icon-credentials-blue-green-01.svg';\r\nimport jobIcon from '../../assets/images/UpdatedIcons/CE-Icon_13-Jobs_Blue-Green_High-Res.png';\r\nimport learningOpportunityIcon from '../../assets/images/UpdatedIcons/CE-Icon_3-Learning-Opportunity_Blue-Green_High-Res.png';\r\nimport learningProgramIcon from'../../assets/images/UpdatedIcons/CE-Icon_3-Learning-Program_Blue-Green_High-Res.png';\r\nimport occupationIcon from '../../assets/images/UpdatedIcons/CE-Icon_11-Occupations_Blue-Green_High-Res.png';\r\nimport outcomeDataIcon from '../../assets/images/UpdatedIcons/CE-Icon_8-Outcome-Data_Blue-Green_High-Res.png';\r\nimport organizationIcon from '../../assets/images/icons/icon-organization-blue-green-01.svg';\r\nimport pathwayIcon from '../../assets/images/icons/icon-pathways-blue-green-01.svg';\r\nimport pathwaySetIcon from '../../assets/images/icons/icon-pathwaysets-blue-green-01.svg';\r\nimport progressionModelIcon from '../../assets/images/UpdatedIcons/CE-Icon_19-Progression-Model_Blue-Green_High-Res.png';\r\nimport supportServiceIcon from '../../assets/images/UpdatedIcons/CE-Icon_10-Support_Blue-Green_High-Res.png';\r\nimport taskIcon from '../../assets/images/UpdatedIcons/CE-Icon_15-Tasks_Blue-Green_High-Res.png';\r\nimport transferValueIcon from '../../assets/images/icons/icon-transfer-value-blue-green-01.svg';\r\nimport workRoleIcon from '../../assets/images/UpdatedIcons/CE-Icon_14-Work-Roles_Blue-Green_High-Res.png';\r\nimport qaActionIcon from '../../assets/images/UpdatedIcons/CE-Icon_20-QA-Actions_Blue-Green_High-Res.png';\r\nimport rubricIcon from '../../assets/images/UpdatedIcons/CE-Icon_21-Rubrics_Blue-Green_High-Res.png';\r\nimport metricIcon from '../../assets/images/UpdatedIcons/CE-Icon_22-Metrics_Blue-Green_High-Res.png';\r\nimport industryIcon from '../../assets/images/UpdatedIcons/CE-Icon_12-Industries_Blue-Green_High-Res.png';\r\nimport collectionIcon from '../../assets/images/UpdatedIcons/CE-Icon_6-Collection_Blue-Green_High-Res.png';\r\nimport transferIntermediaryIcon from '../../assets/images/UpdatedIcons/CE-Icon_17-Transfer-Intermediary_Blue-Green_High-Res.png';\r\nimport scheduledOfferingIcon from '../../assets/images/UpdatedIcons/CE-Icon_9-Scheduled-Offering_Blue-Green_High-Res.png';\r\n\r\nimport { MainSearchType } from '../../types/internal';\r\nimport { getCompareItems, addCompareItem, removeCompareItem, updateStateOnCompareChange, getCompareItemByCTID } from '../../utils/LocalStorage';\r\nimport { widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\n\r\ninterface SearchResultItemProps {\r\n\ttype: string;\r\n\titem: any;\r\n\tshowFooter?: boolean;\r\n\tshowBody?: boolean;\r\n\tlocations?: Array;\r\n\tonLocationButtonClick?: () => void | undefined;\r\n}\r\n\r\nexport default function SearchResultItem(props: SearchResultItemProps) {\r\n\tconst [compareItems, setCompareItems] = useState(getCompareItems());\r\n\r\n\tuseEffect(() => {\r\n\t\tupdateStateOnCompareChange(() => { setCompareItems([...getCompareItems()]); });\r\n\t\tsetCompareItems(getCompareItems());\r\n\t});\r\n\r\n\tasync function addItemToCompareBucket() {\r\n\t\tgetCompareItems().find((item: any) => item.CTID == props.item.CTID) == null ? addCompareItem(props.item) : removeCompareItem(props.item);\r\n\t}\r\n\r\n\tfunction isComparable() {\r\n\t\treturn props.type !== 'pathway' &&\r\n\t\t props.type !== 'pathwayset' && \r\n\t\t props.type !== 'competencyframework' && \r\n\t\t props.type !== 'transfervalue' && \r\n\t\t props.type !== 'transferintermediary' && \r\n\t\t props.type !== 'conceptscheme' && \r\n\t\t props.type !== 'progressionmodel' && \r\n\t\t props.type !== 'outcomedata' && \r\n\t\t props.type !== 'supportservice' && \r\n\t\t props.type !== 'occupation' && \r\n\t\t props.type !== 'job' && \r\n\t\t props.type !== 'task' && \r\n\t\t props.type !== 'workrole' && \r\n\t\t props.type !=='credentialingaction' && \r\n\t\t props.type !=='rubric' && \r\n\t\t props.type !=='metric' && \r\n\t\t props.type !=='industry';\r\n\t}\r\n\r\n\tfunction getContent() {\r\n\t\tswitch (props.type) {\r\n\t\t\tcase 'organization': return ;\r\n\t\t\tcase 'credential': return ;\r\n\t\t\tcase 'assessment': return ;\r\n\t\t\tcase 'learningopportunity': return ;\r\n\t\t\tcase 'pathway': return ;\r\n\t\t\tcase 'pathwayset': return ;\r\n\t\t\tcase 'competencyframework': return ;\r\n\t\t\tcase 'scheduledoffering': return ;\r\n\t\t\tcase 'supportservice': return ;\r\n\t\t\tcase 'outcomedata': return ;\r\n\r\n\t\t\tcase 'occupation': return ;\r\n\t\t\tcase 'job': return ;\r\n\t\t\tcase 'task': return ;\r\n\t\t\tcase 'workrole': return ;\r\n\r\n\t\t\tcase 'transfervalue': return ;\r\n\t\t\tcase 'transferintermediary': return ;\r\n\t\t\tcase 'conceptscheme': return ;\r\n\t\t\tcase 'collection': return ;\r\n\t\t\tcase 'progressionmodel': return ;\r\n\t\t\tcase 'credentialingaction': return ;\r\n\t\t\tcase 'rubric': return ;\r\n\t\t\tcase 'metric': return ;\r\n\t\t\tcase 'industry': return ;\r\n\t\t\tdefault: return null;\r\n\t\t}\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{getContent()}\r\n\t\t\t\r\n\t\t\t\t{isComparable() && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{getCompareItemByCTID(props.item.CTID) == null ? (\r\n\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\tCompare{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nfunction LocationsButton(props: { locations?: Array, onLocationButtonClick?: () => void | undefined }) {\r\n\treturn props.locations && props.locations.length > 0 && (\r\n\t\t\r\n\t\t\t{props.locations.length == 1 ? \"1 Location\" : props.locations.length + \" Locations\"}\r\n\t\t\t\r\n\t\t\r\n\t) || null;\r\n}\r\n\r\nexport function OrganizationSearchResultItem(props: { item: Organization, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function CredentialSearchResultItem(props: { item: Credential, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function AssessmentSearchResultItem(props: { item: Assessment, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function LearningOpportunitySearchResultItem(props: { item: LearningOpportunity, showFooter?: boolean, showBody?: boolean }) {\r\n\tvar icon = ({\r\n\t\t\"ceterms:LearningOpportunityProfile\": learningOpportunityIcon,\r\n\t\t\"ceterms:LearningProgram\": learningProgramIcon,\r\n\t\t\"ceterms:Course\": courseIcon\r\n\t} as any)[props.item.CTDLType] || learningOpportunityIcon;\r\n\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function CompetencyFrameworkSearchResultItem(props: { item: CompetencyFramework, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function PathwaySearchResultItem(props: { item: Pathway, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function PathwaySetSearchResultItem(props: { item: PathwaySet, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function ScheduledOfferingSearchResultItem(props: { item: ScheduledOffering, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function SupportServiceSearchResultItem(props: { item: SupportService, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function OutcomeDataSearchResultItem(props: { item: DataSetProfile, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function JobSearchResultItem(props: { item: Job, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function OccupationSearchResultItem(props: { item: Occupation, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function WorkRoleSearchResultItem(props: { item: WorkRole, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function TaskSearchResultItem(props: { item: Task, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function CredentialingActionSearchResultItem(props: { item: CredentialingAction, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function RubricSearchResultItem(props: { item: Rubric, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function MetricSearchResultItem(props: { item: Metric, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function IndustrySearchResultItem(props: { item: Industry, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function TransferValueSearchResultItem(props: { item: TransferValue, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t m).join(\" - \")}\r\n\t\t/>\r\n\t);\r\n}\r\nexport function TransferIntermediarySearchResultItem(props: { item: TransferIntermediary, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function ConceptSchemeSearchResultItem(props: { item: ConceptScheme, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nexport function ProgressionModelSearchResultItem(props: { item: ProgressionModel, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function CollectionSearchResultItem(props: { item: Collection, showFooter?: boolean, showBody?: boolean }) {\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\ninterface BaseResultItemProps {\r\n\ticon: string;\r\n\thasBadge?: boolean;\r\n\tfallBackIcon?: string;\r\n\tpreTitle?: string;\r\n\ttitle: string;\r\n\tsubTitle?: string;\r\n\tbody: string;\r\n\tfooter?: ReactNode;\r\n\ttitleUrl?: string;\r\n\tsubTitleUrl?: string;\r\n\tshowFooter?: boolean;\r\n\tshowBody?: boolean;\r\n\tlastUpdated?: string;\r\n\theaderExtraText?: string;\r\n}\r\n\r\nexport function BaseResultItem(props: BaseResultItemProps) {\r\n\tconst [showBody, setShowBody] = useState(props.showBody || false);\r\n\tconst [showFooter, setShowFooter] = useState(props.showFooter || false);\r\n\tconst [showMoreBody, setShowMoreBody] = useState(false);\r\n\r\n\tfunction onLoadingIconError(e: any) {\r\n\t\te.target.src = props.fallBackIcon;\r\n\t}\r\n\r\n\tfunction renderBody() {\r\n\t\tconst body = props.body || '';\r\n\t\tif (showMoreBody) {\r\n\t\t\treturn {body};\r\n\t\t} else {\r\n\t\t\tif (body.length > 300) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{body.substring(0, 300) + ' '}\r\n\t\t\t\t\t\t setShowMoreBody(true)}>...more...\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\treturn {body.substring(0, 300)};\r\n\t\t}\r\n\t}\r\n\r\n\tuseEffect(() => {\r\n\t\tsetShowBody(props.showBody || false);\r\n\t\tsetShowFooter(props.showFooter || false);\r\n\t}, [props.showBody, props.showFooter]);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{props.hasBadge && }\r\n\t\t\t\t\t\r\n\t\t\t\t\t{/* setShowBody(!showBody)} type=\"button\">Show {showBody ? 'Less' : 'More'}*/}\r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.preTitle}\r\n\t\t\t\t\t{props.title}\r\n\t\t\t\t\t{props.subTitleUrl && {props.subTitle}}\r\n\t\t\t\t\tLast Updated {props.lastUpdated}\r\n\t\t\t\t\t{props.headerExtraText && {props.headerExtraText}}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t{renderBody()}\r\n\t\t\t{showFooter && props.footer &&
    {props.footer}
    }\r\n\t\t
    \r\n\t);\r\n}\r\n\r\nconst Toggler = styled.button`\r\n background: none;\r\n border: 0 none;\r\n bottom: 0;\r\n box-shadow: none;\r\n color: ${(p) => p.theme.color.brown};\r\n left: 0;\r\n padding: 0;\r\n position: absolute;\r\n text-decoration: underline;\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n position: static;\r\n }\r\n`;\r\n\r\nconst MoreButton = styled.span`\r\n color: ${(p) => p.theme.color.brown};\r\n cursor: pointer;\r\n`;\r\n\r\nconst Header = styled.div`\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n display: grid;\r\n gap: 20px;\r\n grid-template-columns: 80px 1fr;\r\n }\r\n`;\r\n\r\nconst Icon = styled.img`\r\n height: auto;\r\n left: 0;\r\n position: absolute;\r\n top: 0;\r\n width: 60px;\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n position: static;\r\n width: 80px;\r\n }\r\n`;\r\n\r\nconst PreTitle = styled.div`\r\n left: 80px;\r\n position: absolute;\r\n top: 0;\r\n margin-right: 60px;\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n margin: 0;\r\n position: static;\r\n }\r\n`;\r\n\r\nconst Title = styled(Link)`\r\n margin: 0 0 0.5rem;\r\n cursor: pointer;\r\n font-size: ${(props) => props.theme.fontSize.xxl};\r\n line-height: 1.1667;\r\n font-weight: bold;\r\n text-decoration: none;\r\n`;\r\n\r\nconst SubTitle = styled(Link)`\r\n display: block;\r\n font-size: ${(props) => props.theme.fontSize.lg};\r\n line-height: 1.125;\r\n font-weight: 700;\r\n cursor: pointer;\r\n text-decoration: none;\r\n`;\r\n\r\nconst Body = styled.div`\r\n margin-top: 1rem;\r\n overflow: hidden;\r\n max-height: 0;\r\n transition: max-height 0.15s ease-out;\r\n`;\r\n\r\nconst Footer = styled.div`\r\n gap: 10px;\r\n overflow: hidden;\r\n margin-top: 1rem;\r\n max-height: 0;\r\n transition: max-height 0.25s ease-out;\r\n\r\n button {\r\n margin: 0.5rem 0;\r\n }\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n display: flex;\r\n }\r\n`;\r\n\r\nconst Wrap = styled.div`\r\n padding: 80px 0 1.5rem;\r\n position: relative;\r\n\r\n &.open {\r\n ${Body},\r\n ${Footer} {\r\n max-height: 500px;\r\n transition: max-height 0.25s ease-in;\r\n }\r\n }\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n display: grid;\r\n gap: 30px;\r\n grid-template-columns: 1fr auto;\r\n padding: 0;\r\n }\r\n`;\r\n\r\nconst ContentWrap = styled.div`\r\n &.open {\r\n ${Body},\r\n ${Footer} {\r\n max-height: 500px;\r\n transition: max-height 0.25s ease-in;\r\n }\r\n }\r\n`;\r\n\r\nconst CompareButton = styled(Button)`\r\n display: flex;\r\n align-items: center;\r\n height: 40px;\r\n min-width: 40px;\r\n padding: 0;\r\n position: absolute;\r\n right: 0;\r\n top: 0;\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n position: static;\r\n }\r\n`;\r\n\r\nconst ButtonText = styled.span`\r\n align-items: center;\r\n display: none;\r\n justify-content: center;\r\n padding: 0 1.65em;\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n display: flex;\r\n }\r\n`;\r\n\r\nconst ButtonIcon = styled.span`\r\n align-items: center;\r\n display: flex;\r\n height: 40px;\r\n justify-content: center;\r\n width: 40px;\r\n\r\n @media (min-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n border-left: 1px solid ${(p) => p.theme.color.white};\r\n }\r\n`;\r\n\r\nconst SButtonIcon = styled(ButtonIcon)`\r\n border: none;\r\n\tmargin: 0 auto;\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n\tposition: relative;\r\n\r\n @media (max-width: ${(p) => p.theme.breakpoint.tabletPortrait}) {\r\n display: none;\r\n }\r\n`;\r\n\r\nconst BadgeIcon = styled.img`\r\n\tposition: absolute;\r\n\tbottom: -5px;\r\n\tright: -15px;\r\n\tmax-width: 50px;\r\n\tmax-height: 50px;\r\n`;\r\n\r\nconst LastUpdated = styled.div`\r\n\tfont-style: italic;\r\n\topacity: 0.8;\r\n\tfont-size: 85%;\r\n\tpadding: 2px 0;\r\n`;\r\n\r\nconst ResultButtonWrapper = styled.div`\r\n\tmax-width: 165px;\r\n\t& > * {\r\n\t\twidth: 100%;\r\n\t\tmargin-bottom: 5px;\r\n\t}\r\n`;\r\n\r\nconst LocationsButtonWrapper = styled(Button)`\r\n\tmin-width: 0;\r\n\t& > svg { margin-left: 10px; }\r\n`;\r\n\r\nconst HeaderExtraText = styled.div`\r\n\r\n`;\r\n","import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport styled from 'styled-components/macro';\r\nimport { Button } from '../../components/common';\r\nimport { HStack } from '../../components/Stack';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\nexport const Wrapper = styled.div`\r\n max-width: ${(props) => props.theme.maxWidth};\r\n`;\r\n\r\nexport const TopRegion = styled.div`\r\n background-color: ${(p) => p.theme.color.greyLight};\r\n padding: 40px 100px;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n padding: 20px;\r\n }\r\n`;\r\n\r\nexport const ResultsSection = styled(HStack)`\r\n position: relative;\r\n justify-content: center;\r\n`;\r\n\r\nexport const ResultsSectionBody = styled.div`\r\n width: 100%;\r\n padding: 0 20px;\r\n`;\r\n\r\nexport const ResultList = styled.div`\r\n max-width: 1140px;\r\n width: 100%;\r\n`;\r\n\r\nexport const ResultItem = styled.div`\r\n padding: 2rem 0;\r\n\ttransition: background-color 0.25s;\r\n\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${(p) => widgetGetColor(\"SiteHeader\", false, p.theme.color.aquaDark)};\r\n }\r\n\r\n\t&.highlighted {\r\n\t\tbackground-color: #5F7;\r\n\t}\r\n`;\r\n\r\nexport const ResultBodytHeader = styled(HStack)`\r\n justify-content: space-between;\r\n align-items: center;\r\n margin: auto;\r\n border-bottom: 4px solid ${(props) => widgetGetColor(\"SiteHeader\", false, props.theme.color.aquaDark)};\r\n flex-wrap: wrap;\r\n max-width: 1140px;\r\n`;\r\n\r\nexport const ResultListHeaderSection = styled(HStack)`\r\n align-items: center;\r\n flex-wrap: wrap;\r\n\r\n > * {\r\n margin-bottom: 10px;\r\n }\r\n`;\r\n\r\nexport const ResultBodyContent = styled(HStack)`\r\n border-top: 1px solid ${(props) => widgetGetColor(\"SiteHeader\", false, props.theme.color.aquaDark)};\r\n justify-content: center;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n flex-wrap: wrap;\r\n }\r\n`;\r\n\r\nexport const FilterButton = styled(Button)`\r\n min-width: 80px;\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.aquaDark)};\r\n\tbackground-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, \"\")};\r\n`;\r\n\r\nexport const ButtonIcon = styled(FontAwesomeIcon)`\r\n padding: 0 5px;\r\n`;\r\n\r\nexport const IconButton = styled(Button)`\r\n flex: 0 1 auto;\r\n min-width: 80px;\r\n padding: 0.2em;\r\n`;\r\n\r\nexport const ExportButton = styled(Button)`\r\n flex: 0 1 auto;\r\n min-width: 80px;\r\n padding: 0.2em;\r\n\theight: 40px;\r\n`;\r\n\r\nexport const DropdownSection = styled.div<{ minWidth?: string }>`\r\n flex: 0 1 auto;\r\n min-width: ${(props) => props.minWidth || '120px'};\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n flex: 1;\r\n }\r\n`;\r\n\r\nexport const DropdownGroup = styled(HStack)`\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n flex-basis: 100%; // force wrap\r\n }\r\n`;\r\n\r\nexport const GroupButton = styled(HStack)`\r\n flex: 0 1 auto;\r\n`;\r\n\r\nexport const FilterPills = styled(HStack)`\r\n padding: 10px;\r\n flex-wrap: wrap;\r\n > * {\r\n margin-bottom: 5px;\r\n }\r\n max-width: 1140px;\r\n margin: auto;\r\n`;\r\n\r\nexport const PillContent = styled.p`\r\n margin: 0;\r\n`;\r\n\r\nexport const ResultCount = styled.h2`\r\n padding-right: 20px;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n max-width: 200px;\r\n }\r\n`;\r\n\r\nexport const LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;\r\n\r\nexport const ResultListItems = styled.div``;\r\n\r\nexport const MapWrapper = styled.div`\r\n padding: 20px 0px 20px 20px;\r\n width: 100%;\r\n height: 100vh;\r\n\tmax-height: 1000px;\r\n position: sticky;\r\n top: 0;\r\n order: 2;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n order: 0;\r\n padding: 20px 0;\r\n position: static;\r\n height: 350px;\r\n }\r\n`;\r\n","import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport styled from 'styled-components/macro';\r\nimport { Button } from '../common';\r\nimport { HStack, VStack } from '../Stack';\r\nimport { widgetGetColor } from '../../utils/SiteWidgetizer';\r\n\r\nexport const Wrapper = styled.div`\r\n background-color: ${(props) => widgetGetColor(\"SiteHeader\", false, props.theme.color.blueDark)};\r\n color: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.white)};\r\n padding: 20px;\r\n min-width: 350px;\r\n max-width: 350px;\r\n\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n position: absolute;\r\n left: 0;\r\n top: 0;\r\n z-index: 10;\r\n }\r\n`;\r\n\r\nexport const TitleBlock = styled(HStack)`\r\n justify-content: space-between;\r\n border-bottom: 4px solid ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.aquaDark)};\r\n padding-bottom: 20px;\r\n`;\r\nexport const Title = styled.h2`\r\n color: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.white)};\r\n margin: 0;\r\n`;\r\n\r\nexport const HideButton = styled.button`\r\n background: transparent;\r\n color: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.white)};\r\n border: none;\r\n align-items: center;\r\n display: flex;\r\n padding: 0;\r\n`;\r\n\r\nexport const Checkbox = styled.input``;\r\n\r\nexport const FilterItemOption = styled(VStack)`\r\n padding: 5px 0;\r\n\r\n input {\r\n background-color: ${(props) => props.theme.color.greyDark};\r\n padding: 5px;\r\n color: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.white)};\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n }\r\n`;\r\nexport const FilterItemLabel = styled.p`\r\n margin: 0;\r\n cursor: pointer;\r\n`;\r\nexport const FilterItemDescription = styled.p`\r\n margin: 0;\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n`;\r\n\r\nexport const FilterItemAddButton = styled(Button)`\r\n padding: 0 10px;\r\n font-weight: normal;\r\n min-width: 50px;\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n`;\r\n\r\nexport const AddedItem = styled(HStack)`\r\n justify-content: space-between;\r\n align-items: center;\r\n border-radius: 10px;\r\n padding: 0 10px;\r\n background-color: ${(props) => props.theme.color.greyDark};\r\n`;\r\n\r\nexport const IconButton = styled(FontAwesomeIcon)`\r\n cursor: pointer;\r\n`;\r\n\r\nexport const StyledFilterOption = styled.button`\r\n font-size: ${(props) => props.theme.fontSize.sm};\r\n background-color: ${(props) => widgetGetColor(\"SiteHeader\", false, props.theme.color.blueDark)};\r\n text-align: left;\r\n color: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.white)};\r\n width: 100%;\r\n padding: 10px;\r\n border: 1px solid ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.aquaLight)};\r\n &:hover {\r\n background-color: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.greyDark)};\r\n color: ${(props) => widgetGetColor(\"SiteHeader\", false, \"white\")};\r\n }\r\n`;\r\n","import React, { useState, useContext } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { HStack, HStackFilterItem } from '../Stack';\r\nimport AutoCompletionTextField from '../AutoCompletionTextField';\r\nimport {\r\n isCheckboxFilter,\r\n isAutocompleteFilter,\r\n isTextboxFilter,\r\n} from '../../utils';\r\nimport { autocompleteFilterSearchApiUrl } from '../../shared/globals';\r\nimport axios from 'axios';\r\nimport { faTimes } from '@fortawesome/free-solid-svg-icons';\r\nimport { Filter, FilterItem } from '../../types/external';\r\n//import { convertFilterItemToIFilterItem } from '../../types/converters';\r\nimport { FilterContext, QueryContext } from '../../App';\r\nimport { constructSearchQuery } from '../../services/api';\r\nimport {\r\n StyledFilterOption,\r\n Checkbox,\r\n FilterItemAddButton,\r\n FilterItemDescription,\r\n FilterItemLabel,\r\n FilterItemOption,\r\n AddedItem,\r\n IconButton,\r\n} from './styles';\r\nimport { widgetReplacePluralLabelInText, widgetReplaceSingleLabelInText, widgetApplyWidgetToQuery, widgetGetSingleLabelForText } from '../../utils/SiteWidgetizer';\r\nimport { addFilterItem, getCurrentQuery, removeFilterItem, toggleFilterItem, updateCurrentQuery } from \"../../utils/SearchHelper\";\r\n\r\ninterface FilterItemProps {\r\n searchType: string;\r\n filter: Filter;\r\n filterIdentifier: string;\r\n item: FilterItem;\r\n autoCompleteFilterItems: FilterItem[];\r\n status: boolean;\r\n onSelectFilter: (filter: Filter, item: FilterItem) => void;\r\n}\r\n\r\nexport default function CFilterItem(props: FilterItemProps) {\r\n const isCheckbox = isCheckboxFilter(props.item);\r\n const isAutocompleteTextBox = isAutocompleteFilter(props.item);\r\n const isTextBox = isTextboxFilter(props.item);\r\n\tconst [searchText, setSearchText] = useState('');\r\n\tconst queryContext = useContext(QueryContext);\r\n\tconst filterContext = useContext(FilterContext);\r\n\r\n\r\n function getOptionLabel(item: FilterItem) {\r\n return item.Label || '';\r\n }\r\n\r\n\tasync function getAutoCompleteSuggestions(text: string) {\r\n setSearchText(text);\r\n\r\n\t\tconst query = {\r\n\t\t\t...constructSearchQuery(queryContext.query, filterContext[queryContext.query.SearchType]),\r\n\t\t\tKeywords: text,\r\n\t\t\tAutocompleteContext: props.filter.URI\r\n\t\t};\r\n\r\n\t\twidgetApplyWidgetToQuery(query, queryContext.query.SearchType);\r\n\r\n try {\r\n\t\t\tconst url = `${autocompleteFilterSearchApiUrl}`;\r\n const res = await axios.post(url, query);\r\n const data = res.data;\r\n if (data.Successful) {\r\n // TODO: API should return consistent format, empty Items array\r\n\t\t\t\tif (data.Result.Items) {\r\n\t\t\t\t\treturn data.Result.Items;\r\n }\r\n }\r\n return [];\r\n } catch (error) {\r\n return [];\r\n }\r\n\t}\r\n\r\n function onTextBoxSearchChange(text: string) {\r\n\t\tsetSearchText(text);\r\n\t\tif (isAutocompleteTextBox) {\r\n\t\t\treturn getAutoCompleteSuggestions(text);\r\n\t\t}\r\n\t\treturn [];\r\n\t}\r\n\r\n\tfunction onSelectSuggestedItem(suggestItem: FilterItem) {\r\n\t\tif (isAutocompleteTextBox) {\r\n\t\t\taddFilterItem(props.filter.Id, props.filter.URI, props.filter.Label, suggestItem.Id, \"\", suggestItem.Text); //Don't use suggestItem.URI because all suggested items have the same URI and it causes problems later\r\n\t\t}\r\n\t}\r\n\r\n\tfunction onAddItemFromTextBox() {\r\n\t\tsearchText && addFilterItem(props.filter.Id, props.filter.URI, props.filter.Label, 0, \"\", searchText);\r\n\t}\r\n\r\n function renderFilterOption(item: FilterItem) {\r\n return (\r\n \r\n {item.Label || item.Text}\r\n \r\n );\r\n }\r\n\r\n\tfunction isChecked(filterID: any, itemID: any) {\r\n\t\treturn (getCurrentQuery().MainFilters || []).find((m: any) => m.Id == filterID)?.Items.find((m: any) => m.Id == itemID) != null;\r\n\t}\r\n\r\n\tfunction toggleCheckBoxItem() {\r\n\t\t//Toggle the item in the data\r\n\t\ttoggleFilterItem(props.filter.Id, props.filter.URI, props.filter.Label, props.item.Id, props.item.URI, props.item.Label);\r\n\r\n\t\t//Find out whether the box is checked\r\n\t\tvar isTheBoxChecked = isChecked(props.filter.Id, props.item.Id);\r\n\r\n\t\t//Find the checkbox in the HTML, if present (based on either its ID or its URI), and force it to reflect the proper status\r\n\t\tvar box1 = (document.querySelector(\"[data-filterid='\" + props.filter.Id + \"'] [data-filteritemid='\" + props.item.Id + \"']\") as any);\r\n\t\tbox1 && (box1.checked = isTheBoxChecked);\r\n\t\tvar box2 = (document.querySelector(\"[data-filterid='\" + props.filter.Id + \"'] [data-filteritemuri='\" + props.item.URI + \"']\") as any);\r\n\t\tbox2 && (box2.checked = isTheBoxChecked);\r\n\t}\r\n\r\n if (isCheckbox) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n \r\n {widgetGetSingleLabelForText(props.item.Label)}\r\n {widgetReplaceSingleLabelInText(widgetReplacePluralLabelInText(props.item.Description))}\r\n \r\n\t\t\t\r\n );\r\n }\r\n\r\n\tif (isTextBox || isAutocompleteTextBox) {\r\n\t\tvar currentItems = (getCurrentQuery().MainFilters || []).find((m: any) => m.Id == props.filter.Id)?.Items.filter((m: any) => !m.URI) || [];\r\n return (\r\n \r\n {props.item.Label}\r\n\t\t\t\t\r\n \r\n \r\n Add\r\n \r\n\t\t\t\t\r\n\t\t\t\t{currentItems.map((item: any) => (\r\n\t\t\t\t\t\r\n {item.Text}\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\tremoveFilterItem(props.filter.Id, props.filter.URI, props.filter.Label, 0, \"\", item.Text);\r\n\t\t\t\t\t\t}} />\r\n \r\n ))}\r\n \r\n );\r\n }\r\n\r\n return null;\r\n}\r\n\r\nfunction RemoveItem(props: { onClick: () => void }) {\r\n\treturn \r\n\t\t\r\n\t\r\n}\r\n\r\nconst RemoveItemButton = styled.button`\r\n\tbackground-color: transparent;\r\n\tcolor: #FFF;\r\n\tborder: none;\r\n`;","import React, { useEffect, useRef, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport {\r\n faAngleDown,\r\n faAngleLeft,\r\n faAngleRight,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport { TitleBlock, Wrapper, Title, HideButton } from './styles';\r\nimport CFilterItem from './CFilterItem';\r\nimport { isCheckboxFilter } from '../../utils';\r\nimport { MainSearchType } from '../../types/internal';\r\nimport { Filter, FilterItem } from '../../types/external';\r\nimport { widgetGetColor, widgetGetPluralLabelForText } from '../../utils/SiteWidgetizer';\r\n\r\n// driven by categoryId and Id\r\n\r\ninterface Props {\r\n searchType: string;\r\n availableFilters: Filter[];\r\n currentFilters: Array;\r\n onHide: () => void;\r\n onUpdateFilter: (filter: Filter, item: FilterItem) => void;\r\n}\r\n\r\nexport default function FilterPanel(props: Props) {\r\n const ref = useRef(null);\r\n\r\n\tfunction getPanelTitle(searchType: string) {\r\n\t\treturn \"Filter \" + widgetGetPluralLabelForText(({\r\n\t\t\t\"credential\": \"Credentials\",\r\n\t\t\t\"assessment\": \"Assessments\",\r\n\t\t\t\"competencyFramework\": \"Competency Frameworks\",\r\n\t\t\t\"collection\": \"Collections\",\r\n\t\t\t\"pathway\": \"Pathways\",\r\n\t\t\t\"pathwayset\": \"Pathway Sets\",\r\n\t\t\t\"learningopportunity\": \"Learning Opportunities\",\r\n\t\t\t\"scheduledoffering\": \"Scheduled Offerings\",\r\n\t\t\t\"supportservice\": \"Support Services\",\r\n\t\t\t\"occupation\": \"Occupations\",\r\n\t\t\t\"job\": \"Jobs\",\r\n\t\t\t\"workrole\": \"Work Roles\",\r\n\t\t\t\"task\": \"Tasks\",\r\n\t\t\t\"transfervalue\": \"Transfer Values\",\r\n\t\t\t\"transferintermediary\": \"Transfer Intermediaries\",\r\n \"conceptscheme\": \"Concept Schemes\",\r\n \"progressionmodel\": \"Progression Models\",\r\n \"outcomedata\": \"Outcome Data\",\r\n \"datasetprofile\": \"Outcome Data\",\r\n \"organization\": \"Organizations\",\r\n \"credentialingaction\":\"Quality Assurance Actions\",\r\n \"rubric\": \"Rubrics\",\r\n \"metric\": \"Metrics\",\r\n \"industry\": \"Industries\"\r\n\t\t} as any)[searchType] || \"Data\");\r\n }\r\n\r\n function onHide() {\r\n props.onHide();\r\n }\r\n\r\n function getStatusOfFilterItem(\r\n filter: Filter,\r\n filterItem: FilterItem,\r\n ) {\r\n // logic to check if the checkbox is checked\r\n\t\tconst isCheckbox = isCheckboxFilter(filterItem);\r\n\t\tvar currentFilters = props.currentFilters || [];\r\n\t\tif (isCheckbox && currentFilters.find(m => m.Id == filter.Id)) {\r\n\t\t\treturn (currentFilters || []).find(m => m.Id == filter.Id)?.Items?.some(\r\n (item) => {\r\n\t\t\t\t\treturn item.InterfaceType == filterItem.InterfaceType && (item.Id ? item.Id == filterItem.Id : (item.URI == filterItem.URI));\r\n },\r\n ) || false;\r\n }\r\n return false;\r\n }\r\n\r\n function getAddedFilterItemsFromAutocomplete(filterIdentifier: string) {\r\n return (\r\n\t\t\tprops.currentFilters.find(m => m.Id == filterIdentifier)?.Items.filter(\r\n (item) => item.Id !== undefined,\r\n ) || []\r\n );\r\n }\r\n\r\n useEffect(() => {\r\n if (ref.current) {\r\n ref.current.focus();\r\n }\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n {getPanelTitle(props.searchType)}\r\n \r\n \r\n Hide\r\n \r\n \r\n {props.availableFilters.map((filter, index) => (\r\n \r\n ))}\r\n \r\n );\r\n}\r\n\r\ninterface FilterTypeProps {\r\n searchType: string;\r\n filter: Filter;\r\n filterIdentifier: string;\r\n autoCompleteFilterItems: FilterItem[];\r\n getStatus: (filter: Filter, filterItem: FilterItem) => boolean;\r\n onSelectFilter: (filter: Filter, item: FilterItem) => void;\r\n}\r\n\r\nconst FilterTypeWrapper = styled.div``;\r\nconst FilterTypeTitle = styled.h4`\r\n cursor: pointer;\r\n\tcolor: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.white)};\r\n`;\r\nconst FilterButton = styled.button`\r\n display: flex;\r\n\twidth: 100%;\r\n border: none;\r\n background: transparent;\r\n color: ${(p) => p.theme.color.white};\r\n align-items: center;\r\n padding: 0;\r\n\r\n\t&:hover, :focus {\r\n\t\tcursor: pointer;\r\n\t\tbackground-color: rgba(255,255,255,0.1);\r\n\t}\r\n`;\r\n\r\nfunction FilterType(props: FilterTypeProps) {\r\n const [expanded, setExpanded] = useState(false);\r\n\r\n return (\r\n\t\t\r\n setExpanded(!expanded)}>\r\n \r\n {props.filter.Label}\r\n \r\n {expanded &&\r\n props.filter.Items.map((item, index) => (\r\n \r\n ))}\r\n \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-competency-framework-white-green-01.db6efbbb.svg\";","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { MainSearchType } from '../../types/internal';\r\n\r\nimport organizationIcon from '../../assets/images/icons/icon-organization-blue-green-01.svg';\r\nimport credentialIcon from '../../assets/images/icons/icon-credentials-blue-green-01.svg';\r\nimport assessmentIcon from '../../assets/images/icons/icon-assessments-blue-green-01.svg';\r\nimport learningOpportunityIcon from '../../assets/images/UpdatedIcons/CE-Icon_3-Learning-Opportunity_Blue-Green_High-Res.png';\r\nimport competencyFrameworkIcon from '../../assets/images/icons/icon-competency-framework-white-green-01.svg';\r\nimport pathwayIcon from '../../assets/images/icons/icon-pathways-blue-green-01.svg';\r\nimport pathwaySetIcon from '../../assets/images/icons/icon-pathwaysets-blue-green-01.svg';\r\nimport transerValueIcon from '../../assets/images/icons/icon-transfer-value-blue-green-01.svg';\r\nimport transerIntermediaryIcon from '../../assets/images/UpdatedIcons/CE-Icon_17-Transfer-Intermediary_Blue-Green_High-Res.png';\r\nimport qaActionIcon from '../../assets/images/UpdatedIcons/CE-Icon_20-QA-Actions_Blue-Green_High-Res.png';\r\nimport rubricIcon from '../../assets/images/UpdatedIcons/CE-Icon_21-Rubrics_Blue-Green_High-Res.png';\r\nimport metricIcon from '../../assets/images/UpdatedIcons/CE-Icon_22-Metrics_Blue-Green_High-Res.png';\r\nimport industryIcon from '../../assets/images/UpdatedIcons/CE-Icon_12-Industries_Blue-Green_High-Res.png';\r\nimport collectionIcon from '../../assets/images/UpdatedIcons/CE-Icon_6-Collection_Blue-Green_High-Res.png';\r\nimport conceptSchemeIcon from '../../assets/images/UpdatedIcons/CE-Icon_18-Concept-Scheme_Blue-Green_High-Res.png';\r\nimport outcomeDataIcon from '../../assets/images/UpdatedIcons/CE-Icon_8-Outcome-Data_Blue-Green_High-Res.png';\r\nimport supportServicesIcon from '../../assets/images/UpdatedIcons/CE-Icon_10-Support_Blue-Green_High-Res.png';\r\nimport occupationIcon from '../../assets/images/UpdatedIcons/CE-Icon_11-Occupations_Blue-Green_High-Res.png';\r\nimport jobIcon from '../../assets/images/UpdatedIcons/CE-Icon_13-Jobs_Blue-Green_High-Res.png';\r\nimport workRoleIcon from '../../assets/images/UpdatedIcons/CE-Icon_14-Work-Roles_Blue-Green_High-Res.png';\r\nimport taskIcon from '../../assets/images/UpdatedIcons/CE-Icon_15-Tasks_Blue-Green_High-Res.png';\r\nimport progressionModelIcon from '../../assets/images/UpdatedIcons/CE-Icon_19-Progression-Model_Blue-Green_High-Res.png';\r\nimport scheduledOfferingIcon from '../../assets/images/UpdatedIcons/CE-Icon_9-Scheduled-Offering_Blue-Green_High-Res.png';\r\n\r\nconst Wrapper = styled.div`\r\n text-align: center;\r\n padding: 40px;\r\n`;\r\n\r\nconst Icon = styled.img`\r\n height: 40px;\r\n`;\r\n\r\ninterface Props {\r\n type: string;\r\n}\r\n\r\nexport default function EmptyResult(props: Props) {\r\n let icon = organizationIcon;\r\n switch (props.type) {\r\n case 'assessment':\r\n icon = assessmentIcon;\r\n break;\r\n case 'competencyframework':\r\n icon = competencyFrameworkIcon;\r\n break;\r\n case 'collection':\r\n icon = collectionIcon;\r\n break;\r\n case 'credential':\r\n icon = credentialIcon;\r\n break;\r\n case 'pathway':\r\n icon = pathwayIcon;\r\n break;\r\n case 'pathwayset':\r\n icon = pathwaySetIcon;\r\n break;\r\n case 'learningopportunity':\r\n icon = learningOpportunityIcon;\r\n break;\r\n case 'scheduledoffering':\r\n icon = scheduledOfferingIcon;\r\n break;\r\n case 'supportservice':\r\n icon = supportServicesIcon;\r\n break;\r\n case 'transfervalue':\r\n icon = transerValueIcon;\r\n break;\r\n case 'transferintermediary':\r\n icon = transerIntermediaryIcon;\r\n break;\r\n case 'conceptscheme':\r\n icon = conceptSchemeIcon;\r\n break;\r\n case 'occupation':\r\n icon = occupationIcon;\r\n break;\r\n case 'job':\r\n icon = jobIcon;\r\n break;\r\n case 'progressionmodel':\r\n icon = progressionModelIcon;\r\n break;\r\n case 'task':\r\n icon = taskIcon;\r\n break;\r\n\t\tcase 'workrole':\r\n icon = workRoleIcon;\r\n break;\r\n case 'datasetprofile':\r\n case 'outcomedata':\r\n icon = outcomeDataIcon;\r\n break;\r\n case 'action':\r\n case 'credentialingaction':\r\n case 'accreditaction':\r\n icon = qaActionIcon;\r\n break;\r\n case 'rubric':\r\n case 'rubrics':\r\n icon = rubricIcon;\r\n break;\r\n case 'metric':\r\n case 'metrics':\r\n icon = metricIcon;\r\n break;\r\n case 'industry':\r\n case 'industries':\r\n icon = industryIcon;\r\n break;\r\n default:\r\n break;\r\n }\r\n return (\r\n \r\n \r\n

    Sorry, no results were found, try another search

    \r\n
    \r\n );\r\n}\r\n","import styled, { css } from 'styled-components/macro';\r\nimport { HStack } from '../Stack';\r\n\r\nexport const HSection = styled(HStack)`\r\n > * {\r\n margin: 5px;\r\n }\r\n flex-wrap: wrap;\r\n margin: 10px 0;\r\n`;\r\n","import React, { useContext, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { IconName } from '@fortawesome/fontawesome-svg-core';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport axios from 'axios';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport {\r\n ITagItem,\r\n ITagSet,\r\n MainSearchType,\r\n} from '../../types/internal';\r\nimport { Filter, FilterItem } from '../../types/external';\r\nimport Pill from '../Pill';\r\nimport { HSection } from './styles';\r\nimport { useHistory } from 'react-router-dom';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\n//import { convertFilterItemToIFilterItem } from '../../types/converters';\r\nimport { FilterContext } from '../../App';\r\nimport { decode } from 'html-entities';\r\nimport PillLink from '../PillLink';\r\nimport { widgetReplacePluralLabelInText, widgetReplaceSingleLabelInText } from '../../utils/SiteWidgetizer';\r\n\r\ninterface Props {\r\n tagSets: ITagSet[];\r\n onUpdateFilter: (filter: Filter, filterItem: FilterItem) => void;\r\n searchType: string;\r\n\tindentifier?: string | number; // this is for React]\r\n\tdetailPageLink?: string;\r\n}\r\nexport default function SearchResultPillSection({\r\n tagSets,\r\n indentifier,\r\n onUpdateFilter,\r\n\tsearchType,\r\n\tdetailPageLink\r\n}: Props) {\r\n const history = useHistory();\r\n const filterContext = useContext(FilterContext);\r\n const [showItems, setShowItems] = useState(false);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [tagItems, setTagItems] = useState([]);\r\n\tconst [selectedSetTagIndex, setSelectedSetTagIndex] = useState(-1);\r\n\tconst [liveTagData, setLiveTagData] = useState(tagSets);\r\n\r\n\tasync function onTagSetClick(tagSet: ITagSet, setLiveTagData: () => void, index: number) {\r\n if (index === selectedSetTagIndex) {\r\n setShowItems(false);\r\n setSelectedSetTagIndex(-1);\r\n } else {\r\n setShowItems(true);\r\n\t\t\tsetSelectedSetTagIndex(index);\r\n\r\n\t\t\tif (tagSet.Values.length === 0 && tagSet.Total && tagSet.Total > 0) {\r\n\t\t\t\tsetIsLoading(true);\r\n\t\t\t\tconst url = apiUrl + tagSet.URL;\r\n\t\t\t\tlet results: any[] = [];\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst res = await axios.post(url, tagSet.QueryData);\r\n\t\t\t\t\tif (res.data.Successful) {\r\n\t\t\t\t\t\tresults = res.data.Result || [];\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t}\r\n\t\t\t\ttagSet.Values = results;\r\n\t\t\t\tsetLiveTagData();\r\n\t\t\t\tsetTagItems(results);\r\n\t\t\t\tsetIsLoading(false);\r\n\t\t\t} else {\r\n\t\t\t\tsetTagItems(tagSet.Values);\r\n\t\t\t}\r\n }\r\n }\r\n\r\n\tfunction onTagItemClick(tag: ITagItem, index: number) {\r\n if (tag.URL) {\r\n history.push(tag.URL);\r\n } else {\r\n let newFilterItem: FilterItem = {\r\n Label: tag.Label,\r\n Id: tag.FilterItemID,\r\n Text: tag.FilterItemText,\r\n //parentId: tag.FilterItemText ? 'parentId' : undefined,\r\n } as FilterItem;\r\n\t\t\tlet newFilter: Filter = {\r\n Id: tag.FilterID\r\n } as Filter;\r\n // merge with existing filter\r\n const filters = filterContext[searchType];\r\n const filterWithId =\r\n filters && filters.find((filter) => filter.Id == tag.FilterID);\r\n if (filterWithId) {\r\n\t\t\t\tnewFilter.Label=filterWithId.Label;\r\n\t\t\t\tnewFilter.URI=filterWithId.URI;\r\n const filterItemWithUrlId = filterWithId.Items.find(\r\n (item) => item.Id == tag.FilterItemID,\r\n );\r\n if (filterItemWithUrlId) {\r\n newFilterItem = {\r\n ...newFilterItem,\r\n ...filterItemWithUrlId,\r\n };\r\n }\r\n }\r\n\t\t\tonUpdateFilter(\r\n\t\t\t\tnewFilter,\r\n\t\t\t\tnewFilterItem\r\n );\r\n }\r\n }\r\n\r\n function getFAIcon(iconName: string) {\r\n return iconName.slice(3);\r\n }\r\n\r\n\tvar hideCountsFor = [\"outcome data\", \"time estimate\"];\r\n\r\n return (\r\n
    \r\n \r\n\t\t\t\t{liveTagData.map((tagSet, index) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\trightIcon={\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\trightIconOnActive={\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tcontent={(hideCountsFor.includes(tagSet?.Label?.toLowerCase() || \"\") ? \"\" : tagSet.Total + \" \") + widgetReplaceSingleLabelInText(widgetReplacePluralLabelInText(tagSet.Label))}\r\n\t\t\t\t\t\tonClick={() => onTagSetClick(tagSet, () => {setLiveTagData(liveTagData)}, index)}\r\n pillType=\"filter-button\"\r\n />\r\n ))}\r\n \r\n {isLoading ? (\r\n \r\n ) : (\r\n showItems && (\r\n \r\n {tagItems.map((tag, index) => (\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t{tag.URL && { onTagItemClick(tag, index); return false; }}\r\n\t\t\t\t\t\t\t\t\t\trightIcon={\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t/>}\r\n\t\t\t\t\t\t\t\t\t{!tag.URL && \r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\ttitle={\"Search for resources with \" + decode(tag.Label)}\r\n\t\t\t\t\t\t\t\t\t\tcontent={decode(tag.Label)}\r\n\t\t\t\t\t\t\t\t\t\tpillType=\"filter\"\r\n\t\t\t\t\t\t\t\t\t\tonClick={() => {onTagItemClick(tag, index); }}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n {detailPageLink && (tagSets[selectedSetTagIndex].Total || 0) > tagItems.length &&\r\n \r\n\r\n \r\n\t\t\t\t\t\t\t\t}\r\n content=\"Detail\"\r\n\t\t\t\t\t\t\t\tpillType=\"filter-button\"\r\n\t\t\t\t\t\t\t\tonClick={() => { detailPageLink && window.open(detailPageLink, \"detailPage\"); }}\r\n />\r\n \r\n\t\t\t\t\t\t}\r\n \r\n )\r\n )}\r\n
    \r\n );\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport styled from 'styled-components/macro';\r\n\r\nexport default function BackToTopButton() {\r\n\tuseEffect(() => {\r\n\t\tvar button = document.getElementsByClassName(\"backToTopButton\")[0];\r\n\t\twindow.addEventListener(\"scroll\", () => {\r\n\t\t\tbutton && (window.scrollY > window.innerHeight) ? button.classList.add(\"visible\") : button.classList.remove(\"visible\");\r\n\t\t});\r\n\t});\r\n\r\n\treturn (\r\n\t\t { window.scrollTo(0, 0); }}>↑\r\n\t)\r\n}\r\n\r\nconst UpButton = styled.button`\r\n\tfont-size: 30px;\r\n\twidth: 75px;\r\n\theight: 75px;\r\n\tpadding: 10px;\r\n\tbackground-color: ${(p) => p.theme.color.blueDark};\r\n\tcolor: #FFF;\r\n\tborder: none;\r\n\tposition: fixed;\r\n\tbottom: 25px;\r\n\tright: 25px;\r\n\ttransition: transform 1s;\r\n\ttransform: rotateX(90deg);\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: ${(p) => p.theme.color.aquaDark};\r\n\t}\r\n\r\n\t&.visible {\r\n\t\ttransform: rotateX(0deg);\r\n\t}\r\n`;","import React, { useContext, useEffect, useMemo, useRef, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport SearchBar from '../../components/SearchBar';\r\nimport SearchResultItem from '../../components/SearchResultItem';\r\nimport GoogleMap from 'google-map-react';\r\nimport {\r\n FilterButton,\r\n ResultItem,\r\n ResultList,\r\n ResultBodytHeader,\r\n ResultListHeaderSection,\r\n TopRegion,\r\n IconButton,\r\n ButtonIcon,\r\n Wrapper,\r\n DropdownSection,\r\n GroupButton,\r\n FilterPills,\r\n PillContent,\r\n DropdownGroup,\r\n ResultCount,\r\n ResultsSection,\r\n LoadingIndicatorWrapper,\r\n ResultListItems,\r\n MapWrapper,\r\n ResultsSectionBody,\r\n\tResultBodyContent,\r\n\tExportButton\r\n} from './styles';\r\nimport {\r\n MainFilterItemInterface,\r\n MainSearchType,\r\n} from '../../types/internal';\r\nimport {\r\n faAngleRight,\r\n faAngleDown,\r\n faLocationArrow,\r\n faChevronRight,\r\n faList,\r\n faMapMarkerAlt,\r\n faFilter,\r\n faTimes,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport { faListAlt, faClock } from '@fortawesome/free-regular-svg-icons';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport Pill, { UnremovablePill } from '../../components/Pill';\r\nimport { HStack, VStack } from '../../components/Stack';\r\nimport FilterPanel from '../../components/FilterPanel';\r\nimport { FilterContext, QueryContext } from '../../App';\r\nimport {\r\n FilterField,\r\n getMapInfoWindowFromSearchResultsLocations,\r\n getResultsLocationField,\r\n} from '../../utils';\r\nimport Dropdown from '../../components/Dropdown';\r\nimport {\r\n defaultMapSetting,\r\n defaultQuery,\r\n resultDisplayOptions,\r\n sortOptions,\r\n} from '../../shared/data';\r\nimport { constructSearchQuery } from '../../services/api';\r\nimport { useMediaQuery } from '../../hooks';\r\nimport { theme } from '../../shared/theme';\r\nimport axios from 'axios';\r\nimport { apiUrl, appURL, registryURL, googleMapsKey, appBaseName } from '../../shared/globals';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport EmptyResult from './EmptyResult';\r\nimport { Organization, MainQueryResponse, Place, MainQueryType, Filter, FilterItem } from '../../types/external';\r\nimport { setupMap } from '../../services/map';\r\n//import { convertFilterItemToIFilterItem } from '../../types/converters';\r\nimport SearchResultPillSection from '../../components/SearchResultPillSection';\r\nimport BackToTopButton from '../../components/BackToTopButton';\r\nimport { widgetPruneFiltersAndOptions, widgetApplyWidgetToQuery } from '../../utils/SiteWidgetizer';\r\nimport { getUUID } from '../../components/MiniSearch';\r\nimport { getCurrentQuery, updateCurrentQuery, registerCurrentQueryListener, delayThenDo, toggleFilterItem } from '../../utils/SearchHelper';\r\nimport { getExportCSVFromItems } from \"../../utils/JSONtoCSV\";\r\n\r\nconst emptySearchResult: MainQueryResponse = {\r\n TotalResults: 0,\r\n Results: [],\r\n};\r\nexport default function SearchPage() {\r\n\tconst filterContext = useContext(FilterContext);\r\n const queryContext = useContext(QueryContext);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n const [panelIsOpen, setPanelIsOpen] = useState(false);\r\n const [viewMode, setViewMode] = useState<'list' | 'map'>('list');\r\n const [searchResult, setSearchResult] = useState(\r\n emptySearchResult,\r\n );\r\n const [initialLoading, setInitialLoading] = useState(true);\r\n const [scrollLoading, setScrollLoading] = useState(false);\r\n const [searchAble, setSearchAble] = useState(true);\r\n const resultRef = useRef(null);\r\n const googleMap = useRef();\r\n const googleMaps = useRef();\r\n const mapMarkers = useRef();\r\n const [displayMode, setDisplayMode] = useState<\r\n 'showAll' | 'showDescription' | 'showButton'\r\n\t\t>('showAll');\r\n\tconst [inExportMode, setInExportMode] = useState(false);\r\n\tconst [isExportRunning, setIsExportRunning] = useState(false);\r\n\r\n const availableFilters = useMemo(() => {\r\n return filterContext[queryContext.query.SearchType] || [];\r\n }, [queryContext.query.SearchType, filterContext]);\r\n\r\n\r\n\t//New search processing\r\n\t//console.log(\"filtercontext\", filterContext);\r\n\tvar parametersFromURL = {} as any;\r\n\tnew URLSearchParams(window.location.search).forEach((value, key) => {\r\n\t\tvar name = key.toLowerCase();\r\n\t\tparametersFromURL[name] = parametersFromURL[name] ? [...parametersFromURL[name], value] : [value];\r\n\t});\r\n\tuseEffect(() => {\r\n\t\t//Set to help track things later\r\n\t\t(window as any).IsOriginalSearchType = true;\r\n\r\n\t\t//Force addition of keywords from URL parameters if applicable, but then enable it to change after 3 seconds\r\n\t\tif (parametersFromURL.keywords) {\r\n\t\t\t(document.querySelector(\"[data-fieldname='MainKeywords']\") as any).value = parametersFromURL.keywords;\r\n\t\t\t(window as any).StarterKeywords = Array.isArray(parametersFromURL.keywords) ? parametersFromURL.keywords[0] : parametersFromURL.keywords;\r\n\t\t\tsetTimeout(function () {\r\n\t\t\t\t(window as any).StarterKeywords = null;\r\n\t\t\t}, 3000);\r\n\t\t}\r\n\t}, []);\r\n\tregisterCurrentQueryListener(\"DoMainSearch\", function () { delayThenDo(\"DoMainSearch\", 250, doSearch); });\r\n\tfunction doSearch() {\r\n\t\t//Get query\r\n\t\tvar query = getCurrentQuery();\r\n\t\t\r\n\t\t//Get filters\r\n\t\tquery.MainFilters = query.MainFilters || [];\r\n\r\n\t\t//Add keywords if applicable\r\n\t\tquery.Keywords = query.Keywords || (window as any).StarterKeywords;\r\n\r\n\t\t//Add SortOrder\r\n\t\tquery.SortOrder = query.SortOrder || \"sortOrder:MostRelevant\";\r\n\t\t\r\n\t\t//Add PageSize and SkipPages\r\n\t\tquery.PageSize = query.PageSize || 20;\r\n\t\tquery.SkipPages = query.SkipPages || 0;\r\n\r\n\t\t//Append filters from URL unless the search type has been changed\r\n\t\tif ((window as any).IsOriginalSearchType) {\r\n\t\t\t//Inject Organization roles (unless it was already removed)\r\n\t\t\tif (!(window as any).RemovedOrganizationRoleFilter && parametersFromURL.filterparameters?.length > 0 && !query.MainFilters.find((m: any) => m.Parameters)) {\r\n\t\t\t\tquery.MainFilters.push({\r\n\t\t\t\t\tLabel: \"Organization Role\",\r\n\t\t\t\t\tItems: [{\r\n\t\t\t\t\t\tText: (Array.isArray(parametersFromURL.filteritemtext) ? parametersFromURL.filteritemtext[0] : parametersFromURL.filteritemtext) || \"Organization Role Filter\",\r\n\t\t\t\t\t\tonRemove: function () {\r\n\t\t\t\t\t\t\t(window as any).RemovedOrganizationRoleFilter = true;\r\n\t\t\t\t\t\t\tupdateCurrentQuery();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}],\r\n\t\t\t\t\tParameters: JSON.parse(parametersFromURL.filterparameters)\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\t//Inject Preselected filters (e.g. industry, ____Type, etc) (unless it was already removed)\r\n\t\t\telse if (!(window as any).RemovedPreselectedFilter && parametersFromURL.filterid && (parametersFromURL.filteritemid || parametersFromURL.filteritemtext)) {\r\n\t\t\t\tvar filterID = Array.isArray(parametersFromURL.filterid) ? parametersFromURL.filterid[0] : parametersFromURL.filterid;\r\n\t\t\t\tvar filterItemID = Array.isArray(parametersFromURL.filteritemid) ? parametersFromURL.filteritemid[0] : parametersFromURL.filteritemid;\r\n\t\t\t\tvar filterData = (window as any).SearchFilters?.[query.SearchType?.toLowerCase()]?.find((m: any) => m.Id == filterID);\r\n\t\t\t\tvar filterLabel = filterData?.Label || \"Filter\";\r\n\t\t\t\tvar filterItemLabel = filterData?.Items?.find((m: any) => m.Id == filterItemID)?.Label || \"Preselected Item\";\r\n\t\t\t\tquery.MainFilters = query.MainFilters.filter((m: any) => !m.IsPreselectedFilter);\r\n\t\t\t\tquery.MainFilters.push({\r\n\t\t\t\t\tLabel: filterLabel,\r\n\t\t\t\t\tItems: [{\r\n\t\t\t\t\t\tId: filterItemID,\r\n\t\t\t\t\t\tText: (Array.isArray(parametersFromURL.filteritemtext) ? parametersFromURL.filteritemtext[0] : parametersFromURL.filteritemtext) || filterItemLabel,\r\n\t\t\t\t\t\tonRemove: function () {\r\n\t\t\t\t\t\t\t(window as any).RemovedPreselectedFilter = true;\r\n\t\t\t\t\t\t\tquery.MainFilters = query.MainFilters.filter((m: any) => !m.IsPreselectedFilter);\r\n\t\t\t\t\t\t\tupdateCurrentQuery();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}],\r\n\t\t\t\t\tId: filterID,\r\n\t\t\t\t\tIsPreselectedFilter: true\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t//Append widget filters if applicable\r\n\t\twidgetApplyWidgetToQuery(query, query.SearchType);\r\n\r\n\r\n\r\n\t\t//TODO: Clean up unused code from the old filter handling\r\n\t\t//TODO: Test everything during/after cleanup\r\n\r\n\r\n\r\n\t\t//Re-render the filter pills\r\n\t\tvar pillBox = (document.querySelector(\".filterPillsSection\") as any);\r\n\t\tif (pillBox) {\r\n\t\t\tpillBox.innerHTML = \"\";\r\n\t\t\tquery.MainFilters.forEach((Filter: any) => {\r\n\t\t\t\tFilter.Items?.forEach((Item: any) => {\r\n\t\t\t\t\tvar button = document.createElement(\"button\");\r\n\t\t\t\t\tbutton.classList.add(\"pillButton\");\r\n\t\t\t\t\tif (Item.onRemove) {\r\n\t\t\t\t\t\tbutton.disabled = false;\r\n\t\t\t\t\t\tbutton.innerHTML = \"\" + Filter.Label + \": \" + Item.Text + \"X\";\r\n\t\t\t\t\t\tbutton.onclick = function () {\r\n\t\t\t\t\t\t\tItem.onRemove();\r\n\t\t\t\t\t\t\tvar box1 = (document.querySelector(\"[data-filterid='\" + Filter.Id + \"'] [data-filteritemid='\" + Item.Id + \"']\") as any);\r\n\t\t\t\t\t\t\tbox1 && (box1.checked = false);\r\n\t\t\t\t\t\t\tvar box2 = (document.querySelector(\"[data-filterid='\" + Filter.Id + \"'] [data-filteritemuri='\" + Item.URI + \"']\") as any);\r\n\t\t\t\t\t\t\tbox2 && (box2.checked = false);\r\n\t\t\t\t\t\t\t//var text = (document.querySelector(\"[data-filterid='\" + Filter.Id + \"'] [data-filteritemtext='\" + Item.Text + \"']\") as any);\r\n\t\t\t\t\t\t\t//text && (text.parentNode.removeChild(text));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tbutton.disabled = true;\r\n\t\t\t\t\t\tbutton.innerHTML = \"\" + Filter.Label + (Filter.Label[Filter.Label.length - 1] == \":\" ? \"\" : \":\") + \" \" + Item.Text + \"\";\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tpillBox.appendChild(button);\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t//Only run the query if it has actually changed, or if query.Force is true (i.e. if the user clicked in the search bar and hit enter, or clicked the search button)\r\n\t\tvar stringified = JSON.stringify(query);\r\n\t\tif (query.Force || stringified != (window as any).PreviousMainSearchStringified) {\r\n\t\t\tquery.Force = false;\r\n\t\t\t(window as any).PreviousMainSearchStringified = stringified;\r\n\t\t\tconsole.log(\"Doing main search...\", query);\r\n\r\n\t\t\tqueryContext.updateQuery({ ...query });\r\n\t\t}\r\n\t\telse {\r\n\t\t\tconsole.log(\"Skipping main search\");\r\n\t\t}\r\n\t}\r\n\r\n\tfunction onSearchButtonClick() {\r\n\t\tqueryContext.updateQuery({\r\n\t\t\t...queryContext.query,\r\n\t\t\tSkipPages: 0,\r\n\t\t});\r\n\t}\r\n\r\n\tfunction onUpdateFilter(filter: Filter, filterItem: FilterItem) {\r\n\t\ttoggleFilterItem(filter.Id, filter.URI, filter.Label, filterItem.Id, filterItem.URI, filterItem.Label ?? filterItem.Text);\r\n }\r\n\r\n function getDefaultSortOption() {\r\n const index = sortOptions.findIndex(\r\n (option) => option.key == queryContext.query.SortOrder,\r\n );\r\n if (index == -1) {\r\n return 0;\r\n }\r\n return index;\r\n }\r\n\t\r\n const resultsLocations = useMemo(() => {\r\n let locations: Place[] = [];\r\n const locationField = getResultsLocationField(\r\n queryContext.query.SearchType,\r\n\t\t);\r\n\t\tvar mapFilter = queryContext.query?.MapFilter as any || null;\r\n\t\tvar latitude25Unit = 0.362; //One degree of latitude is 69 miles, so this represents 25 miles of latitude\r\n\t\tvar longitude25Unit = 0.463; //One degree of longitude is a little over 54 miles, so this represents 25 miles of longitude\r\n searchResult.Results.map((result) => {\r\n const resultLocations = result[locationField];\r\n if (resultLocations) {\r\n if (Array.isArray(resultLocations)) {\r\n\t\t\t\t\tresultLocations.forEach((place, index) => {\r\n\t\t\t\t\t\tvar isValidLocation = true;\r\n\t\t\t\t\t\tif (mapFilter && mapFilter.BBoxCenterLatitude && mapFilter.BBoxCenterLongitude) {\r\n\t\t\t\t\t\t\tmapFilter.PositionType = mapFilter.PositionType || \"positionType:In\";\r\n\t\t\t\t\t\t\tvar isInPlace = place.AddressRegion?.toLowerCase() == mapFilter.Region?.toLowerCase() && (mapFilter.Label == mapFilter.Region ? true : place.AddressLocality?.toLowerCase() == mapFilter.Label?.toLowerCase());\r\n\t\t\t\t\t\t\tvar latitudeDistance = Math.abs(place.Latitude - mapFilter.BBoxCenterLatitude);\r\n\t\t\t\t\t\t\tvar longitudeDistance = Math.abs(place.Longitude - mapFilter.BBoxCenterLongitude);\r\n\t\t\t\t\t\t\tvar latitudeDistanceThreshold = ({ \"positionType:Near_25\": latitude25Unit * 1, \"positionType:Near_50\": latitude25Unit * 2, \"positionType:Near_100\": latitude25Unit * 3 } as any)[mapFilter.PositionType] || 0;\r\n\t\t\t\t\t\t\tvar longitudeDistanceThreshold = ({ \"positionType:Near_25\": longitude25Unit * 1, \"positionType:Near_50\": longitude25Unit * 2, \"positionType:Near_100\": longitude25Unit * 3 } as any)[mapFilter.PositionType] || 0;\r\n\t\t\t\t\t\t\tisValidLocation = mapFilter.PositionType == \"positionType:In\" && isInPlace ? true : (latitudeDistanceThreshold > latitudeDistance && longitudeDistanceThreshold > longitudeDistance);\r\n\t\t\t\t\t\t\tconsole.log(\"Place\", { place: place, isInPlace: isInPlace, latDistance: latitudeDistance, lonDistance: longitudeDistance });\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (isValidLocation) {\r\n\t\t\t\t\t\t\tlocations.push({\r\n\t\t\t\t\t\t\t\t...place,\r\n\t\t\t\t\t\t\t\tResourceName: result.Name || \"Unknown Resource\",\r\n\t\t\t\t\t\t\t\tResourceProviderName: result.OwnedByLabel?.Label || \"\",\r\n\t\t\t\t\t\t\t\tMarkerTitle: (result.Name || \"Unknown Resource\") + \", Location \" + (index + 1),\r\n\t\t\t\t\t\t\t\tidentifier: result.Meta_Id,\r\n\t\t\t\t\t\t\t\t//label: getMapInfoWindowFromSearchResultsLocations(\r\n\t\t\t\t\t\t\t\t//\tqueryContext.query.SearchType,\r\n\t\t\t\t\t\t\t\t//\tresult,\r\n\t\t\t\t\t\t\t\t//),\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n });\r\n }\r\n }\r\n });\r\n // clear all current markers\r\n if (mapMarkers.current) {\r\n mapMarkers.current.forEach((marker: google.maps.Marker) => {\r\n marker.setMap(null);\r\n });\r\n mapMarkers.current = [];\r\n }\r\n // fit bounds\r\n if (googleMap.current && googleMaps.current) {\r\n mapMarkers.current = setupMap(\r\n googleMap.current,\r\n googleMaps.current,\r\n locations,\r\n defaultMapSetting.zoom,\r\n );\r\n }\r\n\r\n return locations;\r\n }, [searchResult.Results]);\r\n\r\n\t//Use brute force to prevent the results div jumping to the top\r\n\t//Really awful hack but React sucks that much\r\n\tuseEffect(() => {\r\n\t\t(document.querySelector(\"#mainResultContainer\") as any).style.minHeight = document.querySelector(\"#mainResultContainer\")?.clientHeight + \"px\";\r\n\t}, [searchResult.Results]);\r\n\tuseEffect(() => {\r\n\t\tif (queryContext.query.SkipPages == 0) {\r\n\t\t\t(document.querySelector(\"#mainResultContainer\") as any).style.minHeight = \"0px\";\r\n\t\t}\r\n\t}, [queryContext.query]);\r\n\t//\r\n\r\n useEffect(() => {\r\n function loadMore() {\r\n if (resultRef.current) {\r\n if (\r\n window.innerHeight + document.documentElement.scrollTop >=\r\n resultRef.current.scrollHeight + 1\r\n ) {\r\n if (!initialLoading && !scrollLoading && searchAble) {\r\n\t\t\t\t\t\tconsole.log(\"setScrollLoading\", \"true\");\r\n\t\t\t\t\t\tsetScrollLoading(true);\r\n\r\n\t\t\t\t\t\tupdateCurrentQuery((query: any) => {\r\n\t\t\t\t\t\t\tquery.PageSize = 20;\r\n\t\t\t\t\t\t\tquery.SkipPages = query.SkipPages == undefined ? 0 : query.SkipPages + 1;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\t/* */\r\n\r\n queryContext.updateQuery({\r\n ...queryContext.query,\r\n SkipPages: (queryContext.query.SkipPages || 0) + 1,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n window.addEventListener('scroll', loadMore);\r\n\r\n return () => {\r\n window.removeEventListener('scroll', loadMore);\r\n };\r\n }, [\r\n resultRef,\r\n scrollLoading,\r\n //queryContext.query,\r\n initialLoading,\r\n searchAble,\r\n ]);\r\n\r\n\tuseEffect(() => {\r\n\t\tfunction generateQueryFromURL() {\r\n\t\t\t//Get from URL\r\n\t\t\tvar parameters = {} as any;\r\n\t\t\tnew URLSearchParams(window.location.search).forEach((value, key) => {\r\n\t\t\t\tvar name = key.toLowerCase();\r\n\t\t\t\tparameters[name] = parameters[name] ? [...parameters[name], value] : [value];\r\n\t\t\t});\r\n\r\n\t\t\t//Convert\r\n\t\t\tvar filterId = parameters.filterid?.[0] || \"-1\";\r\n\t\t\tvar filterItemId = parameters.filteritemid?.[0] || \"\";\r\n\t\t\tvar filterItemText = parameters.filteritemtext?.[0] || \"\";\r\n\t\t\tvar keywords = parameters.keywords?.[0] || \"\";\r\n\t\t\tvar filterParameters = parameters.filterparameters?.[0];\r\n\t\t\tvar searchType = ((parameters.searchtype?.[0] || \"\").toLowerCase() as MainSearchType) || 'credential';\r\n\t\t\tconsole.log(\"Keywords from URL:\", keywords);\r\n\r\n\t\t\t//If valid...\r\n\t\t\tif (!(filterId == '-1' && filterItemId == '' && filterItemText == '' && !filterParameters)) {\r\n\t\t\t\t//Create the filter\r\n\t\t\t\tvar newFilter = {\r\n\t\t\t\t\tId: filterId,\r\n\t\t\t\t\tItems: [{\r\n\t\t\t\t\t\tId: filterItemId,\r\n\t\t\t\t\t\tText: filterItemText\r\n\t\t\t\t\t}] as Array,\r\n\t\t\t\t} as Filter;\r\n\r\n\t\t\t\t//Inject parameters if present\r\n\t\t\t\tif (filterParameters) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tnewFilter.Parameters = JSON.parse(filterParameters);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcatch (error) { }\r\n\t\t\t\t}\r\n\r\n\t\t\t\t//Lookup the filter from the filterContext to get its URI\r\n\t\t\t\tvar filterFromContext = (filterContext[searchType] || []).find(filter => filter.Id == filterId);\r\n\t\t\t\tif (filterFromContext) {\r\n\t\t\t\t\tnewFilter.URI = filterFromContext.URI;\r\n\t\t\t\t}\t\t\t\r\n\t\t\t\t//Update the query\r\n\t\t\t\tqueryContext.updateQuery({\r\n\t\t\t\t\t...queryContext.query,\r\n\t\t\t\t\tKeywords: keywords,\r\n\t\t\t\t\tMainFilters: [...queryContext.query.MainFilters, newFilter],\r\n\t\t\t\t\tSearchType: searchType,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\telse if (keywords) {\r\n\t\t\t\t//Update the query\r\n\t\t\t\tqueryContext.updateQuery({\r\n\t\t\t\t\t...queryContext.query,\r\n\t\t\t\t\tKeywords: keywords,\r\n\t\t\t\t\tSearchType: searchType,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n // dirty check\r\n if (filterContext['credential'].length > 0) {\r\n generateQueryFromURL();\r\n }\r\n }, [filterContext]);\r\n\r\n\t//Inject widget-based filters\r\n\tuseEffect(() => {\r\n\t\tif ((window as any).Widget?.ID) {\r\n\t\t\twidgetApplyWidgetToQuery(queryContext.query, queryContext.query.SearchType);\r\n\t\t\tqueryContext.updateQuery({\r\n\t\t\t\t...queryContext.query\r\n\t\t\t});\r\n\t\t}\r\n\t}, [filterContext, queryContext.query.SearchType]);\r\n\r\n useEffect(() => {\r\n let isCurrentFetch = true;\r\n\t\tconsole.log(\"Current Fetch = true\");\r\n async function getSearchResults() {\r\n const query = constructSearchQuery(\r\n queryContext.query,\r\n filterContext[queryContext.query.SearchType],\r\n\t\t\t);\r\n\t\t\twidgetApplyWidgetToQuery(queryContext.query, queryContext.query.SearchType);\r\n\r\n\t\t\t//Skip the first double query but let the second run so that event handlers for resource rendering still trigger\r\n\t\t\tif ((query.SkipPages || 0) > 0 && (query.SkipPages || 0) != (window as any).OldSkipPages) {\r\n\t\t\t\tconsole.log(\"Skipping first double query\", query);\r\n\t\t\t\t(window as any).OldSkipPages = query.SkipPages || 0;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t/*\r\n\t\t\t//Skip double queries - works, but causes results to stop rendering after 3 pages for some reason\r\n\t\t\tvar textQuery = JSON.stringify(query);\r\n\t\t\tconsole.log(\"Current query\", textQuery);\r\n\t\t\tconsole.log(\"Old query\", (window as any).OldQuery);\r\n\t\t\tif ((window as any).OldQuery == textQuery) {\r\n\t\t\t\tconsole.log(\"Skipping query because it is the same as before\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tconsole.log(\"Updating old query\");\r\n\t\t\t\t(window as any).OldQuery = textQuery;\r\n\t\t\t}\r\n\t\t\t*/\r\n\r\n if (!scrollLoading) {\r\n setInitialLoading(true);\r\n\t\t\t}\r\n\r\n\t\t\tconst isFirstPage = queryContext.query.SkipPages == 0;\r\n const url = apiUrl + '/search';\r\n let results: any[] = [];\r\n let totalResults = 0;\r\n\t\t\ttry {\r\n\t\t\t\tconsole.log(\"Doing search\");\r\n const res = await axios.post(url, query);\r\n if (res.data.Successful) {\r\n // results = [];\r\n\t\t\t\t\tconsole.log(\"Successful results\", res);\r\n results = res.data.Result?.Results || [];\r\n totalResults = res.data.Result?.TotalResults || 0;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log(\"Inner error\", res);\r\n results = [];\r\n }\r\n\t\t\t} catch (error) {\r\n\t\t\t\tconsole.log(\"Outer error\");\r\n results = [];\r\n\t\t\t}\r\n\t\t\tif (isCurrentFetch == true) {\r\n\t\t\t\tconsole.log(\"Is Current Fetch...\");\r\n\t\t\t\t//if (scrollLoading) {\r\n\t\t\t\tif (!isFirstPage) {\r\n\t\t\t\t\tconsole.log(\"Not first page\");\r\n\t\t\t\t\t//Hack to work around paging searches happening twice, and probably other problems\r\n\t\t\t\t\tvar appendResults = results;//.filter(m => searchResult.Results.find(n => n.CTID == m.CTID) == null); //Should be fixed now that the first of the double-queries is getting skipped \r\n\t\t\t\t\tvar newSearchResults = [];\r\n\t\t\t\t\tif (appendResults.length > 0) {\r\n\t\t\t\t\t\tconsole.log(\"Appending results\", appendResults);\r\n\t\t\t\t\t\tnewSearchResults = searchResult.Results.concat(\r\n\t\t\t\t\t\t\tappendResults\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tnewSearchResults = [...searchResult.Results];\r\n\t\t\t\t\t\tconsole.log(\"Skipping appending results twice\", results);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t//Always set results to ensure other page events happen as expected even if nothing was appended(?)\r\n\t\t\t\t\tsetSearchResult({\r\n\t\t\t\t\t\t...searchResult,\r\n\t\t\t\t\t\tResults: newSearchResults,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.log(\"First page, resetting results\");\r\n\t\t\t\t\tsetSearchResult({\r\n\t\t\t\t\t\tTotalResults: totalResults,\r\n\t\t\t\t\t\tResults: results,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tconsole.log(\"Settting searchAble\");\r\n\t\t\t\tif (results.length < 20) {\r\n\t\t\t\t\tsetSearchAble(false);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tsetSearchAble(true);\r\n\t\t\t\t}\r\n\t\t\t\tsetInitialLoading(false);\r\n\t\t\t\tconsole.log(\"setScrollLoading\", \"false\");\r\n\t\t\t\tsetScrollLoading(false);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tconsole.log(\"Is not Current Fetch...\");\r\n\t\t\t\t//setSearchResult({ ...searchResult, Results: [...searchResult.Results] });\r\n\t\t\t}\r\n }\r\n getSearchResults();\r\n\r\n return () => {\r\n\t\t\tisCurrentFetch = false;\r\n\t\t\tconsole.log(\"Current Fetch = false\");\r\n };\r\n }, [queryContext.query]);\r\n\r\n\t//Handle connecting result buttons to map markers\r\n\t//Work around setState being async via a bunch of stupid extra steps\r\n\t//First create the state stuff\r\n\tconst [focusedOnMarkersForResult, setfocusedOnMarkersForResult] = useState(0);\r\n\r\n\t//When the button is clicked, set the view mode to map and then set the state to reference either the selected marker, or all of them\r\n\tfunction focusOnMarkersForResult(resultID: number) {\r\n\t\tsetViewMode(\"map\");\r\n\t\tsetfocusedOnMarkersForResult(focusedOnMarkersForResult == resultID ? 0 : resultID);\r\n\t}\r\n\r\n\t//When the state actually gets around to changing, start trying to do things with the map\r\n\tuseEffect(() => {\r\n\t\ttryFocusOnMarkersForResult(focusedOnMarkersForResult, 50);\r\n\t}, [focusedOnMarkersForResult]);\r\n\r\n\t//No callbacks to be able to tell when the map is ready, so brute force it with a timeout loop\r\n\tfunction tryFocusOnMarkersForResult(resultID: number, attemptsRemaining: number) {\r\n\t\tif (!mapMarkers.current && attemptsRemaining > 0 && resultID > 0) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\ttryFocusOnMarkersForResult(resultID, attemptsRemaining - 1);\r\n\t\t\t}, 100);\r\n\t\t}\r\n\t\t//Once it's finally ready to do something useful, and if there are actually any markers to manipulate...\r\n\t\telse if (mapMarkers.current && mapMarkers.current.length > 0) {\r\n\t\t\t//Get the markers for this result\r\n\t\t\tvar markersForResult = mapMarkers.current.filter((m: any) => { return resultID > 0 ? m.get(\"resultID\") == resultID : true });\r\n\t\t\tconsole.log(\"Focusing on markers for result \" + resultID, markersForResult.map((m: any) => { return m.get(\"resultID\") }));\r\n\r\n\t\t\t//Set each marker's opacity\r\n\t\t\tmapMarkers.current.forEach(function (marker: any) {\r\n\t\t\t\tmarker.setOpacity((marker.get(\"resultID\") == resultID || resultID == 0) ? 1 : 0.01);\r\n\t\t\t});\r\n\r\n\t\t\t//Refit the map to the bounds of the selected markers\r\n\t\t\t//Have to do this in an if because TypeScript won't quit complaining about how googleMap.current might be \"possibly undefined\" even when optional chaining is used\r\n\t\t\tif (googleMap.current) {\r\n\t\t\t\tvar bounds = new google.maps.LatLngBounds();\r\n\t\t\t\tmarkersForResult.forEach(function (marker: any) {\r\n\t\t\t\t\tbounds.extend(marker.getPosition());\r\n\t\t\t\t});\r\n\t\t\t\tgoogleMap.current.fitBounds(bounds);\r\n\t\t\t\tgoogleMap.current.getZoom() > 15 && googleMap.current.setZoom(15);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t//\r\n\r\n\t//Have to split this into a start function and a useEffect due to React's stupid async render garbage\r\n\tfunction startExport() {\r\n\t\tsetInExportMode(true);\r\n\t\tsetIsExportRunning(true);\r\n\t}\r\n\t//\r\n\r\n\tuseEffect(() => {\r\n\t\tif (inExportMode && isExportRunning) {\r\n\t\t\t(window as any).ExportTransactionGUID = (crypto as any).randomUUID();\r\n\t\t\t(window as any).TrackExportProgress = true;\r\n\t\t\t(window as any).MaxExportTrackingTickets = 10000;\r\n\t\t\tupdateExportWindow(0, 0);\r\n\t\t\t//setExportTransactionGUID((crypto as any).randomUUID()); //Doesn't actually happen in time to allow this to work\r\n\t\t\tvar query = { ...queryContext.query, SkipPages: 0, PageSize: 500, IsExportMode: true };\r\n\t\t\taxios.post(apiUrl + \"/export?transactionGUID=\" + (window as any).ExportTransactionGUID, query).then(response => {\r\n\t\t\t\tconsole.log(\"Loaded CSV Data\", response);\r\n\t\t\t\t(window as any).TrackExportProgress = false;\r\n\t\t\t\tsetTimeout(() => getExportProgress(true), 1000);\r\n\r\n\t\t\t\tif (response.data.Successful) {\r\n\t\t\t\t\tvar file = new Blob([response.data.Result], { type: \"text/csv\" });\r\n\t\t\t\t\tvar dataURL = window.URL.createObjectURL(file);\r\n\t\t\t\t\tvar link = document.createElement(\"a\");\r\n\t\t\t\t\tlink.download = \"Resource Export.csv\";\r\n\t\t\t\t\tlink.href = dataURL;\r\n\t\t\t\t\tlink.click();\r\n\t\t\t\t\twindow.URL.revokeObjectURL(dataURL);\r\n\t\t\t\t\tlink.remove();\r\n\r\n\t\t\t\t\t//setIsExportRunning(false); //Causes page crash\r\n\t\t\t\t\t//setInExportMode(false); //Causes page crash\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\talert(\"One or more errors were encountered during the export:\\n\" + (response.data.Messages || []).join(\"\\n\"));\r\n\t\t\t\t}\r\n\r\n\t\t\t}, error => {\r\n\t\t\t\tconsole.log(\"Error loading CSV Data\", error);\r\n\t\t\t\t//setIsExportRunning(false); //Causes page crash\r\n\t\t\t\t(window as any).TrackExportProgress = false;\r\n\t\t\t\tsetTimeout(() => getExportProgress(true), 1000);\r\n\r\n\t\t\t});\r\n\r\n\t\t\tgetExportProgress();\r\n\t\t}\r\n\r\n\t}, [inExportMode, isExportRunning])\r\n\t//\r\n\r\n\tfunction getExportProgress(force?: boolean) {\r\n\t\t//if ((inExportMode && isExportRunning) || force) { //Doesn't actually shut off if isExportRunning is set to false. The state doesn't update properly for some reason.\r\n\t\tif (((window as any).TrackExportProgress && (window as any).MaxExportTrackingTickets > 0) || force) {\r\n\t\t\t(window as any).MaxExportTrackingTickets--; //Prevent exports from running forever\r\n\t\t\taxios.get(apiUrl + \"/export/getprogress/\" + (window as any).ExportTransactionGUID).then(response => {\r\n\t\t\t\tconsole.log(\"Got progress\", response);\r\n\t\t\t\tif (response?.data?.Result?.TotalItems && response?.data?.Result?.ProcessedItems) {\r\n\t\t\t\t\tupdateExportWindow(response.data.Result.ProcessedItems, response.data.Result.TotalItems);\r\n\t\t\t\t}\r\n\t\t\t\tsetTimeout(getExportProgress, 1000);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\t//\r\n\r\n\tfunction cancelExport() {\r\n\t\taxios.get(apiUrl + \"/export/cancel/\" + (window as any).ExportTransactionGUID).then(response => {\r\n\t\t\tconsole.log(\"Canceled transaction\", response);\r\n\t\t\tsetTimeout(() => getExportProgress(true), 1000);\r\n\t\t});\r\n\t}\r\n\t//\r\n\r\n\r\n\tfunction updateExportWindow(count: number, total: number) {\r\n\t\ttry {\r\n\t\t\tvar percentage = total == 0 ? \"0%\" : Math.ceil((count / total) * 100) + \"%\";\r\n\t\t\t(Array.from(document.getElementsByClassName(\"exportLabel\"))[0] as any).innerHTML = \"Exporting Results... (\" + count + \" of \" + total + \")\";\r\n\t\t\tvar bar = (Array.from(document.getElementsByClassName(\"exportBar\"))[0] as any);\r\n\t\t\tbar.style.width = percentage;\r\n\t\t\tbar.innerHTML = percentage;\r\n\t\t}\r\n\t\tcatch (e) {}\r\n\t}\r\n\t//\r\n\r\n\t//Apply widgetization to the filters\r\n\tvar widgetAvailableFilters = widgetPruneFiltersAndOptions(availableFilters, queryContext.query.SearchType);\r\n\t//console.log(\"Available filters\", availableFilters);\r\n\t//console.log(\"Widget Available filters\", widgetAvailableFilters);\r\n\t//console.log(\"App Base Name\", appBaseName);\r\n\r\n\r\n return (\r\n\t\t\r\n\t\t\t\r\n \r\n \r\n \r\n \r\n {panelIsOpen && (\r\n setPanelIsOpen(false)}\r\n onUpdateFilter={onUpdateFilter}\r\n />\r\n )}\r\n \r\n \r\n \r\n {initialLoading\r\n ? `Searching...`\r\n : `${searchResult.TotalResults} results`}\r\n \r\n {!panelIsOpen && (\r\n setPanelIsOpen(true)}\r\n buttonType=\"primary\">\r\n \r\n Filter\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\r\n setDisplayMode(option.key)\r\n }\r\n getOptionLabel={(option) =>\r\n option.value\r\n }\r\n />\r\n \r\n \r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\tupdateCurrentQuery((query: any) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\tquery.SortOrder = option.key;\r\n\t\t\t\t\t\t\t\t\t\t\t});\r\n\r\n queryContext.updateQuery({\r\n ...queryContext.query,\r\n SortOrder: option.key\r\n });\r\n\t\t\t\t\t\t\t\t\t\t} }\r\n getOptionLabel={(option) =>\r\n option.value\r\n }\r\n />\r\n \r\n \r\n \r\n setViewMode('list')}\r\n buttonType={\r\n viewMode === 'list'\r\n ? 'primary'\r\n : undefined\r\n }>\r\n \r\n \r\n List\r\n \r\n \r\n setViewMode('map')}\r\n buttonType={\r\n viewMode === 'map'\r\n ? 'primary'\r\n : undefined\r\n }>\r\n \r\n \r\n Map\r\n \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{queryContext.query.SearchType != 'competencyframework' && \r\n\t\t\t\t\t\t\t setInExportMode(true)}>Export\r\n\t\t\t\t\t\t\t}\r\n \r\n \r\n\t\t\t\t\t{/*renderFilterPills()*/}\r\n\t\t\t\t\t
    \r\n \r\n {viewMode === 'map' && (\r\n \r\n {\r\n mapMarkers.current = setupMap(\r\n map,\r\n maps,\r\n\t\t\t\t\t\t\t\t\t\t\tresultsLocations\r\n );\r\n googleMap.current = map;\r\n googleMaps.current = maps;\r\n }}\r\n />\r\n \r\n )}\r\n \r\n {initialLoading ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n {searchResult.TotalResults === 0 && (\r\n \r\n )}\r\n {searchResult.Results.map((item, index) => {\r\n return (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n focusOnMarkersForResult(item.Meta_Id)}\r\n />\r\n {(displayMode == 'showAll' || displayMode == 'showButton') && (\r\n \r\n )}\r\n \r\n );\r\n })}\r\n \r\n )}\r\n {scrollLoading && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n
    \r\n\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t{inExportMode && }\r\n
    \r\n );\r\n}\r\n\r\nconst ExportDisplay = function (props: { totalResults: number, inExportMode: boolean, setInExportMode: any, isExportRunning: boolean, setIsExportRunning: any, startExport: any, cancelExport: any }) {\r\n\tvar estimatedExportTime = Math.ceil(((props.totalResults / 25) * 0.5) / 60); //25 = the page size of the export. Update it here if that changes. 0.5 = how long per page.\r\n\treturn \r\n\t\t\r\n\t\t\t\r\n\t\t\t\tExport{props.isExportRunning && \"ing\"} Results{props.isExportRunning && \"...\"}\r\n\t\t\t\t{props.isExportRunning && }\r\n\t\t\t\t
    \r\n\t\t\t\t{!props.isExportRunning && { (window as any).AllowExportProgress = true; props.startExport(); }}>Start Export}\r\n\t\t\t\t { (window as any).AllowExportProgress = false; props.setIsExportRunning(false); props.setInExportMode(false); props.cancelExport(); }}>Cancel/Close\r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t

    The Credential Finder export contains limited key information about resources and may take a few minutes to perform. For better performance, please narrow your search results.

    \r\n\t\t\t\t

    {/*Estimated time to export {props.totalResults} resources: {estimatedExportTime < 1 ? \"Less than one minute\" : estimatedExportTime + \" minute(s)\"}. */}Click the \"Start Export\" button to begin.

    \r\n\t\t\t\t

    For a thorough export of Registry data, please review our consuming options and contact Credential Engine.

    \r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t0%\r\n\t\t\t\r\n\t\t
    \r\n\t
    \r\n}\r\n\r\nconst ExportOverlay = styled.div`\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tz-index: 1000;\r\n\tbackground-color: rgba(0,0,0,0.5);\r\n`;\r\n\r\nconst ExportModal = styled.div`\r\n\twidth: 90vw;\r\n\tmax-width: 800px;\r\n\tbackground-color: #FFF;\r\n\tpadding: 10px;\r\n\tmargin: 50px auto;\r\n\tborder-radius: 3px;\r\n\r\n\t& p {\r\n\t\tmargin: 5px 0;\r\n\t}\r\n`;\r\n\r\nconst ExportLabelWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tgap: 10px;\r\n\tpadding: 5px 10px;\r\n`;\r\n\r\nconst ExportStartButton = styled.button`\r\n\tbackground-color: #3D3;\r\n\tborder: none;\r\n\tborder-radius: 3px;\r\n\r\n\t&:hover, :focus {\r\n\t\tbackground-color: #5D5;\r\n\t\tcursor: pointer;\r\n\t}\r\n`;\r\n\r\nconst ExportCancelButton = styled.button`\r\n\tbackground-color: #FAA;\r\n\tborder: none;\r\n\tborder-radius: 3px;\r\n\r\n\t&:hover, :focus {\r\n\t\tbackground-color: #F77;\r\n\t\tcursor: pointer;\r\n\t}\r\n`;\r\n\r\nconst ExportDescription = styled.div`\r\n\tpadding: 5px 10px;\r\n`;\r\n\r\nconst ExportLabel = styled.div`\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst ExportBarWrapper = styled.div`\r\n\tbackground-color: #777;\r\n\tpadding: 1px;\r\n\theight: 32px;\r\n\tborder-radius: 3px;\r\n`;\r\n\r\nconst ExportBar = styled.div`\r\n\tbackground-color: #3E3;\r\n\tpadding: 5px;\r\n\tfont-weight: bold;\r\n\theight: 30px;\r\n\tmin-width: 40px;\r\n\twidth: 0%;\r\n\ttransition: width 0.2s;\r\n\ttext-align: center;\r\n\tborder-radius: 3px;\r\n`;\r\n\r\n","import React, { Dispatch, SetStateAction, useEffect, useContext, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport styled from 'styled-components/macro';\r\n\r\nimport credentials_icon from '../../assets/images/icons/icon-credentials-white-green-01.svg';\r\nimport organizations_icon from '../../assets/images/icons/icon-organization-white-green-01.svg';\r\nimport assessments_icon from '../../assets/images/icons/icon-assessments-white-green-01.svg';\r\nimport learning_opportunities_icon from '../../assets/images/icons/icon-learning-opportunities-white-green-01.svg';\r\nimport transfer_values_icon from '../../assets/images/icons/icon-transfer-value-white-green-01.svg';\r\nimport pathways_icon from '../../assets/images/icons/icon-pathways-white-green-01.svg';\r\nimport competency_frameworks_icon from '../../assets/images/icons/icon-competencies-white-green-01.svg';\r\nimport concept_schemes_icon from '../../assets/images/icons/icon-competencies-white-green-01.svg';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faAngleDown, faAngleRight, faExternalLinkAlt, faSearch, faTimes } from '@fortawesome/free-solid-svg-icons';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport { apiUrl, BUCKET_STORAGE, appURL, configName } from '../../shared/globals';\r\nimport axios from 'axios';\r\nimport { formatPrice } from '../../utils';\r\nimport { MainItemBroadType, MainSearchOption } from '../../types/internal';\r\nimport {\r\n\tCredential,\r\n\tOrganization,\r\n\tAssessment,\r\n\tLearningOpportunity,\r\n\tTransferValue,\r\n\tPathway,\r\n\t//PathwaySet,\r\n\tCompetencyFramework,\r\n\tCollection,\r\n\tConceptScheme,\r\n\tLink,\r\n\tCostProfile,\r\n\tDurationProfile,\r\n\tCompetency,\r\n ConditionProfile,\r\n Outline,\r\n Place,\r\n ContactPoint,\r\n ReferenceFramework,\r\n FinancialAssistanceProfile,\r\n DataSetProfile,\r\n AggregateDataProfile,\r\n DataSetTimeFrame,\r\n DataProfile,\r\n QuantitativeValue\r\n} from '../../types/external';\r\nimport { doesWidgetHideThisSearchType, widgetGetColor, widgetGetPluralLabelForText } from '../../utils/SiteWidgetizer';\r\nimport { addCompareItem, getCompareItemByCTID, getCompareItems, getCompareItemsByType, removeCompareItem, addOrUpdateCompareItem, updateStateOnCompareChange } from '../../utils/LocalStorage';\r\nimport { getResourceByURLWithoutState } from '../../components/GetResourceByURI';\r\nimport { getUUID } from '../../components/MiniSearch';\r\nimport Dropdown from '../../components/Dropdown';\r\nimport { mainSearchTypeOptions } from '../../shared/data';\r\nimport PillLink from '../../components/PillLink';\r\nimport { renderToString } from 'react-dom/server';\r\n\r\ninterface CompareDataProperty {\r\n\tlabel: string;\r\n\tvalue: (item: any) => JSX.Element | null;\r\n\texpanded: boolean;\r\n}\r\n\r\nexport default function ComparePage(props: RouteComponentProps) {\r\n\t//Setup tabs\r\n\tconst [currentTab, setCurrentTab] = useState(\"credential\");\r\n\tconst [compareItems, setCompareItems] = useState(getCompareItems());\r\n\r\n\t//Get the raw data out of localStorage or initialize empty containers\r\n\tvar rawCompareData = getRawCompareData();\r\n\t//getCompareDataFromShareLink(compareContext);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetCompareDataFromShareLink();\r\n\t\tupdateStateOnCompareChange(() => { setCompareItems(getCompareItems()); });\r\n\t\tsetCompareItems(getCompareItems());\r\n\t}, []);\r\n\r\n\t//Remove the share link data from the URL so this process doesn't cause things to get re-added if the user removes them since React will reread the URL and try to force it to\r\n\tuseEffect(() => {\r\n\t\tsetTimeout(function () {\r\n\t\t\tvar currentParams = new URLSearchParams(window.location.search);\r\n\t\t\tvar sharelessParams = new URLSearchParams(\"\");\r\n\t\t\tcurrentParams.forEach((value, key) => {\r\n\t\t\t\tif (!key.toLowerCase().includes(\"share_\") && !sharelessParams.get(key)) {\r\n\t\t\t\t\tsharelessParams.append(key, value);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\twindow.history.replaceState(null, document.title, window.location.href.split(\"?\")[0] + (Array.from(sharelessParams.keys()).length > 0 ? \"?\" + sharelessParams.toString() : \"\"));\r\n\t\t}, 500);\r\n\t}, []);\r\n\r\n\t//Show the tab from the selected search type, if applicable\r\n\tuseEffect(() => {\r\n\t\tvar searchType = new URLSearchParams(window.location.search?.toLowerCase()).get(\"searchtype\") || \"credential\";\r\n\t\tsetCurrentTab(searchType);\r\n\t}, []);\r\n\r\n\t//Setup the methods that will read data out of the source data\r\n\tconst [credentialCompareData, setCredentialCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: Credential) => },\r\n\t\t{ label: \"\", value: (item: Credential) => },\r\n\t\t{ label: \"\", value: (item: Credential) => },\r\n\t\t{ label: \"Description\", value: (item: Credential) => , expanded: true },\r\n\t\t{ label: \"Audience Types\", value: (item: Credential) => },\r\n\t\t{ label: \"Audience Levels\", value: (item: Credential) => },\r\n\t\t//{ label: \"Industries\", value: (item: Credential) => },\r\n\t\t//{ label: \"Occupations\", value: (item: Credential) => },\r\n\t\t{ label: \"Industries\", value: (item: Credential) => },\r\n\t\t{ label: \"Occupations\", value: (item: Credential) => },\r\n\t\t{ label: \"Estimated Costs\", value: (item: Credential) => },\r\n\t\t{ label: \"Estimated Time to Earn\", value: (item: Credential) => },\r\n\t\t{ label: \"Financial Assistance\", value: (item: Credential) => m.FinancialAssistanceType).filter(m => m)} /> },\r\n\t\t{ label: \"Location(s)\", value: (item: Credential) => },\r\n\t\t{ label: \"Requirements Summary\", value: (item: Credential) => },\r\n\t\t{ label: \"Required for Credential(s)\", value: (item: Credential) => m.TargetCredential?.Values).filter(m => m)} showType={true} /> },\r\n\t\t{ label: \"Outcomes Summary\", value: (item: Credential) => }\r\n\t]);\r\n\r\n\tconst [organizationCompareData, setOrganizationCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: Organization) => },\r\n\t\t{ label: \"Description\", value: (item: Organization) => , expanded: true },\r\n\t\t{ label: \"Organization Types\", value: (item: Organization) => },\r\n\t\t{ label: \"Organization Sectors\", value: (item: Organization) => },\r\n\t\t{ label: \"Service Types\", value: (item: Organization) => },\r\n\t\t//{ label: \"Industries\", value: (item: Organization) => },\r\n\t\t{ label: \"Industries\", value: (item: Organization) => },\r\n\t\t{ label: \"Location(s)\", value: (item: Organization) => }\r\n\t]);\r\n\r\n\tconst [assessmentCompareData, setAssessmentCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: Assessment) => },\r\n\t\t{ label: \"\", value: (item: Assessment) => },\r\n\t\t{ label: \"Description\", value: (item: Assessment) => , expanded: true },\r\n\t\t{ label: \"Audience Types\", value: (item: Assessment) => },\r\n\t\t{ label: \"Audience Levels\", value: (item: Assessment) => },\r\n\t\t{ label: \"Assessment Method Types\", value: (item: Assessment) => },\r\n\t\t{ label: \"Delivery Method Types\", value: (item: Assessment) => },\r\n\t\t{ label: \"Industries\", value: (item: Assessment) => },\r\n\t\t{ label: \"Occupations\", value: (item: Assessment) => },\r\n\t\t{ label: \"Estimated Costs\", value: (item: Assessment) => },\r\n\t\t{ label: \"Estimated Time to Complete\", value: (item: Assessment) => },\r\n\t\t{ label: \"Financial Assistance\", value: (item: Assessment) => m.FinancialAssistanceType).filter(m => m)} /> },\r\n\t\t{ label: \"Location(s)\", value: (item: Assessment) => },\r\n\t\t{ label: \"Entry Requirements Summary\", value: (item: Assessment) => },\r\n\t\t{ label: \"Completion Requirements Summary\", value: (item: Assessment) => },\r\n\t\t{ label: \"Required for Credential(s)\", value: (item: Assessment) => m.TargetCredential?.Values).filter(m => m)} showType={true} /> },\r\n\t\t{ label: \"Outcomes Summary\", value: (item: Credential) => }\r\n\t]);\r\n\r\n\tconst [learningOpportunityCompareData, setLearningOpportunityCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Description\", value: (item: LearningOpportunity) => , expanded: true },\r\n\t\t{ label: \"Audience Types\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Audience Levels\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Learning Method Types\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Delivery Types\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Industries\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Occupations\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Estimated Costs\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Estimated Time to Complete\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Financial Assistance\", value: (item: LearningOpportunity) => m.FinancialAssistanceType).filter(m => m)} /> },\r\n\t\t{ label: \"Location(s)\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Entry Requirements Summary\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Completion Requirements Summary\", value: (item: LearningOpportunity) => },\r\n\t\t{ label: \"Required for Credential(s)\", value: (item: LearningOpportunity) => m.TargetCredential?.Values).filter(m => m)} showType={true} /> },\r\n\t\t{ label: \"Outcomes Summary\", value: (item: Credential) => }\r\n\t]);\r\n\r\n\tconst [transferValueCompareData, setTransferValueCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"Description\", value: (item: TransferValue) => , expanded: true }\r\n\t]);\r\n\r\n\tconst [pathwayCompareData, setPathwayCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"Description\", value: (item: TransferValue) => , expanded: true }\r\n\t]);\r\n\r\n\tconst [competencyFrameworkCompareData, setCompetencyFrameworkCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"Description\", value: (item: TransferValue) => , expanded: true }\r\n\t]);\r\n\r\n\tconst [collectionCompareData, setCollectionCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"Description\", value: (item: TransferValue) => , expanded: true }\r\n\t]);\r\n\r\n\tconst [conceptSchemeCompareData, setConceptSchemeCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"\", value: (item: TransferValue) => },\r\n\t\t{ label: \"Description\", value: (item: TransferValue) => , expanded: true }\r\n\t]);\r\n\r\n\tconst [competencyCompareData, setCompetencyCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: Competency) => },\r\n\t\t{ label: \"Description\", value: (item: Competency) => , expanded: true }\r\n\t]);\r\n\r\n\tconst [supportServiceCompareData, setSupportServiceCompareData] = useState([\r\n\t\t{ label: \"\", value: (item: Competency) => },\r\n\t\t{ label: \"Description\", value: (item: Competency) => , expanded: true }\r\n\t]);\r\n\r\n\t//Used to trick react later\r\n\tconst [loaded, setLoaded] = useState(false);\r\n\tfunction onItemLoad() {\r\n\t\tsetLoaded(!loaded);\r\n\t}\r\n\r\n\t//Used to remove items\r\n\tfunction removeItem(item: any) {\r\n\t\tremoveCompareItem(item);\r\n\t}\r\n\t \r\n\tvar filteredSearchTypeOptions = mainSearchTypeOptions.filter(m => !doesWidgetHideThisSearchType(m.key)).filter(m => (m as any).key != \"supportservice\"\r\n\t\t&& (m as any).key != \"outcomedata\"\r\n\t\t&& (m as any).key != \"job\"\r\n\t\t&& (m as any).key != \"occupation\"\r\n\t\t&& (m as any).key != \"task\"\r\n\t\t&& (m as any).key != \"workrole\"\r\n\t\t&& (m as any).key != \"conceptscheme\"\r\n/*\t\t&& (m as any).key != \"transfervalue\"*/\r\n\t\t&& (m as any).key != \"progressionmodel\"\r\n\t\t&& (m as any).key != \"competency\");\r\n\tfunction setCurrentTabViaDropDown(option: any) {\r\n\t\tsetCurrentTab(option.key);\r\n\t}\r\n\r\n\t//TODO: Fix the drop-down not reflecting the current tab\r\n\tconsole.log(\"current\", { currentTab: currentTab, options: mainSearchTypeOptions });\r\n\r\n\t//Render the page structure\r\n\treturn (\r\n\t\t\r\n\t\t\t
    \r\n\t\t\t\tCompare\r\n\t\t\t\t\r\n\t\t\t\t\t m.key == currentTab) || filteredSearchTypeOptions[0])}\r\n\t\t\t\t\t\toptions={filteredSearchTypeOptions}\r\n\t\t\t\t\t\tgetOptionLabel={(option: MainSearchOption) => getCompareItemsByType(option.key).length + \" \" + widgetGetPluralLabelForText(option.value) }\r\n\t\t\t\t\t\tonChange={setCurrentTabViaDropDown}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t\t{/*\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t*/}\r\n\t\t\t\t\r\n\t\t\t\t\t enterPrintMode()}>Print\r\n\t\t\t\t\t downloadData()}>Download\r\n\t\t\t\t\t getShareLink()}>Share\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t setCredentialCompareData(credentialCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setOrganizationCompareData(organizationCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setAssessmentCompareData(assessmentCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setLearningOpportunityCompareData(learningOpportunityCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setTransferValueCompareData(transferValueCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setPathwayCompareData(pathwayCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setCompetencyFrameworkCompareData(competencyFrameworkCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setCollectionCompareData(collectionCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setConceptSchemeCompareData(conceptSchemeCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setCompetencyCompareData(competencyCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t setSupportServiceCompareData(supportServiceCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />\r\n\t\t\t\t{/* setCompetencyCompareData(competencyCompareData)} onItemLoad={onItemLoad} removeItem={removeItem} />*/}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{/**/}\r\n\t\t\t\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction CompareTabButton(props: { broadType: string, currentTab: string, label: string, icon: string, source: any[], onClick: Dispatch> }) {\r\n\tvar isHidden = (window as any).Widget?.Config?.HideGlobalFilters?.filter((m: any) => m.toLowerCase().includes(props.broadType.toLowerCase()))[0] != null;\r\n\treturn isHidden ? null : (\r\n\t\t props.onClick(props.broadType)} className={props.currentTab == props.broadType ? \"currentTab\" : \"\"}>\r\n\t\t\t\"\"\r\n\t\t\t{props.label}\r\n\t\t\r\n\t)\r\n}\r\n\r\nfunction CompareTabContent(props: { broadType: string, currentTab: string, properties: CompareDataProperty[], update: (data: CompareDataProperty[]) => void, onItemLoad: () => void, removeItem: (item: any) => void }) {\r\n\tconst [expanded, setExpanded] = useState(false);\r\n\tconst [sourceData, setSourceData] = useState(getCompareItemsByType(props.broadType) as Array);\r\n\r\n\tuseEffect(() => {\r\n\t\t//updateStateOnCompareChange(() => { setSourceData(getCompareItemsByType(props.broadType)); }); //Don't uncomment this, it causes the page to infinite loop itself to death\r\n\t\tsetSourceData(getCompareItemsByType(props.broadType));\r\n\t}, []);\r\n\r\n\tfunction toggleCollapse(property: CompareDataProperty) {\r\n\t\t//Toggle whether this is expanded\r\n\t\tproperty.expanded = !property.expanded;\r\n\t\t//Update it in the state\r\n\t\tprops.update(props.properties);\r\n\t\t//Trick react into re-rendering the component\r\n\t\tsetExpanded(!expanded);\r\n\t}\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{\r\n\t\t\t\t(!sourceData || sourceData.length == 0) &&\r\n\t\t\t\tNothing selected to compare\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{props.properties.map((property, propertyIndex) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{sourceData.map((item, sourceIndex) => (\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t//If it's not loaded yet and this is the first row, use a single table cell with an appropriate rowspan to contain the loader\r\n\t\t\t\t\t\t\t\t\t\tpropertyIndex == 0 &&\r\n\t\t\t\t\t\t\t\t\t\t!item.Meta_IsLoaded &&\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t { setSourceData(getCompareItemsByType(props.broadType)); }} />\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t//Otherwise render as normal\r\n\t\t\t\t\t\t\t\t\t\titem.Meta_IsLoaded &&\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\tproperty.label &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t { toggleCollapse(property); }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{property.label}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{property.value(item)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{propertyIndex == 0 && { removeCompareItem(item); setSourceData(getCompareItemsByType(props.broadType)); }} aria-label=\"Remove this item\">}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nfunction PrintContent(props: { label: string; broadType: string, properties: CompareDataProperty[] }) {\r\n\tvar sourceData = getCompareItemsByType(props.broadType) as Array;\r\n\r\n\treturn (\r\n\t\tsourceData.length > 0 &&\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t{sourceData.map((item, sourceIndex) => (\r\n\t\t\t\t\r\n\t\t\t\t\t{props.properties.map((property, propertyIndex) => (\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{property.label &&
    {property.label}
    }\r\n\t\t\t\t\t\t\t{property.value(item)}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t))}\r\n\t\t\t\t
    \r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nfunction CostProfileData(props: { source: CostProfile }) {\r\n\treturn (\r\n\t\t\r\n\t\t\t
    \r\n\t\t\t\t{props.source.Name && {props.source.Name}:}\r\n\t\t\t\t{props.source.Description &&
    {props.source.Description}
    }\r\n\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\t{props.source.CostItems?.map((item) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
    {item.DirectCostType?.Label}
    \r\n\t\t\t\t\t\t\t
    {(item.AudienceType || []).concat(item.ResidencyType || []).map((type) => { return type.Label }).join(\", \")}
    \r\n\t\t\t\t\t\t\t
    {item.PaymentPattern}
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t{formatPrice(item.Price || 0, props.source.CurrencySymbol || \"\")}\r\n\t\t\t\t\t
    \r\n\t\t\t\t))}\r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction PlaceData(props: { source: Place }) {\r\n\treturn (\r\n\t\t\r\n\t\t\t{(props.source.Latitude != 0 && props.source.Longitude != 0) && {props.source.Name || \"Unnamed Location\"}}\r\n\t\t\t{(props.source.Latitude == 0 || props.source.Longitude == 0) &&
    {props.source.Name || \"Unnamed Location\"}
    }\r\n\t\t\t
    {props.source.StreetAddress || \"Unknown Street Address\"}
    \r\n\t\t\t
    {props.source.AddressLocality || \"Unknown City\"}, {props.source.AddressRegion || \"Unknown State/Province/Region\"} {props.source.PostalCode || \"Unknown Postal Code\"}
    \r\n\t\t\t
    \r\n\t\t\t\t{props.source.TargetContactPoint?.map((contact: ContactPoint) => {\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    {contact.Name || contact.ContactType || \"Unknown Contact Name/Type\"}
    \r\n\t\t\t\t\t\t{contact.Telephone?.length > 0 &&
    {contact.Telephone.map((phone: string) => {
    {phone}
    })}
    }\r\n\t\t\t\t\t\t{contact.SocialMedia?.length > 0 &&
    {contact.SocialMedia.map((social: string) => { {social} })}
    }\r\n\t\t\t\t\t
    \r\n\t\t\t\t})}\r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction ReferenceFrameworkItem(props: { source: ReferenceFramework }) {\r\n\treturn (\r\n\t\t\r\n\t\t\t
    {props.source.Label || \"Unnamed Reference\"}
    \r\n\t\t\t{props.source.URL && } />}\r\n\t\t\t{props.source.TargetNode && } target=\"_blank\" />}\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction ConditionProfileData(props: { source: ConditionProfile }) {\r\n\treturn (\r\n\t\t\r\n\t\t\t{props.source.Name &&
    {props.source.Name}
    }\r\n\t\t\t{props.source.Description &&
    {props.source.Description}
    }\r\n\t\t\t{props.source.Condition &&
      {props.source.Condition.map(m =>
    • {m}
    • )}
    }\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction OutcomeSummaryListItem(props: { source: AggregateDataProfile }) {\r\n\tvar adpQValues = (props.source.JobsObtainedList || []);\r\n\tappendQValue(adpQValues, props.source.LowEarnings, \"Lower End Earnings\", props.source.CurrencySymbol);\r\n\tappendQValue(adpQValues, props.source.MedianEarnings, \"Median Earnings\", props.source.CurrencySymbol);\r\n\tappendQValue(adpQValues, props.source.HighEarnings, \"Higher End Earnings\", props.source.CurrencySymbol);\r\n\tvar dataProfile = ({\r\n\t\tDescription: \"Summary Information\",\r\n\t\tStartDate: props.source.DateEffective,\r\n\t\tEndDate: props.source.ExpirationDate,\r\n\t\tDataAvailable: adpQValues\r\n\t} as any) as DataProfile;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{props.source.Name &&
    {props.source.Name}
    }\r\n\t\t\t{props.source.Description &&
    {props.source.Description}
    }\r\n\t\t\t{props.source.DateEffective && props.source.ExpirationDate &&
    {props.source.DateEffective} - {props.source.ExpirationDate}
    }\r\n\t\t\t{props.source.DateEffective && !props.source.ExpirationDate &&
    Beginning {props.source.DateEffective}
    }\r\n\t\t\t{!props.source.DateEffective && props.source.ExpirationDate &&
    Ending {props.source.ExpirationDate}
    }\r\n\t\t\t{props.source.PostReceiptMonths &&
    Value(s) {props.source.PostReceiptMonths} Months after earning the Credential:
    }\r\n\t\t\t\r\n\t\t\t{props.source.RelevantDataSet &&
    {props.source.RelevantDataSet.map((dsp: DataSetProfile) => (\r\n\t\t\t\t
    \r\n\t\t\t\t\t{dsp.Name &&
    {dsp.Name}
    }\r\n\t\t\t\t\t{dsp.Description &&
    {dsp.Description}
    }\r\n\t\t\t\t\t{dsp.DataSetTimePeriod?.length > 0 &&
    {dsp.DataSetTimePeriod.map((dstf: DataSetTimeFrame) => (\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{dstf.StartDate && dstf.EndDate &&
    {dstf.StartDate} - {dstf.EndDate}
    }\r\n\t\t\t\t\t\t\t{dstf.StartDate && !dstf.EndDate &&
    Beginning {dstf.StartDate}
    }\r\n\t\t\t\t\t\t\t{!dstf.StartDate && dstf.EndDate &&
    Ending {dstf.EndDate}
    }\r\n\t\t\t\t\t\t\t{dstf.DataAttributes?.length > 0 &&
    {dstf.DataAttributes.map((dp: DataProfile) => (\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t{dp.Description &&
    {dp.Description}
    }\r\n\t\t\t\t\t\t\t\t\t{Object.keys(dp).filter(m => Array.isArray((dp as any)[m]) && ((dp as any)[m] as any).length > 0).map((property: string) => (\r\n\t\t\t\t\t\t\t\t\t\t} cssClass=\"quantitativeValueList\" />\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t))}
    }\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t))}
    }\r\n\t\t\t\t
    \r\n\t\t\t))}
    }\r\n\t\t
    \r\n\t)\r\n\r\n\t//Helper function\r\n\tfunction appendQValue(list: Array, value: number, description: string, currencySymbol: string) {\r\n\t\tif (value) {\r\n\t\t\tlist.push({\r\n\t\t\t\tDescription: description,\r\n\t\t\t\tCurrencySymbol: currencySymbol,\r\n\t\t\t\tValue: value\r\n\t\t\t} as QuantitativeValue);\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction QuantitativeValueList(props: { source: QuantitativeValue[], cssClass: string }) {\r\n\treturn props.source?.length > 0 && (\r\n\t\t
    \r\n\t\t\t{props.source.map((qvalue: QuantitativeValue) => (\r\n\t\t\t\t
    \r\n\t\t\t\t\t
    {qvalue.Description || \"Unnamed Value\"}
    \r\n\t\t\t\t\t
    {qvalue.CurrencySymbol}{qvalue.Value ? qvalue.Value : (qvalue.MinValue && qvalue.MaxValue) ? (qvalue.MinValue + \" - \" + qvalue.MaxValue) : qvalue.MinValue ? (\"At least \" + qvalue.MinValue) : qvalue.MaxValue ? (\"Up to \" + qvalue.MaxValue) : qvalue.Percentage ? (qvalue.Percentage + \"%\") : \"Unknown\"}
    \r\n\t\t\t\t
    \r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nfunction LoadCompareItem(props: { source: any, onItemLoad: () => void }) {\r\n\t//Get a matching item so we can ensure it exists, and also manipulate it\r\n\tvar item = { ...props.source };\r\n\r\n\t//Prevent infinite loop crash if an item fails to load\r\n\t//Need to overhaul compare page to negate the need to do this\r\n\t(window as any).CompareAntiCrash = (window as any).CompareAntiCrash || [];\r\n\tvar stringItem = JSON.stringify(item);\r\n\tvar testItem = (window as any).CompareAntiCrash.find((m: any) => m.Item == stringItem);\r\n\tif (testItem) {\r\n\t\ttestItem.Count++;\r\n\t\tif (testItem.Count > 10) {\r\n\t\t\tconsole.log(\"Unknown infinite loop error. Gave up trying to load item:\", item);\r\n\t\t\titem.Meta_IsError = true;\r\n\t\t\titem.Meta_IsLoading = false;\r\n\t\t}\r\n\t}\r\n\telse {\r\n\t\t(window as any).CompareAntiCrash.push({ Item: stringItem, Count: 0 });\r\n\t}\r\n\r\n\t//If loaded or error, return\r\n\tif (item.Meta_IsLoaded || item.Meta_IsError) {\r\n\t\treturn
    Error loading data.
    \r\n\t}\r\n\r\n\t//Fetch the item\r\n\titem.Meta_IsLoading = true;\r\n\taddOrUpdateCompareItem(item);\r\n\tgetResourceByURLWithoutState(apiUrl + \"/compare/\" + props.source.BroadType + \"/\" + props.source.Meta_Id, null, (response: any) => {\r\n\t\tconsole.log(\"Response\", response);\r\n\t\tif (response.Successful) {\r\n\t\t\tresponse.Result.Meta_IsLoaded = true;\r\n\t\t\taddOrUpdateCompareItem(response.Result);\r\n\t\t\tprops.onItemLoad();\r\n\t\t}\r\n\t\telse {\r\n\t\t\titem.Meta_IsError = true;\r\n\t\t\taddOrUpdateCompareItem(item);\r\n\t\t}\r\n\t}, (error: any) => {\r\n\t\titem.Meta_IsError = true;\r\n\t\taddOrUpdateCompareItem(item);\r\n\t\tconsole.log(\"Error getting resource\", { source: props.source, error: error });\r\n\t});\r\n\r\n\t//Loading\r\n\treturn \r\n}\r\n\r\nfunction getRawCompareData() {\r\n\tvar rawCompareData = {} as any;\r\n\trawCompareData.credential = getCompareItemsByType(\"credential\");\r\n\trawCompareData.organization = getCompareItemsByType(\"organization\");\r\n\trawCompareData.assessment = getCompareItemsByType(\"assessment\");\r\n\trawCompareData.learningopportunity = getCompareItemsByType(\"learningopportunity\");\r\n\trawCompareData.transfervalue = getCompareItemsByType(\"transfervalue\");\r\n\trawCompareData.pathway = getCompareItemsByType(\"pathway\");\r\n\trawCompareData.competencyframework = getCompareItemsByType(\"competencyframework\");\r\n\trawCompareData.collection = getCompareItemsByType(\"collection\");\r\n\trawCompareData.conceptscheme = getCompareItemsByType(\"conceptscheme\");\r\n\r\n\tconsole.log(\"Loaded raw compare data\", rawCompareData);\r\n\treturn rawCompareData;\r\n}\r\n\r\n\r\nfunction setRawCompareData(rawCompareData: any, flag: string) {\r\n\tconsole.log(\"Setting raw compare data via \" + flag, rawCompareData);\r\n\twindow.localStorage.setItem(BUCKET_STORAGE, JSON.stringify(rawCompareData));\r\n}\r\n\r\nfunction enterPrintMode() {\r\n\twindow.print();\r\n}\r\n\r\nfunction downloadData() {\r\n\t//Setup the container\r\n\tvar data = getRawCompareData();\r\n\tvar header = [\"Type\", \"CTID\", \"URL\", \"Name\", \"CTDL Type\", \"Description\", \"Audience Types\", \"Audience Levels\", \"Industries\", \"Occupations\", \"Estimated Costs\", \"Estimated Time to Earn/Complete\", \"Financial Assistance Types\", \"Locations\", \"Entry Requirements\", \"Completion Requirements\", \"Delivery Types\", \"Assessment Method Types\", \"Learning Method Types\", \"Required for Credentials\", \"Organization Types\", \"Organization Sectors\", \"Service Types\", \"Outcomes Summary\"];\r\n\tvar csv = [header];\r\n\r\n\t//Read the data\r\n\treadItems(\"Credential\", \"/credential/\", data.credential);\r\n\treadItems(\"Organization\", \"/organization/\", data.organization);\r\n\treadItems(\"Assessment\", \"/assessment/\", data.assessment);\r\n\treadItems(\"Learning Opportunity\", \"/learningopportunity/\", data.learningopportunity);\r\n\treadItems(\"Transfer Value\", \"/transfervalue/\", data.transfervalue);\r\n\treadItems(\"Pathway\", \"/pathway/\", data.pathway);\r\n\treadItems(\"PathwaySet\", \"/pathwayset/\", data.pathwayset);\r\n\treadItems(\"Competency Framework\", \"/competencyframework/\", data.competencyframework);\r\n\treadItems(\"Collection\", \"/collection/\", data.collection);\r\n\treadItems(\"Concept Scheme\", \"/conceptscheme/\", data.conceptscheme);\r\n\r\n\t//Convert to CSV file\r\n\tvar csvText = csv.map((row) => {\r\n\t\tvar rowText = JSON.stringify(row);\r\n\t\treturn rowText.substring(1, rowText.length - 1);\r\n\t}).join(\"\\n\");\r\n\r\n\t//Return the file\r\n\tvar blob = new Blob([csvText], { type: \"text/csv;charset=utf-8\" });\r\n\tvar blobURL = URL.createObjectURL(blob);\r\n\tvar link = document.createElement(\"a\");\r\n\tlink.href = blobURL;\r\n\tlink.download = \"Comparison Data.csv\";\r\n\tlink.target = \"_blank\";\r\n\tdocument.body.appendChild(link);\r\n\tlink.click();\r\n\r\n\tfunction readItems(label: string, urlPart: string, items: any[]) {\r\n\t\t(items || []).filter(m => m).forEach((item: any) => {\r\n\t\t\tvar rowData = [\r\n\t\t\t\tlabel,\r\n\t\t\t\titem.CTID || \"No CTID available for reference entities\",\r\n\t\t\t\tappURL + urlPart + item.Meta_Id,\r\n\t\t\t\titem.Name,\r\n\t\t\t\titem.CTDLTypeLabel,\r\n\t\t\t\titem.Description,\r\n\t\t\t\tflattenLinks(item.AudienceType),\r\n\t\t\t\tflattenLinks(item.AudienceLevelType),\r\n\t\t\t\tflattenLinks(item.IndustryType),\r\n\t\t\t\tflattenLinks(item.OccupationType),\r\n\t\t\t\tflattenCosts(item.EstimatedCost),\r\n\t\t\t\t(item.EstimatedDuration || []).map((duration: any) => { return duration.DurationSummary }).join(\" | \"),\r\n\t\t\t\tflattenLinks((item.FinancialAssistance || [] as Array).flatMap((financial: any) => { return financial.FinancialAssistanceType }).filter((m: any) => m)),\r\n\t\t\t\tflattenPlaces(item.AvailableAt || item.Address),\r\n\t\t\t\tflattenConditionProfiles(item.EntryCondition, true, true, false),\r\n\t\t\t\tflattenConditionProfiles(item.Requires, true, true, false),\r\n\t\t\t\tflattenLinks(item.DeliveryType),\r\n\t\t\t\tflattenLinks(item.AssessmentMethodType),\r\n\t\t\t\tflattenLinks(item.LearningMethodType),\r\n\t\t\t\tflattenConditionProfiles(item.IsRequiredFor, false, false, true),\r\n\t\t\t\tflattenLinks(item.AgentType),\r\n\t\t\t\tflattenLinks(item.AgentSectorType),\r\n\t\t\t\tflattenLinks(item.ServiceType),\r\n\t\t\t\tflattenOutcomes(item.AggregateData, item.ExternalDataSetProfiles)\r\n\t\t\t];\r\n\t\t\trowData.forEach((item: any) => {\r\n\t\t\t\titem = (item || \"\").replace(/\"/g, '\"\"');\r\n\t\t\t\titem = (item.indexOf(\",\") > -1 || item.indexOf(\"\\r\\n\") > -1 || item.indexOf(\"\\n\")) ? '\"' + item + '\"' : item;\r\n\t\t\t});\r\n\t\t\tcsv.push(rowData);\r\n\t\t});\r\n\t}\r\n\r\n\tfunction flattenLinks(links: any[]) {\r\n\t\treturn (links || []).map((link) => { return link.Label }).join(\" | \");\r\n\t}\r\n\r\n\tfunction flattenCosts(costs: any[]) {\r\n\t\treturn (costs || []).map((costProfile: any) => {\r\n\t\t\treturn costProfile.CostItems?.map((costItem: any) => {\r\n\t\t\t\treturn costItem.DirectCostType?.Label + \": \" + formatPrice(costItem.Price || 0, costProfile.CurrencySymbol || \"\")\r\n\t\t\t}).join(\" / \");\r\n\t\t}).join(\" | \");\r\n\t}\r\n\r\n\tfunction flattenPlaces(places: any[]) {\r\n\t\treturn (places || []).map((place: any) => {\r\n\t\t\treturn [place.StreetAddress, place.AddressLocality, place.AddressRegion, place.PostalCode].filter(m => m).join(\", \")\r\n\t\t}).join(\" | \");\r\n\t}\r\n\r\n\tfunction flattenConditionProfiles(conditionProfiles: any[], includeDescription: boolean, includeCondition: boolean, includeTargetCredentials: boolean) {\r\n\t\treturn (conditionProfiles || []).flatMap((conditionProfile: any) => {\r\n\t\t\treturn [\r\n\t\t\t\t(includeDescription && conditionProfile.Description),\r\n\t\t\t\t(includeCondition && conditionProfile.Condition),\r\n\t\t\t\t(\r\n\t\t\t\t\t(includeTargetCredentials && conditionProfile.TargetCredential) &&\r\n\t\t\t\t\t((Array.isArray(conditionProfile.TargetCredential) ?\r\n\t\t\t\t\t\tconditionProfile.TargetCredential :\r\n\t\t\t\t\t\t[conditionProfile.TargetCredential]) as Array)\r\n\t\t\t\t\t.flatMap((item: any) => item.Name || item.Label)\r\n\t\t\t\t)\r\n\t\t\t].flatMap(m => m).filter(m => m).join(\"; \");\r\n\t\t}).join(\" | \");\r\n\t}\r\n\r\n\tfunction flattenOutcomes(aggregateData: any[], externalData: []) {\r\n\t\tvar combined = combineOutcomesData(aggregateData as AggregateDataProfile[], externalData as DataSetProfile[]);\r\n\t\tvar container = [] as Array;\r\n\t\t(combined || []).map((adp: any) => {\r\n\t\t\tadp.Description && container.push(adp.Description);\r\n\t\t\t(adp.RelevantDataSet || []).forEach((dsp: any) => {\r\n\t\t\t\tdsp.Description && container.push(dsp.Description);\r\n\t\t\t\t(dsp.DataSetTimePeriod || []).forEach((dstf: any) => {\r\n\t\t\t\t\t(dstf.DataAttributes || []).forEach((dp: any) => {\r\n\t\t\t\t\t\tObject.keys(dp).filter(m => Array.isArray((dp as any)[m]) && ((dp as any)[m] as any).length > 0).map((property: string) => {\r\n\t\t\t\t\t\t\tdp[property].forEach((qvalue: any) => {\r\n\t\t\t\t\t\t\t\tvar label = qvalue.Description || \"Unnamed Value\";\r\n\t\t\t\t\t\t\t\tvar value = \"\";\r\n\t\t\t\t\t\t\t\tvar currency = qvalue.CurrencySymbol || \"\";\r\n\t\t\t\t\t\t\t\t(qvalue.MinValue && qvalue.MaxValue) && (value += currency + qvalue.MinValue + \" - \" + currency + qvalue.MaxValue);\r\n\t\t\t\t\t\t\t\t(qvalue.MinValue && !qvalue.MaxValue) && (value += \"At least \" + currency + qvalue.MinValue);\r\n\t\t\t\t\t\t\t\t(!qvalue.MinValue && qvalue.MaxValue) && (value += \"Up to \" + currency + qvalue.MaxValue);\r\n\t\t\t\t\t\t\t\t(qvalue.Value && !value) && (value += currency + qvalue.Value);\r\n\t\t\t\t\t\t\t\tqvalue.Percentage && (value += qvalue.Percentage + \"%\");\r\n\t\t\t\t\t\t\t\tif (value) {\r\n\t\t\t\t\t\t\t\t\tcontainer.push(label + \": \" + value);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t})\r\n\t\treturn container.filter(m => m).join(\"; \");\r\n\t}\r\n}\r\n\r\nfunction getShareLink() {\r\n\tvar params = [] as Array;\r\n\t[\"credential\", \"organization\", \"assessment\", \"learningopportunity\", \"transfervalue\", \"pathway\", \"competencyframework\", \"collection\", \"conceptscheme\"].forEach(type => {\r\n\t\tvar items = getCompareItemsByType(type);\r\n\t\tif (items.length > 0) {\r\n\t\t\tparams.push(\"share_\" + type + \"=\" + items.map((item: any) => item.Meta_Id).join(\",\"));\r\n\t\t}\r\n\t});\r\n\tvar link = window.location.href + (window.location.search.indexOf(\"?\") > -1 ? \"&\" : \"?\") + params.join(\"&\");\r\n\tprompt(\"Copy and paste this URL\", link);\r\n\treturn;\r\n\r\n\tfunction getIDs(param: string, items: any[]) {\r\n\t\tvar ids = (items || []).map((item: any) => { return item.Meta_Id }).filter((item: any) => { return item });\r\n\t\treturn ids.length > 0 ? param + \"=\" + ids.join(\",\") : null;\r\n\t}\r\n}\r\n//\r\n\r\nfunction getCompareDataFromShareLink() {\r\n\tvar params = new URLSearchParams(window.location.search);\r\n\t[\"credential\", \"organization\", \"assessment\", \"learningopportunity\", \"transfervalue\", \"pathway\", \"competencyframework\", \"collection\", \"conceptscheme\"].forEach(type => {\r\n\t\tvar key = Array.from(params.keys()).find((key: string) => key.toLowerCase() == \"share_\" + type);\r\n\t\tif (key) {\r\n\t\t\t(params.get(key) || \"\").split(\",\").forEach(id => {\r\n\t\t\t\tvar item = { BroadType: type, Meta_Id: id, CTID: \"temp-\" + getUUID(), Name: \"Loading...\" } as any;\r\n\t\t\t\t//addCompareItem(item); //Don't do this, it causes the page to self-destruct\r\n\r\n\t\t\t\tgetResourceByURLWithoutState(apiUrl + \"/compare/\" + type + \"/\" + id, null, (response: any) => {\r\n\t\t\t\t\tconsole.log(\"Response\", response);\r\n\t\t\t\t\tif (response.Successful) {\r\n\t\t\t\t\t\tresponse.Result.Meta_IsLoaded = true;\r\n\t\t\t\t\t\taddCompareItem(response.Result);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\titem.Meta_IsError = true;\r\n\t\t\t\t\t\taddCompareItem(item);\r\n\t\t\t\t\t}\r\n\t\t\t\t}, (error: any) => {\r\n\t\t\t\t\titem.Meta_IsError = true;\r\n\t\t\t\t\taddCompareItem(item);\r\n\t\t\t\t\tconsole.log(\"Error getting resource from share link\", { source: item, error: error });\r\n\t\t\t\t});\r\n\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n}\r\n//\r\n\r\n//Comparison Components\r\nfunction HtmlLink(props: { source: Partial, cssClass?: string }) {\r\n\treturn (props.source && {props.source.Label}) || NoItemData()\r\n}\r\n\r\nfunction HtmlDiv(props: { source: string, cssClass?: string }) {\r\n\treturn (props.source &&
    {props.source}
    ) || null\r\n}\r\n\r\nfunction LinksAsPlainList(props: { source: Link[], cssClass?: string }) {\r\n\treturn (props.source?.length > 0 &&
      {props.source.map((item, index) =>
    • {item.Label}
    • )}
    ) || NoItemData()\r\n}\r\n\r\nfunction OutlinesAsLinkList(props: { source: Outline[], cssClass?: string, showType?: boolean }) {\r\n\treturn (props.source?.length > 0 &&
      {props.source.map((item, index) =>
    • {item.Label} {props.showType && \"(\" + item.Tags?.[0]?.Label + \")\"}
    • )}
    ) || NoItemData()\r\n}\r\n\r\nfunction CostProfileList(props: { source: CostProfile[], cssClass?: string }) {\r\n\treturn (props.source?.length > 0 &&
    {props.source.map((profile, index) => )}
    ) || NoItemData()\r\n}\r\n\r\nfunction DurationProfileList(props: { source: DurationProfile[], cssClass?: string }) {\r\n\treturn (props.source?.length > 0 &&
    {props.source.map((profile, index) => {profile.DurationSummary})}
    ) || NoItemData()\r\n}\r\n\r\nfunction PlaceList(props: { source: Place[], cssClass?: string }) {\r\n\treturn (props.source?.length > 0 &&
    {props.source.map((profile, index) => )}
    ) || NoItemData()\r\n}\r\n\r\nfunction ConditionProfileList(props: { source: ConditionProfile[], cssClass?: string }) {\r\n\treturn (props.source?.length > 0 &&
    {props.source.map((profile, index) => )}
    ) || NoItemData()\r\n}\r\n\r\nfunction ReferenceFrameworkList(props: { source: ReferenceFramework[], cssClass?: string }) {\r\n\tif (!props.source || props.source.length == 0) {\r\n\t\treturn NoItemData();\r\n\t}\r\n\r\n\tvar groups = [] as Array;\r\n\tprops.source.forEach((item: ReferenceFramework) => {\r\n\t\tvar match = groups.find((m: any) => m.Framework == item.Framework || m.FrameworkName == item.FrameworkName);\r\n\t\tif (!match) {\r\n\t\t\tmatch = { Framework: item.Framework, FrameworkName: item.FrameworkName || \"Unnamed Framework\", Items: [item] };\r\n\t\t\tgroups.push(match);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tmatch.Items.push(item);\r\n\t\t}\r\n\t});\r\n\r\n\treturn (\r\n\t\t
    \r\n\t\t\t{groups.map((group, index) => (\r\n\t\t\t\t
    \r\n\t\t\t\t\t
    {group.Framework ? {group.FrameworkName} :
    {group.FrameworkName}
    }
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{group.Items.map((item: ReferenceFramework, index: number) => )}\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t))}\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction OutcomeSummaryList(props: { aggregateData: AggregateDataProfile[], externalData: DataSetProfile[], cssClass?: string }) {\r\n\tif ((props.aggregateData || []).length == 0 && (props.externalData || []).length == 0) {\r\n\t\treturn NoItemData();\r\n\t}\r\n\r\n\tvar combined = combineOutcomesData(props.aggregateData, props.externalData);\r\n\r\n\treturn (combined.length > 0 &&
    {combined.map((profile, index) => )}
    ) || NoItemData();\r\n}\r\n\r\nfunction combineOutcomesData( aggregateData: AggregateDataProfile[], externalData: DataSetProfile[]) : Array {\r\n\tvar combined = (aggregateData || []) as Array;\r\n\tvar fake = { RelevantDataSet: [] } as any;\r\n\texternalData?.forEach((dsp: DataSetProfile) => {\r\n\t\tif (!combined.find(m => m.RelevantDataSet?.find((n: DataSetProfile) => n.CTID))) {\r\n\t\t\tfake.RelevantDataSet.push(dsp);\r\n\t\t}\r\n\t});\r\n\tif (fake.RelevantDataSet.length > 0) {\r\n\t\tcombined.push(fake);\r\n\t}\r\n\r\n\treturn combined;\r\n}\r\n\r\nfunction NoItemData() {\r\n\treturn No Data\r\n}\r\n\r\n//Styled Components\r\nconst Wrapper = styled.div`\r\n\tmin-height: 50vh;\r\n`;\r\n\r\nconst Header = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: stretch;\r\n\tcolor: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.aquaDark)};\r\n background-color: ${(props) => widgetGetColor(\"SiteHeader\", false, props.theme.color.blueDark)};\r\n\r\n\t@media(max-width: 1000px) {\r\n\t\tflex-wrap: wrap;\r\n\t}\r\n\r\n\t@media print {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst Body = styled.div`\r\n\t& ul {\r\n\t\tmargin: 0;\r\n\t}\r\n`;\r\n\r\nconst Title = styled.div`\r\n\tfont-weight: bold;\r\n\tfont-size: 24px;\r\n\tpadding: 20px;\r\n\r\n\t@media(max-width: 1000px) {\r\n\t\torder: 1;\r\n\t}\r\n`;\r\n\r\nconst CompareTabButtons = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: stretch;\r\n\r\n\t@media(max-width: 1000px) {\r\n\t\torder: 3;\r\n\t}\r\n\r\n\t@media(max-width: 675px){\r\n\t\tdisplay: block;\r\n\t\tmargin: 0;\r\n\t\twidth: 100%;\r\n\t}\r\n`;\r\n\r\nconst StyledCompareTabButton = styled.button`\r\n\tflex: 1 1 10%;\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tpadding: 10px 20px;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\tcolor: inherit;\r\n\tborder-bottom: 2px solid transparent;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: rgba(255, 255, 255, 0.2);\r\n\t}\r\n\r\n\t&.currentTab {\r\n\t\topacity: 1;\r\n\t\tfont-weight: bold;\r\n\t\tborder-color: ${(props) => widgetGetColor(\"SiteHeader\", true, props.theme.color.aquaDark)};\r\n\t}\r\n\r\n\t& img {\r\n\t\tdisplay: block;\r\n\t\twidth: 30px;\r\n\t\tmargin: 0 auto 5px auto;\r\n\t}\r\n\r\n\t& > span {\r\n\t\tmargin: 0 auto;\r\n\t\tfont-size: 14px;\r\n\t\tline-height: 1.3em;\r\n\t}\r\n\r\n\t@media(max-width: 675px){\r\n\t\twidth: 100%;\r\n\t\ttext-align: left;\r\n\t\tborder-bottom: none;\r\n\t\tborder-left: 5px solid transparent;\r\n\t}\r\n`;\r\n\r\nconst CompareOptionButtons = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: stretch;\r\n\tpadding: 5px;\r\n\tmargin-left: auto;\r\n\r\n\t@media(max-width: 1000px) {\r\n\t\torder: 2;\r\n\t}\r\n`;\r\n\r\nconst CompareOptionButton = styled.button`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tpadding: 10px;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\tcolor: #FFF;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: rgba(255, 255, 255, 0.2);\r\n\t}\r\n`;\r\n\r\nconst CompareTableWrapper = styled.div`\r\n\toverflow-x: auto;\r\n\r\n\t&:not(.currentTab) {\r\n\t\tdisplay: none;\r\n\t}\r\n\r\n\t@media print {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst CompareTable = styled.table`\r\n\tborder-collapse: collapse;\r\n\r\n\t& tr {\r\n\t\t\r\n\t}\r\n\r\n\t& td {\r\n\t\tmin-width: 400px;\r\n\t\tpadding: 0;\r\n\t\tvertical-align: top;\r\n\t\tborder: 1px solid ${(props) => widgetGetColor(\"SiteHeader\", false, props.theme.color.aquaDark)};\r\n\t\tborder-width: 1px 3px;\r\n\t\twidth: 10%;\r\n\t}\r\n\r\n\t& td.loading {\r\n\t\ttext-align: center;\r\n\t\tpadding: 20px;\r\n\t}\r\n\r\n\t& .resourceName {\r\n\t\ttext-align: center;\r\n\t\tfont-weight: bold;\r\n\t}\r\n`;\r\n\r\nconst CollapseButton = styled.button`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\twidth: 100%;\r\n\tpadding: 5px 10px;\r\n\tfont-weight: bold;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\r\n\t& svg {\r\n\t\tmargin-left: auto;\r\n\t}\r\n\r\n\t&:hover, &:focus {\r\n\t\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"inherit\")};\r\n\t\tbackground-color: ${(props) => widgetGetColor(\"SearchResultButton\", false, props.theme.color.aquaLight)};\r\n\t}\r\n`;\r\n\r\nconst CollapseContent = styled.div`\r\n\tpadding: 5px 10px;\r\n\toverflow: auto;\r\n\tmax-height: 30vh;\r\n\tfont-size: 85%;\r\n\r\n\t&:empty {\r\n\t\tdisplay: none;\r\n\t}\r\n\r\n\t&:not(.expanded) {\r\n\t\tdisplay: none;\r\n\t}\r\n\r\n\t&.withCloseButton {\r\n\t\tdisplay: flex;\r\n\t\tfont-size: 16px;\r\n\t}\r\n`;\r\n\r\nconst CostProfileWrapper = styled.div`\r\n\tpadding: 5px 0;\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid #CCC;\r\n\t}\r\n`;\r\n\r\nconst CostProfileName = styled.div`\r\n\tfont-weight: bold;\r\n\tmargin-right: 10px;\r\n`;\r\n\r\nconst CostProfileItem = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: baseline;\r\n\tpadding-left: 10px;\r\n\tborder-top: 1px dashed #CCC;\r\n`;\r\n\r\nconst CostProfileItemDetails = styled.div`\r\n\tmargin-right: 10px;\r\n`;\r\n\r\nconst CostProfileItemPrice = styled.div`\r\n\tmargin-left: auto;\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst DurationProfileWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst PlaceWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst OutcomeSummaryItemWrapper = styled.div`\r\n\tmargin-bottom: 10px;\r\n\t& .aggregateDataProfileName { font-weight: bold; }\r\n\t& .dateRange { font-weight: bold; } \r\n\t& .dataSetProfileList .dspName { font-weight: bold; }\r\n\t& .dataSetProfileList .dataSetTimeFrame { margin-bottom: 10px; }\r\n\t& .quantitativeValue { display: flex; align-items: baseline; gap: 10px; }\r\n\t& .quantitativeValueList:not(:first-child) { border-top: 1px dashed #CCC; }\r\n\t& .quantitativeValue:not(:first-child) { border-top: 1px dashed #CCC; }\r\n\t& .quantitativeValueValue { margin-left: auto; min-width: 50px; text-align: right; }\r\n`;\r\n\r\nconst ReferenceFrameworkWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: baseline;\r\n\tgap: 5px;\r\n\tpadding: 0 10px;\r\n\r\n`;\r\n\r\nconst ConditionProfileWrapper = styled.div`\r\n\tmargin-bottom: 10px;\r\n\r\n\t& .conditionProfileName {\r\n\t\tfont-weight: bold;\r\n\t}\r\n`;\r\n\r\nconst NoCompareData = styled.div`\r\n\tpadding: 50px;\r\n\ttext-align: center;\r\n\tfont-weight: bold;\r\n\tfont-size: 24px;\r\n`;\r\n\r\nconst NoData = styled.div`\r\n\ttext-align: center;\r\n\tfont-style: italic;\r\n\tmargin-bottom: 10px;\r\n`;\r\n\r\nconst PrintList = styled.div`\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid #AAA;\r\n\t}\r\n\t\r\n\t@media not print {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst PrintListItem = styled.div`\r\n\tfont-size: 85%;\r\n\tpadding: 25px 0;\r\n\r\n\t& .resourceName {\r\n\t\tfont-size: 16px;\r\n\t\tfont-weight: bold;\r\n\t}\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid #CCC;\r\n\t}\r\n\r\n\t& div {\r\n\t\tpage-break-inside: avoid;\r\n\t}\r\n`;\r\n\r\nconst PrintHeader = styled.div`\r\n\tfont-size: 18px;\r\n\tfont-weight: bold;\r\n\tpadding: 5px 0;\r\n`;\r\n\r\nconst RemoveItemButton = styled.button`\r\n\tflex: 0 0 30px;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\tmargin-left: auto;\r\n\tfont-size: 18px;\r\n\theight: 30px;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: ${(props) => props.theme.color.aquaLight};\r\n\t}\r\n`;\r\n\r\nconst DropdownWrapper = styled.div`\r\n\twidth: 300px;\r\n\tmargin: 18px 0;\r\n`;","export default __webpack_public_path__ + \"static/media/icon-competencies-white-green-01.5f84e4a0.svg\";","export default __webpack_public_path__ + \"static/media/icon-connections-green-blue-01.0f9f31ac.svg\";","export default __webpack_public_path__ + \"static/media/icon-subjects-and-keywords-blue-green-01.8d80084a.svg\";","import React from 'react';\r\nimport { MainItemBroadType } from '../../types/internal';\r\nimport { isFilled } from '../../validation';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport subjectIcon from '../../assets/images/icons/icon-subjects-and-keywords-blue-green-01.svg';\r\nimport { Label } from './styles';\r\nimport SearchPills, { ReferenceFrameworkPills } from '../SearchPills';\r\nimport HasAnyFilled from '../HasAnyFilled';\r\nimport { detailSectionProperties } from '../../utils';\r\n\r\ninterface Props {\r\n\titem: MainItemBroadType;\r\n\tpageSectionDescription?: string;\r\n}\r\n\r\nexport default function SubjectsAndKeywordsPageSection(props: Props) {\r\n\r\n\tvar looseItem = props.item as any;\r\n\r\n return (\r\n \r\n\t\t\t\r\n\t\t\t\t{isFilled(looseItem.Subject) && (\r\n \r\n \r\n\t\t\t\t\t\t\r\n \r\n )}\r\n\t\t\t\t{isFilled(looseItem.InstructionalProgramType) && (\r\n \r\n \r\n\t\t\t\t\t\t\r\n \r\n )}\r\n\t\t\t\t{isFilled(looseItem.Keyword) && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\r\n\t\t\t\t{/* CTDL-ASN Stuff */}\r\n\t\t\t\t{isFilled(looseItem.LocalSubject) && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t{isFilled(looseItem.ConceptTerm) && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t{isFilled(looseItem.ConceptKeyword) && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n \r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport { MainItemBroadType } from '../../types/internal';\r\nimport {\r\n\tAssessment,\r\n\tCredential,\r\n\tLearningOpportunity,\r\n} from '../../types/external';\r\nimport { isFilled } from '../../validation';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport SearchPills, { ReferenceFrameworkPills } from '../SearchPills';\r\nimport { Label } from './styles';\r\nimport occupationIcon from '../../assets/images/icons/icon-occupations-and-industries-blue-green-01.svg';\r\nimport HasAnyFilled from '../HasAnyFilled';\r\nimport { detailSectionProperties } from '../../utils';\r\n\r\ninterface Props {\r\n\titem: MainItemBroadType;\r\n\titemTypeLabel?: string;\r\n\tpageSectionDescription?: string;\r\n}\r\n\r\nexport default function OccupationsAndIndustriesSection(props: Props) {\r\n\r\n\tvar looseItem = props.item as any;\r\n\r\n return (\r\n \r\n \r\n\t\t\t\t{isFilled(looseItem.OccupationType) && (\r\n \r\n \r\n\t\t\t\t\t\t\r\n \r\n )}\r\n\t\t\t\t{isFilled(looseItem.IndustryType) && (\r\n \r\n \r\n\t\t\t\t\t\t\r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n","import React, { ReactElement, ReactNode } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { WorkforceDemand as WorkforceDemandType, Outline, WorkforceDemand, Link } from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionLabel, SectionContent, SectionContentItem } from './Shared';\r\nimport OutlineList from './Outline';\r\nimport JurisdictionProfileList from './JurisdictionProfile';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { PlainTextLink, PlainTextLinkListFromURLs } from '../DetailPage/LinkObject';\r\nimport DateRange from './DateRange';\r\n\r\nexport function WorkforceDemandAction(props: { item: WorkforceDemandType }) {\r\n\treturn props.item && (\r\n\t\t\r\n\t\t\t{props.item.Name || \"Workforce Demand\"}\r\n\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{props.item.Description &&
    {props.item.Description}
    }\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    CTID: {props.item.CTID}
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t
    \r\n\t) || null;\r\n}","import React, { ReactNode, useRef, useState, useEffect } from 'react';\r\nimport styled, { DefaultTheme, StyledComponent } from 'styled-components/macro';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faTimes } from '@fortawesome/free-solid-svg-icons';\r\nimport { Button } from '../common';\r\nimport { englishOrNull } from '../GetResourceByURI';\r\nimport { Wrapper, StyledModal, Close, Heading, HeadingText, SubHeading, Body } from './styles';\r\nimport { getResourceByURLWithoutState, getAJAXCacheV2 } from '../GetResourceByURI';\r\nimport ActivityIndicator from '../ActivityIndicator';\r\n\r\nexport default function AJAXModal(props: { urls: Array, buttonLabel: string, resourceTitle: string, SuccessRenderMethod: (data: any, index: number) => JSX.Element, ErrorRenderMethod: (error: any, index: number) => JSX.Element }) {\r\n\tconst [isOpen, setIsOpen] = useState(false);\r\n\tconst [loaders, setLoaders] = useState([] as Array);\r\n\tvar scrollTimer = null as any;\r\n\tvar urls = (props.urls || [] as Array);\r\n\tif (!urls.map) {\r\n\t\tdebugger;\r\n\t}\r\n\r\n\tfunction refreshLoaders() {\r\n\t\tsetLoaders(urls.map(url => {\r\n\t\t\tvar cached = getAJAXCacheV2().find((cached: any) => cached.URL == url);\r\n\t\t\treturn {\r\n\t\t\t\tURL: url,\r\n\t\t\t\tSuccess: cached?.Response,\r\n\t\t\t\tError: cached?.Error\r\n\t\t\t}\r\n\t\t}));\r\n\t}\r\n\r\n\tfunction loadItems(threshold: number) {\r\n\t\tArray.from(document.getElementsByClassName(\"modalWrapperItemWrapper\"))\r\n\t\t\t.filter((item: any) => item && item.dataset && item.dataset.status == \"waiting\" && item.offsetTop <= threshold + 50)\r\n\t\t\t.forEach((element: any) => {\r\n\t\t\t\tgetResourceByURLWithoutState(element.dataset.url, null, refreshLoaders, refreshLoaders);\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tfunction handleScroll(e: any) {\r\n\t\tclearTimeout(scrollTimer);\r\n\t\tscrollTimer = setTimeout(() => {\r\n\t\t\tloadItems(e.target.scrollTop + e.target.scrollHeight);\r\n\t\t}, 250);\r\n\t}\r\n\r\n\tuseEffect(() => {\r\n\t\trefreshLoaders();\r\n\t\tloadItems(document.getElementsByClassName(\"modalWrapperBody\")[0]?.clientHeight || 250);\r\n\t}, [isOpen]);\r\n\r\n\treturn urls.length > 0 ? (\r\n\t\t\r\n\t\t\t setIsOpen(false)}>Close modal window\r\n\t\t\t\r\n\t\t\t{isOpen && (\r\n\t\t\t\t setIsOpen(false)}>\r\n\t\t\t\t\t) => { e.stopPropagation(); }}>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.resourceTitle}\r\n\t\t\t\t\t\t\t setIsOpen(false)} aria-label={\"Close modal window for '\" + props.resourceTitle + \"'\"}>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.buttonLabel}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{loaders.map((loader: any, index: number) => (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{loader.Success && }\r\n\t\t\t\t\t\t\t\t\t{loader.Error && }\r\n\t\t\t\t\t\t\t\t\t{!loader.Success && !loader.Error && }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t setIsOpen(false)}>Close modal window\r\n\t\t\r\n\t) : null;\r\n}\r\n\r\nconst ModalWrapper = styled.div`\r\n\tmargin-bottom: 10px;\r\n`;\r\n\r\nconst RelativeBody = styled(Body)`\r\n\tposition: relative;\r\n`;\r\n\r\nconst ItemWrapper = styled.div`\r\n\tpadding: 5px 0;\r\n\t&:not(:first-child) {\r\n\t\tborder-top: 1px solid #CCC;\r\n\t}\r\n`;\r\n\r\nconst LoadingWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst InvisibleButton = styled.button`\r\n\topacity: 0;\r\n\theight: 0;\r\n\toverflow: hidden;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\twidth: 0;\r\n\tborder: none;\r\n`;","import React, { ReactNode, useEffect, useState } from 'react';\r\nimport { renderToString } from 'react-dom/server';\r\nimport styled from 'styled-components/macro';\r\nimport { apiUrl, appBaseName, appURL, registryURL } from '../../shared/globals';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { CompetencyFramework as CompetencyFrameworkType, Competency as CompetencyType, Outline, Link, WorkforceDemand, AJAXSettings, IdentifierValue } from '../../types/external';\r\nimport { Concept } from '../ConceptSchemePage';\r\nimport competenciesbannerIcon from '../../assets/images/icons/icon-competencies-white-green-01.svg';\r\nimport competenciesIcon from '../../assets/images/icons/icon-competencies-blue-green-01.svg';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport {\r\n\tWrapper,\r\n\tFullWidthWrapper,\r\n\tInnerWrapper,\r\n\tDescription,\r\n\tLabel,\r\n Section\r\n} from '../../components/DetailPage/styles';\r\nimport { VStack } from '../../components/Stack';\r\nimport PageSection from '../../components/PageSection';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport { getResourceByURI, englishOrNull, createKeywordSearchLink, getAndRenderByURL, getResourceByURLWithoutState, createReferenceFrameworkFromCredentialAlignmentObject } from '../../components/GetResourceByURI';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject, { PlainTextLink, PlainTextLinkList, PlainTextLinkListFromURLs } from '../../components/DetailPage/LinkObject';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { WorkforceDemandAction } from '../../components/DetailPage/WorkforceDemandAction';\r\nimport AJAXModal from '../../components/Modal/AJAXModal';\r\nimport AJAXResourceList, { appendAJAXCacheV3ResourceRaw, createElement, getEnglish, renderText, renderLink, renderImage, renderElement, getResourceViaResourceCacheV3 } from '../../components/AJAXResourceList';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport { CompetencyStyleBlock, renderCompetencyFromRDF } from '../../components/DetailPage/Competency';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\n\r\ninterface Props {\r\n\tid: string;\r\n}\r\n\r\nexport default function CompetencyPage(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [dataIsLoading, setDataIsLoading] = useState(true);\r\n\tconst [hasError, setHasError] = useState(false);\r\n\tconst [competency, setCompetency] = useState({} as CompetencyType);\r\n\tconst [localAJAXCache, setLocalAJAXCache] = useState([] as Array); //Used to trick react into re-rendering the data\r\n\tconst [partOfFramework, setPartOfFramework] = useState({} as Link);\r\n\tconst [memberOfCollections, setMemberOfCollections] = useState([] as Array);\r\n\tconst [substantiatingCompetencyFrameworks, setSubstantiatingCompetencyFrameworks] = useState([] as Array);\r\n\tconst [substantiatingCredentials, setSubstantiatingCredentials] = useState([] as Array);\r\n\tconst [substantiatingOrganizations, setSubstantiatingOrganizations] = useState([] as Array);\r\n\tconst [substantiatingOccupations, setSubstantiatingOccupations] = useState([] as Array);\r\n\tconst [substantiatingJobs, setSubstantiatingJobs] = useState([] as Array);\r\n\tconst [substantiatingWorkRoles, setSubstantiatingWorkRoles] = useState([] as Array);\r\n\tconst [substantiatingTasks, setSubstantiatingTasks] = useState([] as Array);\r\n\tconst [isChildOf, setIsChildOf] = useState([] as Array);\r\n\tconst [derivedFrom, setDerivedFrom] = useState([] as Array);\r\n\tconst [complexityLevel, setComplexityLevel] = useState([] as Array);\r\n\tconst [educationLevelType, setEducationLevelType] = useState([] as Array);\r\n\tconst [environmentalHazardType, setEnvironmentalHazardType] = useState([] as Array);\r\n\tconst [performanceLevelType, setPerformanceLevelType] = useState([] as Array);\r\n\tconst [physicalCapabilityType, setPhysicalCapabilityType] = useState([] as Array);\r\n\tconst [sensoryCapabilityType, setSensoryCapabilityType] = useState([] as Array);\r\n\tconst [hasProgressionLevel, setHasProgressionLevel] = useState([] as Array);\r\n\tconst [relatedItemsMap, setRelatedItemsMap] = useState({} as any);\r\n\tconst [relatedWorkRoles, setRelatedWorkRoles] = useState({} as AJAXSettings);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetResourceByURI(`${apiUrl}/dsp_competency/${id}?includeRelatedResources=false&perBranchLimit=-1&includeMetadata=true`, setLocalAJAXCache, null,\r\n\t\t//getResourceByURI(`${apiUrl}/detail/descriptionsetbyctid/${id}?includeRelatedResources=false&perBranchLimit=-1&includeMetadata=true`, setLocalAJAXCache, null,\r\n\t\t\t(loaded: any) => {\r\n\t\t\t\tsetDataIsLoading(false);\r\n\t\t\t\tsetCompetency(convertDataToCompetency(loaded?.Result?.Resource || { \"ceasn:competencyLabel\": \"Missing Competency\", \"ceasn:description\": \"Unable to find data for identifier: \" + id }, loaded?.Result?.Metadata));\r\n\t\t\t\trenderJSONLDMetaTags(loaded?.Result?.Resource, \"Competency\");\r\n\t\t\t\tsetRelatedItemsMap(loaded?.Result?.RelatedItemsMap || []);\r\n\t\t\t\tconsole.log(\"Competency\", competency);\r\n\t\t\t\tconsole.log(\"Related Items Map\", relatedItemsMap);\r\n\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:isPartOf\", \"Competency Framework\", \"competencyframework\", \"ceasn:name\", null, setPartOfFramework, true, \"?targetCTID=\" + competency.CTID);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceterms:isMemberOf\", \"Collection\", \"collection\", \"ceterms:name\", memberOfCollections, setMemberOfCollections, true, \"?targetCTID=\" + competency.CTID);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:substantiatingCompetencyFramework\", \"Competency Framework\", \"competencyframework\", \"ceasn:name\", substantiatingCompetencyFrameworks, setSubstantiatingCompetencyFrameworks, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:substantiatingCredential\", \"Credential\", \"credential\", \"ceterms:name\", substantiatingCredentials, setSubstantiatingCredentials, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:substantiatingOrganization\", \"Organization\", \"organization\", \"ceterms:name\", substantiatingOrganizations, setSubstantiatingOrganizations, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:substantiatingOccupation\", \"Occupation\", \"occupation\", \"ceterms:name\", substantiatingOccupations, setSubstantiatingOccupations, false);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:substantiatingJob\", \"Job\", \"job\", \"ceterms:name\", substantiatingJobs, setSubstantiatingJobs, false);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:substantiatingWorkrole\", \"Work Role\", \"workrole\", \"ceterms:name\", substantiatingWorkRoles, setSubstantiatingWorkRoles, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:substantiatingTask\", \"Task\", \"task\", \"ceterms:name\", substantiatingTasks, setSubstantiatingTasks, false);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:isChildOf\", \"Competency\", \"competency\", \"ceasn:competencyText\", isChildOf, setIsChildOf, true);\r\n\t\t\t\t//getLinks(competency.Meta_JSON, \"ceasn:hasChild\", \"Competency\", \"competency\", \"ceasn:competencyText\", hasChild, setHasChild, true); //Loads too much, do this in a modal instead\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:derivedFrom\", \"Competency\", \"competency\", \"ceasn:competencyText\", derivedFrom, setDerivedFrom, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:complexityLevel\", \"Concept\", \"concept\", \"skos:prefLabel\", complexityLevel, setComplexityLevel, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:educationLevelType\", \"Concept\", \"concept\", \"skos:prefLabel\", educationLevelType, setEducationLevelType, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceterms:environmentalHazardType\", \"Concept\", \"concept\", \"skos:prefLabel\", environmentalHazardType, setEnvironmentalHazardType, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceterms:performanceLevelType\", \"Concept\", \"concept\", \"skos:prefLabel\", performanceLevelType, setPerformanceLevelType, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceterms:physicalCapabilityType\", \"Concept\", \"concept\", \"skos:prefLabel\", physicalCapabilityType, setPhysicalCapabilityType, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceterms:sensoryCapabilityType\", \"Concept\", \"concept\", \"skos:prefLabel\", sensoryCapabilityType, setSensoryCapabilityType, true);\r\n\t\t\t\tgetLinks(competency.Meta_JSON, \"ceasn:hasProgressionLevel\", \"Concept\", \"concept\", \"skos:prefLabel\", hasProgressionLevel, setHasProgressionLevel, true);\r\n\r\n\t\t\t\t(Array.from(competency.Meta_JSON?.[\"ceasn:conceptTerm\"] || [])).forEach((uri: any) => { //Array.from is only used here because TypeScript will not get out of my way without it\r\n\t\t\t\t\tgetResourceByURLWithoutState(uri, null, (success: any) => {\r\n\t\t\t\t\t\tcompetency.ConceptTerm.push(createKeywordSearchLink(\"competencyframework\", englishOrNull(success[\"skos:prefLabel\"])) as Link);\r\n\t\t\t\t\t\tsetLocalAJAXCache(localAJAXCache);\r\n\t\t\t\t\t\tsetCompetency({ ...competency });\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\tsetLocalAJAXCache(localAJAXCache);\r\n\t\t\t},\r\n\t\t\t(error: any) => {\r\n\t\t\t\tsetHasError(true);\r\n\t\t\t\tconsole.log(\"Error loading data: \", error);\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\t\r\n\t}, [id, localAJAXCache])\r\n\r\n\tfunction convertDataToCompetency(resource: any, metadata: any): CompetencyType {\r\n\t\tconsole.log(\"Resource\", resource);\r\n\t\treturn {\r\n\t\t\tBroadType: \"Competency\",\r\n\t\t\tCTDLType: \"ceasn:Competency\",\r\n\t\t\tCTDLTypeLabel: \"Competency\",\r\n\t\t\tMeta_Id: id,\r\n\t\t\tMeta_Language: resource[\"ceasn:inLanguage\"]?.[0] || \"en\",\r\n\t\t\tMeta_LastUpdatedHeader: metadata?.DateModified || resource[\"ceasn:dateModified\"],\r\n\t\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\t\tCompetencyLabel: englishOrNull(resource[\"ceasn:competencyLabel\"]),\r\n\t\t\tName: englishOrNull(resource[\"ceasn:competencyLabel\"]) || \"Competency\",\r\n\t\t\tCompetencyText: englishOrNull(resource[\"ceasn:competencyText\"]),\r\n\t\t\tCompetencyCategory: englishOrNull(resource[\"ceasn:competencyCategory\"]),\r\n\t\t\tDateCreated: resource[\"ceasn:dateCreated\"],\r\n\t\t\tDateModified: resource[\"ceasn:dateModified\"],\r\n\t\t\tConceptKeyword: englishOrNull(resource[\"ceasn:conceptKeyword\"])?.map((m: string) => { return createKeywordSearchLink(\"competencyframework\", m) }),\r\n\t\t\tConceptTerm: [] as Array,\r\n\t\t\tLocalSubject: (Array.isArray(englishOrNull(resource[\"ceasn:localSubject\"])) ? englishOrNull(resource[\"ceasn:localSubject\"]) : [englishOrNull(resource[\"ceasn:localSubject\"])]).filter((m: any) => m)?.map((m: string) => { return createKeywordSearchLink(\"competencyframework\", englishOrNull(m)) }), //LocalSubject is supposed to be multiple, but there was old data for the SNHU framework on sandbox, so do this for now\r\n\t\t\tComment: englishOrNull(resource[\"ceasn:comment\"]),\r\n\t\t\tInstructionalProgramType: resource[\"ceterms:instructionalProgramType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tIndustryType: resource[\"ceterms:industryType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tOccupationType: resource[\"ceterms:occupationType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tListID: resource[\"ceasn:listID\"],\r\n\t\t\tLicense: resource[\"ceasn:license\"],\r\n\t\t\tIdentifier: resource[\"ceasn:identifier\"],\r\n\t\t\tVersionIdentifier: createIdentifier(resource[\"ceterms:versionIdentifier\"]),\r\n\t\t\tCodedNotation: resource[\"ceasn:codedNotation\"],\r\n\t\t\tInLanguage: resource[\"ceasn:inLanguage\"],\r\n\t\t\tHasChild: resource[\"ceasn:hasChild\"],\r\n\t\t\tIsChildOf: resource[\"ceasn:isChildOf\"],\r\n\t\t\tShouldIndex: resource[\"ceasn:shouldIndex\"],\r\n\t\t\tWeight: resource[\"ceasn:weight\"],\r\n\t\t\tRegistryData: { CTID: resource[\"ceterms:ctid\"], Resource: { URL: resource[\"@id\"], Label: \"View Resource\" }, Envelope: { URL: resource[\"@id\"]?.replace(\"/resources/\", \"/envelopes/\"), Label: \"View Envelope\" } },\r\n\t\t\tCreator: resource[\"ceasn:creator\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) }),\r\n\t\t\tOwnedByLabel: resource[\"ceasn:creator\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) })?.map((m: any) => { return { Label: m.Label, URL: m.URL } as Link; })[0],\r\n\t\t\tMeta_JSON: resource\r\n\t\t} as CompetencyType;\r\n\t};\r\n\r\n\tfunction getLinks(source: any, property: string, typeLabel: string, searchType: string, targetNameProperty: string, currentValue: any, setMethod: any, convertToFinderURL: boolean, appendText?: string) {\r\n\t\tsource = source || {};\r\n\t\tvar isArrayValue = Array.isArray(source[property]);\r\n\t\tvar value = (isArrayValue ? source[property] : [source[property]]).filter((m: any) => m);\r\n\t\tvalue.forEach((url: string) => {\r\n\t\t\tgetResourceByURLWithoutState(url, \r\n\t\t\t\tnull,\r\n\t\t\t\t(response: any) => {\r\n\t\t\t\t\tappendLink(englishOrNull(response[targetNameProperty]) || \"Error loading \" + typeLabel + \" Name\", url, response[\"ceterms:ctid\"], convertToFinderURL, appendText);\r\n\t\t\t\t},\r\n\t\t\t\t(error: any) => {\r\n\t\t\t\t\tappendLink(\"Error loading \" + typeLabel + \" Data: \" + error, url, \"\", convertToFinderURL, appendText);\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t});\r\n\r\n\r\n\t\tfunction appendLink(label: string, url: string, ctid: string, convertToFinderURL: boolean, appendText?: string) {\r\n\t\t\tvar append = appendText || \"\";\r\n\t\t\tvar alteredURL = (convertToFinderURL && ctid.length > 0) ? appURL + \"/\" + searchType + \"/\" + ctid + append : url + append;\r\n\r\n\t\t\tvar link = {\r\n\t\t\t\tLabel: label,\r\n\t\t\t\tURL: alteredURL\r\n\t\t\t} as Link;\r\n\r\n\t\t\tif (isArrayValue) {\r\n\t\t\t\tvar match = currentValue.find((m: any) => m.URL == url);\r\n\r\n\t\t\t\tif (match) {\r\n\t\t\t\t\tmatch.Label = label;\r\n\t\t\t\t\tmatch.URL = alteredURL;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tcurrentValue.push(link);\r\n\t\t\t\t}\r\n\t\t\t\tsetMethod([...currentValue]);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tsetMethod(link);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tfunction getOrganizationOutlineByURI(uri: string): Outline {\r\n\t\tvar data = getResourceByURI(uri, setLocalAJAXCache).Data;\r\n\t\treturn {\r\n\t\t\tLabel: englishOrNull(data?.[\"ceterms:name\"]) || ,\r\n\t\t\tURL: appURL + \"/organization/\" + uri.split(\"/resources/\")[1],\r\n\t\t\tImage: data?.[\"ceterms:image\"]\r\n\t\t} as Outline;\r\n\t}\r\n\r\n\tfunction createIdentifier(identifier: Array) {\r\n\t\treturn (identifier || []).map(source => {\r\n\t\t\treturn {\r\n\t\t\t\tIdentifierType: englishOrNull(source[\"ceterms:identifierType\"]),\r\n\t\t\t\tIdentifierTypeName: englishOrNull(source[\"ceterms:identifierTypeName\"]),\r\n\t\t\t\tIdentifierValueCode: englishOrNull(source[\"ceterms:identifierValueCode\"]),\r\n\t\t\t} as IdentifierValue;\r\n\t\t});\r\n\t}\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Competency\");\r\n\tvar typeLabelPlural = widgetGetPluralLabelForText(\"Competencies\");\r\n\tuseEffect(() => {\r\n\t\tconst ctid = competency.CTID;\r\n\t\tif (ctid != null) {\r\n\t\t\tvar data = getResourceByURI(`${apiUrl}/GetRelatedResource/${ctid}/34`, setLocalAJAXCache).Data;//WorkRolesEntityTypeId is 34\r\n\t\t\tif (data != null && data.Result) {\r\n\t\t\t\tsetRelatedWorkRoles(data.Result);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t}, [competency]);\r\n\tif (memberOfCollections != null && memberOfCollections.length > 1) {\r\n\t\tconsole.log(memberOfCollections);\r\n\t\tconst distinctData = memberOfCollections.filter((Link, index, self) =>\r\n\t\t\tindex === self.findIndex((l) => l.URL === Link.URL)\r\n\t\t);\r\n\t\tsetMemberOfCollections(distinctData);\r\n\t}\r\n\t\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    {competency.CompetencyText || \"No description available\"}
    \r\n\t\t\t\t\t\t\t\t{competency.Comment?.length > 0 && Comments:{competency.Comment.map(m =>
    {m}
    )}
    }\r\n\t\t\t\t\t\t\t\t{competency.CompetencyCategory && Competency Category: {competency.CompetencyCategory}}\r\n\t\t\t\t\t\t\t\t{competency.Weight && Weight: {competency.Weight}}\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction AJAXModalForCompetencyConnections(props: { competency: CompetencyType, urlProperty: string, labelTemplate: string, relatedItemsMap: Array }) {\r\n\t//Outbound connections\r\n\tvar outboundValue = props.competency?.Meta_JSON?.[props.urlProperty] || [] as Array;\r\n\tvar outboundURLs = Array.isArray(outboundValue) ? outboundValue : [outboundValue];\r\n\r\n\t//Inbound connections\r\n\tvar inboundURLs = [] as Array;\r\n\tprops.relatedItemsMap.filter((map: any) => { return map.Path.match(\"< \" + props.urlProperty + \" < ceasn:Competency$\")?.length > 0 }).flatMap((map: any) => { return map.URIs }).forEach((url: string) => {\r\n\t\tif (!inboundURLs.includes(url)) {\r\n\t\t\tinboundURLs.push(url);\r\n\t\t}\r\n\t});\r\n\r\n\t//Return set\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{outboundURLs?.length > 0 && (\r\n\t\t\t\t renderCompetencyFromRDF(data, itemContent, props.relatedItemsMap, false)} StyleComponent={CompetencyStyleBlock} />}\r\n\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t)}\r\n\t\t\t{inboundURLs?.length > 0 && (\r\n\t\t\t\t renderCompetencyFromRDF(data, itemContent, props.relatedItemsMap, false)} StyleComponent={CompetencyStyleBlock} />}\r\n\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t)}\r\n\t\t\r\n\t)\r\n}\r\n\r\n\r\nfunction RenderCompetencyLink(props: { data: any, index: number }) {\r\n\tconst [framework, setFramework] = useState({} as any);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (props.data[\"ceasn:isPartOf\"]) {\r\n\t\t\tgetResourceByURLWithoutState(props.data[\"ceasn:isPartOf\"], null, (data: any) => {\r\n\t\t\t\tsetFramework(data);\r\n\t\t\t}, (error: any) => {\r\n\t\t\t\tconsole.log(\"Error loading framework \" + props.data[\"ceasn:isPartOf\"], error);\r\n\t\t\t\tsetFramework({ \"ceasn:name\": \"Error Loading Framework\", \"ceterms:ctid\": \"ce-\" + props.data[\"ceasn:isPartOf\"].split(\"/ce-\")[1] });\r\n\t\t\t});\r\n\t\t}\r\n\t}, []);\r\n\r\n\treturn \r\n\t\t\r\n\t\t
    {englishOrNull(props.data[\"ceasn:competencyText\"])}
    \r\n\t
    \r\n}\r\n\r\nfunction RenderWorkforceDemand(props: { data: any, index: number }) {\r\n\treturn \r\n}\r\n\r\nfunction RenderError(props: { error: any, index: number }) {\r\n\treturn {props.error}\r\n}\r\n\r\nfunction RelatedLinkSet(props: { label: string, links: Array }) {\r\n\treturn props.links?.length > 0 && ( ) || null\r\n}\r\n\r\nfunction RelatedLinkSetFromURLs(props: { label: string, urls: Array }) {\r\n\treturn props.urls?.length > 0 && () || null\r\n}\r\n\r\nconst PageSectionItemHeader = styled.div`\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst Comment = styled.div`\r\n\tfont-style: italic;\r\n\tpadding: 5px;\r\n`;\r\n\r\nconst RelatedLinkList = styled(PlainTextLinkList)`\r\n\t& a {\r\n\t\tmargin-bottom: 5px;\r\n\t}\r\n`;\r\n\r\nconst RelatedListItem = styled.div`\r\n\r\n`;\r\n\r\nconst CompetencyLink = styled(RelatedListItem)`\r\n\r\n`;\r\n\r\nconst CompetencyLinkFrameworkName = styled.span`\r\n\tfont-weight: bold;\r\n\tmargin-right: 10px;\r\n`;\r\n\r\nconst Error = styled(RelatedListItem)`\r\n\r\n`;\r\n","import React, { useContext, useMemo, useState, useEffect } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { InternalButtonLink } from '../common';\r\nimport { HStack } from '../Stack';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport {\r\n faAngleDown,\r\n faAngleUp,\r\n faTimes,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport { theme } from '../../shared/theme';\r\nimport { widgetGetColor, widgetGetPluralLabelForText } from '../../utils/SiteWidgetizer';\r\nimport { getCompareItemsByType, removeCompareItem, updateStateOnCompareChange } from '../../utils/LocalStorage';\r\nimport { configName } from '../../shared/globals';\r\n\r\nexport default function CompareSelectedListPanel(props: { onClose: () => void }) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tGo to Compare Page\r\n\t\t\t\t\r\n\t\t\t\t props.onClose()} >\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{/**/}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n//\r\n\r\nfunction CollapsibleCompareItems(props: { typeLabel: string, broadType: string }) {\r\n\tconst [expanded, setExpanded] = useState(false);\r\n\tconst [items, setItems] = useState([] as Array);\r\n\r\n\tuseEffect(() => {\r\n\t\tupdateStateOnCompareChange(() => { setItems(getCompareItemsByType(props.broadType)); });\r\n\t\tsetItems(getCompareItemsByType(props.broadType));\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t setExpanded(!expanded)} aria-label={'Expand the list of ' + props.typeLabel + ' to be compared'}>\r\n\t\t\t\t{items.length} {props.typeLabel}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t{expanded &&\r\n\t\t\t\titems.map((item) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{item.Name}\r\n\t\t\t\t\t\t removeCompareItem(item)} aria-label={'Remove ' + item.Name} >\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\r\n\t);\r\n}\r\n//\r\n\r\nconst Wrapper = styled.div`\r\n flex: 0 0 350px;\r\n background-color: ${(props) => widgetGetColor(\"SiteHeader\", false, props.theme.color.aquaDark)};\r\n padding: 20px;\r\n\tposition:absolute;\r\n\tright: 0;\r\n\tz-index: 50;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n min-height: 100vh;\r\n width: 80%;\r\n }\r\n`;\r\n\r\nconst CompareTypes = styled.div`\r\n padding: 10px 0;\r\n > :not(:last-child) {\r\n border-bottom: 1px solid ${theme.color.white};\r\n }\r\n`;\r\n\r\nconst IconButton = styled(FontAwesomeIcon)`\r\n cursor: pointer;\r\n\tmargin-left: 5px;\r\n\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"black\")}\r\n`;\r\n\r\nconst CompareButton = styled(InternalButtonLink)`\r\n color: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.aquaDark)};\r\n\tborder-color: ${(props) => widgetGetColor(\"SearchResultButton\", true, props.theme.color.aquaDark)}\r\n`;\r\n\r\nconst ComparePanelCloseButton = styled.button`\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"black\")}\r\n`;\r\n\r\nconst CompareItemsWrapper = styled.div`\r\n padding: 10px 0;\r\n`;\r\n\r\nconst CompareItemTitle = styled.h4`\r\n\tflex: 1 1 100%;\r\n\tmargin: 0;\r\n\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"black\")}\r\n`;\r\n\r\nconst CompareSubItemTitle = styled.p`\r\n\tflex: 1 1 100%;\r\n\tmargin: 0;\r\n\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"black\")}\r\n`;\r\n\r\nconst CompareItemsWrapperTitle = styled.button`\r\n\tdisplay: flex;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\twidth: 100%;\r\n\ttext-align: left;\r\n\tpadding: 5px;\r\n\t&:hover {\r\n\t\tbackground-color: rgba(255,255,255,0.3);\r\n\t}\r\n`;\r\n\r\nconst CompareItemsWrapperItem = styled.div`\r\n\tdisplay: flex;\r\n\tpadding: 5px 10px;\r\n\talign-items: baseline;\r\n`;\r\n\r\nconst CompareItemRemoveButton = styled.button`\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\tcolor: ${(props) => widgetGetColor(\"SearchResultButton\", true, \"black\")};\r\n\t&:hover {\r\n\t\tbackground-color: rgba(255,255,255,0.3);\r\n\t}\r\n`;\r\n","export default __webpack_public_path__ + \"static/media/icon-costs-and-time-blue-green-01.836f27a6.svg\";","import React from 'react';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { Label, Section } from '../../components/DetailPage/styles';\r\nimport { Credential } from '../../types/external';\r\nimport { ModalType } from '../../types/internal';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\n\r\n\r\ninterface Props {\r\n credential: Credential;\r\n onOpenModalClick: (modalType: ModalType) => () => void;\r\n onCloseModalClick: () => void;\r\n openedModal: ModalType | undefined;\r\n}\r\n\r\nexport default function AboutDetail({\r\n credential,\r\n onOpenModalClick,\r\n onCloseModalClick,\r\n openedModal,\r\n}: Props) {\r\n return (\r\n <>\r\n {credential.CredentialType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {credential.CredentialStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {credential.AudienceType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {credential.AudienceLevelType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {credential.LearningDeliveryType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {credential.AssessmentDeliveryType && (\r\n \r\n \r\n \r\n \r\n )}\r\n\t\t\t{isFilled(credential.DegreeConcentration) && (\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t)}\r\n\t\t\t{isFilled(credential.DegreeMajor) && (\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t)}\r\n\t\t\t{isFilled(credential.DegreeMinor) && (\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t)}\r\n \r\n );\r\n}\r\n","import React, { useContext, useEffect, useState } from 'react';\r\nimport { ModalType } from '../../types/internal';\r\nimport {\r\n\tAssessment,\r\n\tLearningOpportunity,\r\n\tCredential,\r\n Outline,\r\n} from '../../types/external';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport { Label, Section, UnorderedList, ListWithoutBullet } from './styles';\r\nimport { Button } from '../common';\r\nimport { ModalButtonAndWindow } from '../Modal';\r\nimport { isFilled } from '../../validation';\r\nimport HasAnyFilled from '../HasAnyFilled';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from './ConditionProfile';\r\nimport { CompetencyFrameworkList } from '../../components/DetailPage/CompetencyFramework';\r\nimport OutlineList from './Outline';\r\nimport TruncatedItemList from './TruncatedItemList';\r\nimport { PlainTextLink } from './LinkObject';\r\nimport TextLink from '../TextLink';\r\n\r\ninterface Props {\r\n item: any;\r\n openedModal?: ModalType;\r\n onOpenModalClick: (modalType: ModalType) => () => void;\r\n onCloseModalClick: () => void;\r\n}\r\n\r\nexport default function ConnectionsSection(props: Props) {\r\n return (\r\n\t\t<>\r\n\t\t\t{props.item?.Collections?.length > 0 && (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{item.ExtraData && (\r\n\t\t\t\t\t\t\t\t\t\t
    {[item.ExtraData.StartDate && \"Start Date: \" + item.ExtraData.StartDate, item.ExtraData.EndDate && \"End Date: \" + item.ExtraData.EndDate].filter((item: any) => { return item }).join(\" | \")}
    \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t\ttruncateAfter={5}\r\n\t\t\t\t\t/>\r\n\t\t\t\t
    \r\n\t\t\t)}\r\n\t\t\t{(\r\n\t\t\t\tprops.item.IsRequiredFor?.length > 0 ||\r\n\t\t\t\tprops.item.IsRecommendedFor?.length > 0 ||\r\n\t\t\t\tprops.item.AdvancedStandingFrom?.length > 0 ||\r\n\t\t\t\tprops.item.IsAdvancedStandingFor?.length > 0 ||\r\n\t\t\t\tprops.item.PreparationFrom?.length > 0 ||\r\n\t\t\t\tprops.item.IsPreparationFor?.length > 0 ||\r\n\t\t\t\tprops.item.SupportServiceCondition?.length > 0 ||\r\n\t\t\t\tprops.item.TargetAssessment?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.TargetLearningOpportunity?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.HasTransferValue?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.HasSupportService?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.TargetPathway?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.ProvidesTransferValueFor?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.ReceivesTransferValueFrom?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.ObjectOfAction?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.HasRubric?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.RelatedActions?.Values?.length > 0 ||\r\n\t\t\t\tprops.item.RelatedDataSetProfiles?.Values?.length > 0\r\n\t\t\t) &&\r\n\t\t\t\t\r\n\t\t\t\t\t{/**/}\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t\t }\r\n\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t\t }\r\n\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t\t }\r\n\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t\t }\r\n\t\t\t\t\thideCount={true}\r\n\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{(props.item.RequiresCompetencies?.Values?.length > 0 || props.item.AssessesCompetencies?.Values?.length > 0 || props.item.TeachesCompetencies?.Values?.length > 0) &&\r\n\t\t\t\t\r\n\t\t\t\t{/**/}\r\n\t\t\t\t\t }\r\n\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t }\r\n\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\t{isFilled(props.item.TargetLearningResource) && (\r\n\t\t\t\t\r\n\t\t\t\t\t{/**/}\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t\ttruncateAfter={5}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t{(isFilled(props.item.AlignFrom) || isFilled(props.item.AlignTo) || isFilled(props.item.DerivedFrom)) && (\r\n\t\t\t\t\r\n\t\t\t\t\t{/**/}\r\n\t\t\t\t\t{props.item.AlignFrom?.length > 0 && (\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\ttruncateAfter={5}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t)}\r\n\t\t\t\t\t{props.item.AlignTo?.length > 0 && (\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\ttruncateAfter={5}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t)}\r\n\t\t\t\t\t{props.item.DerivedFrom?.length > 0 && (\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\ttruncateAfter={5}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t)}\r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport { DurationProfile as DurationProfileType } from '../../types/external';\r\nimport TruncatedItemList from '../DetailPage/TruncatedItemList';\r\nimport styled from 'styled-components/macro';\r\n\r\nexport default function DurationProfileList(props: { items: DurationProfileType[], truncateAfter?: number }) {\r\n return ( props.items?.length > 0 &&\r\n\t\t {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t)\r\n\t\t\t}}\r\n\t\t\ttruncateAfter={props.truncateAfter || 5}\r\n\t\t/>\r\n ) || null\r\n}\r\n\r\nexport function DurationProfile(props: { item: DurationProfileType }) {\r\n\treturn (props.item &&\r\n\t\t\r\n\t\t{ props.item.Description?.length > 0 &&\r\n\t\t\t
    {props.item.Description}
    \r\n\t\t}\r\n\t\t{props.item.DurationSummary?.length > 0 &&\r\n\t\t\t
    \r\n\t\t\t\tEstimated time to complete: \r\n\t\t\t\t{props.item.DurationSummary}\r\n\t\t\t
    \r\n\t\t}\t\t\t\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nconst DurationProfileWrapper = styled.div`\r\n\r\n`;","import styled from 'styled-components/macro';\r\n\r\nexport const Body = styled.div`\r\n padding: 10px;\r\n border: ${(p) => `1px solid ${p.theme.color.aquaDark}`};\r\n`;\r\n\r\nexport const Heading = styled.div`\r\n padding: 10px 10px 5px 10px;\r\n\tfont-weight: bold;\r\n background-color: ${(p) => p.theme.color.aquaDark};\r\n a {\r\n text-decoration: none;\r\n\t\t&:hover, &:focus {\r\n\t\t\ttext-decoration: underline;\r\n\t\t}\r\n }\r\n`;\r\n\r\nexport const LinkHeader = styled.a`\r\n\tdisplay: block;\r\n padding: 10px 10px 5px 10px;\r\n\tfont-weight: bold;\r\n background-color: ${(p) => p.theme.color.aquaDark};\r\n`;\r\n\r\nexport const Section = styled.div`\r\n margin-bottom: 15px;\r\n\r\n &:last-of-type {\r\n margin-bottom: 0;\r\n }\r\n`;\r\n\r\nexport const Type = styled.span`\r\n padding: 10px;\r\n background-color: ${(p) => p.theme.color.aquaLight};\r\n display: inline-block;\r\n`;\r\n","import React from 'react';\r\nimport {\r\n Assessment,\r\n Credential,\r\n LearningOpportunity,\r\n SupportService,\r\n} from '../../types/external';\r\nimport { Section } from './styles';\r\nimport { Body, Heading } from './profileStyles';\r\nimport { isFilled } from '../../validation';\r\nimport { decode } from 'html-entities';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport LinkObject from './LinkObject';\r\n\r\ninterface Props {\r\n item: Assessment | LearningOpportunity | Credential | SupportService;\r\n}\r\n\r\nexport default function FinancialAssistance({ item }: Props) {\r\n return (\r\n
    \r\n {item.FinancialAssistance.map((profile, index) => (\r\n
    \r\n {profile.Name}\r\n \r\n {profile.Description && (\r\n
    \r\n \r\n
    {profile.Description}
    \r\n
    \r\n )}\r\n {isFilled(profile.FinancialAssistanceType) && (\r\n
    \r\n \r\n \r\n
    \r\n )}\r\n {isFilled(profile.FinancialAssistanceValue) && (\r\n
    \r\n \r\n {profile.FinancialAssistanceValue.map(\r\n (value, index) => (\r\n
    \r\n {decode(value)}\r\n
    \r\n ),\r\n )}\r\n
    \r\n )}\r\n {profile.SubjectWebpage && (\r\n
    \r\n\t\t\t\t\t\t\t\t{profile.SubjectWebpage && }\r\n
    \r\n )}\r\n \r\n
    \r\n ))}\r\n
    \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-organization-green-blue-01.ffb8164c.svg\";","import React from 'react';\r\nimport {\r\n \r\n MainItemBroadType,\r\n} from '../../types/internal';\r\nimport {\r\n\tAssessment,\r\n\tCredential,\r\n\tLearningOpportunity,\r\n\tTransferValue,\r\n\tTransferIntermediary,\r\n\tOutline,\r\n\tCompetencyFramework,\r\n\tConceptScheme,\r\n\tPathway, \r\n\tPathwayComponent,\r\n\tPathwaySet,\r\n\tCollection,\r\n ScheduledOffering,\r\n SupportService,\r\n Occupation,\r\n\tDataSetProfile,\r\n\tJob,\r\n\tTask,\r\n\tWorkRole,\r\n CredentialingAction,\r\n Rubric,\r\n\tMetric,\r\n\tIndustry\r\n} from '../../types/external';\r\nimport { isFilled } from '../../validation';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport orgIcon from '../../assets/images/icons/icon-organization-green-blue-01.svg';\r\nimport { Label, UnorderedList, ListWithoutBullet } from './styles';\r\nimport TextLink from '../TextLink';\r\nimport HasAnyFilled from '../HasAnyFilled';\r\nimport { detailSectionProperties, isTransferValue, isCredential } from '../../utils';\r\nimport TruncatedItemList from '../DetailPage/TruncatedItemList';\r\nimport styled from 'styled-components/macro';\r\nimport AJAXResourceList, { getEnglish, renderLink } from '../AJAXResourceList';\r\nimport { appURL } from '../../shared/globals';\r\n\r\ninterface Props {\r\n\titem: Assessment | \r\n\t\tLearningOpportunity |\r\n\t\tCredential |\r\n\t\tTransferValue |\r\n\t\tTransferIntermediary |\r\n\t\tCompetencyFramework |\r\n\t\tConceptScheme |\r\n\t\tOccupation | \r\n\t\tPathway | \r\n\t\tPathwayComponent | \r\n\t\tPathwaySet | \r\n\t\tCollection | \r\n\t\tDataSetProfile | \r\n\t\tScheduledOffering | \r\n\t\tSupportService | \r\n\t\tJob | \r\n\t\tTask | \r\n\t\tWorkRole | \r\n\t\tCredentialingAction | \r\n\t\tRubric | \r\n\t\tMetric | \r\n\t\tIndustry;\r\n\tpageSectionDescription?: string;\r\n}\r\n\r\nexport default function RelatedOrganizationPageSection(props: Props) {\r\n\tvar looseItem = props.item as any;\r\n return (\r\n \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n \r\n \r\n );\r\n}\r\n\r\nfunction OrganizationSection(props: { label: string, values: Array, innerKey: string }) {\r\n\treturn props.values?.length > 0 && (\r\n\t\t\r\n\t\t\t\r\n\t\t\t {\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)\r\n\t\t\t\t}}\r\n\t\t\t\ttruncateAfter={5}\r\n\t\t\t/>\r\n\t\t\r\n\t) || null;\r\n}\r\n\r\nexport function RelatedOrganizationPageSectionAJAXResourceList(props: { source: any, pageSectionDescription: string }) {\r\n\tconsole.log(\"Source\", props.source);\r\n\tif (!props.source) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar allURIProperties = [\"ceterms:ownedBy\", \"ceterms:offeredBy\", \"ceterms:renewedBy\", \"ceterms:revokedBy\", \"ceterms:copyrightHolder\", \"ceasn:creator\", \"ceasn:publisher\", \"ceasn:rightsHolder\", \"ceterms:assertedBy\", \"ceterms:actingAgent\", \"ceterma:participant\"];\r\n\tvar allURIs = allURIProperties.flatMap(property => props.source[property] || []);\r\n\tif (allURIs.length == 0) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n\t\r\n}\r\n\r\nfunction OrganizationSectionAJAXResourceList(props: { label: string, source: any, property: string }) {\r\n\treturn props.source[props.property] && (\r\n\t\t\r\n\t\t\t\r\n\t\t\t {\r\n\t\t\t\t\titemContainer.innerHTML = \"\";\r\n\t\t\t\t\trenderLink(itemContainer, appURL + \"/resources/\" + data[\"ceterms:ctid\"], getEnglish(data[\"ceterms:name\"]), \"_blank\", \"relatedOrganizationLink\")\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t\r\n\t) || null\r\n}\r\n","import React, { ReactElement, ReactNode } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { RevocationProfile as RevocationProfileType } from '../../types/external';\r\nimport { Box, BoxLabel, BoxContent, Section, SectionLabel, SectionContent, SectionContentItem } from './Shared';\r\nimport DateRange from './DateRange';\r\nimport JurisdictionProfileList from './JurisdictionProfile';\r\nimport LinkObject from './LinkObject';\r\n\r\nexport default function CostProfileList(props: { items: RevocationProfileType[] }) {\r\n\treturn (props.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.items.map((item) => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function RevocationProfile(props: { item: RevocationProfileType }) {\r\n\treturn (props.item && \r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
    {props.item.Description || \"No Description\"}
    \r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t{props.item.RevocationCriteria?.URL && }\r\n\t\t\t
    \r\n\t\t\t{props.item.Jurisdiction?.length > 0 && (\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\tJurisdiction Information:\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t)}\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nconst RevocationProfileWrapper = styled.div`\r\n\t\r\n`;\r\n\r\nconst BasicInfo = styled(Section)`\r\n\tdisplay: flex;\r\n\r\n\t& > a {\r\n\t\tmargin-left: auto;\r\n\t}\r\n`;","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Link, QuantitativeValue, MonetaryAmount } from '../../types/external';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { Section, SectionLabel, SectionContentItem } from './Shared';\r\n\r\nexport interface QuantitativeValueSingleProps {\r\n\tlabel?: string;\r\n\titem: QuantitativeValue;\r\n}\r\nexport function QuantitativeValueSingle(props: QuantitativeValueSingleProps) {\r\n\treturn (\r\n\t\tprops.item && (props.item.Description) &&\r\n\t\t\r\n\t\t\t{props.label && {props.label}}\r\n\t\t\t{props.item.Description && {props.item.Description}}\r\n\t\t\t } />\r\n\t\t\t\r\n\t\t\t\t{props.item.Value || props.item.Percentage ||0 && <>{props.item.Percentage && {props.item.Percentage + \"%\"}}{props.item.Value && {props.item.Value}}}\r\n\t\t\t\t{props.item.MinValue && props.item.MaxValue && {props.item.MinValue} to {props.item.MaxValue}}\r\n\t\t\t\t{props.item.MinValue && !props.item.MaxValue && At least {props.item.MinValue}}\r\n\t\t\t\t{!props.item.MinValue && props.item.MaxValue && Up to {props.item.MaxValue}}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\n//Applies label for each quantitative value\r\nexport interface QuantitativeValueListProps {\r\n\tlabel?: string;\r\n\titems: QuantitativeValue[];\r\n}\r\nexport function QuantitativeValueList(props: QuantitativeValueListProps) {\r\n\tvar itemsWithValues = props.items?.filter(item => item.Description) || [];\r\n\treturn (\r\n\t\titemsWithValues.length > 0 && \r\n\t\t\r\n\t\t\t{itemsWithValues.map(item => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nexport function MonetaryAmountSingle(props: { label?: string, item: MonetaryAmount }) {\r\n\treturn (\r\n\t\tprops.item && (props.item.Value || props.item.MaxValue || props.item.MinValue) &&\r\n\t\t\r\n\t\t\t{props.label && {props.label}}\r\n\t\t\t{props.item.Description && {props.item.Description}}\r\n\t\t\t\r\n\t\t\t\t{(props.item.Value) && {props.item.CurrencySymbol || \"\"}{commatizeNumber(props.item.Value)}}\r\n\t\t\t\t{props.item.MinValue && props.item.MaxValue && {props.item.CurrencySymbol || \"\"}{commatizeNumber(props.item.MinValue)} to {props.item.CurrencySymbol || \"\"}{commatizeNumber(props.item.MaxValue)}}\r\n\t\t\t\t{props.item.MinValue && !props.item.MaxValue && At least {props.item.CurrencySymbol || \"\"}{commatizeNumber(props.item.MinValue)}}\r\n\t\t\t\t{!props.item.MinValue && props.item.MaxValue && Up to {props.item.CurrencySymbol || \"\"}{commatizeNumber(props.item.MaxValue)}}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nexport function MonetaryAmountList(props: { label?: string, items: MonetaryAmount[] }) {\r\n\tvar itemsWithValues = props.items?.filter(item => item.Value || item.MaxValue || item.MinValue) || [];\r\n\treturn (\r\n\t\titemsWithValues.length > 0 &&\r\n\t\t\r\n\t\t\t{itemsWithValues.map(item => (\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\n//Applies label at the section level\r\nexport interface QuantitativeValueListSectionProps {\r\n\tlabel: string;\r\n\titems: QuantitativeValue[];\r\n}\r\nexport function QuantitativeValueListSection(props: QuantitativeValueListSectionProps) {\r\n\treturn (\r\n\t\tprops.items?.length > 0 &&\r\n\t\t
    \r\n\t\t\t{props.label}\r\n\t\t\t\r\n\t\t
    \r\n\t) || null\r\n}\r\n\r\nexport function commatizeNumber(number: number): string {\r\n\tif (!number && number != 0) {\r\n\t\treturn \"\";\r\n\t}\r\n\r\n\tvar counter = 0;\r\n\tvar result = [] as Array;\r\n\tvar textNumber = number.toString();\r\n\tvar parts = textNumber.split(\".\");\r\n\tvar numbers = parts[0].toString().split(\"\");\r\n\tnumbers.reverse().forEach((char, index) => {\r\n\t\tcounter++;\r\n\t\tresult.push(char);\r\n\t\tif (counter >= 3 && (index + 1 < numbers.length)) {\r\n\t\t\tresult.push(\",\");\r\n\t\t\tcounter = 0;\r\n\t\t}\r\n\t});\r\n\r\n\treturn result.reverse().join(\"\") + (parts[1] ? \".\" + parts[1] : \"\");\r\n}\r\n\r\nconst QuantitativeValueListWrapper = styled.div`\r\n\tborder-top: 1px solid #CCC;\r\n\r\n\t& :first-child {\r\n\t\tborder: none;\r\n\t}\r\n`;\r\n\r\nconst QuantitativeValueWrapper = styled.div`\r\n\tdisplay: flex;\r\n\tborder-top: 1px dashed #CCC;\r\n\tpadding: 2.5px 5px;\r\n\tmax-width: 1000px;\r\n\r\n\t& :first-child {\r\n\t\tborder: none;\r\n\t}\r\n`;\r\n\r\nconst QVProperty = styled.div`\r\n\tpadding: 0 5px;\r\n`;\r\n\r\nconst QVLabel = styled.div`\r\n\tpadding: 0 5px;\r\n\tmin-width: 200px;\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst QVNumbers = styled.div`\r\n\tmargin-left: auto;\r\n\tdisplay: flex;\r\n`;\r\n\r\nconst QVNumber = styled.div`\r\n\tpadding: 0 5px;\r\n\tmin-width: 75px;\r\n\ttext-align: right;\r\n\tfont-size: 16px;\r\n\tfont-weight: bold;\r\n`;\r\n","import React from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { Section, Heading, Body } from './profileStyles';\r\nimport { SectionLabel, InlineLabelledItem } from '../DetailPage/styles';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport JurisdictionProfileList from './JurisdictionProfile';\r\nimport ProcessProfileList from './ProcessProfile';\r\nimport OutlineList, { Outline } from '../../components/DetailPage/Outline';\r\nimport { TabSetOrSingle } from './TabSelector';\r\nimport DateRange from './DateRange';\r\nimport { EarningsDisplay } from './AggregateDataProfile';\r\nimport { MonetaryAmountList, QuantitativeValueList } from './QuantitativeValue';\r\nimport { DataSetProfile, DataSetTimeFrame, DataProfile, ProcessProfile, QuantitativeValue, MonetaryAmount, MonetaryAmountDistribution } from '../../types/external';\r\nimport { formatPrice } from '../../utils';\r\n\r\nexport interface DataSetProfileSingleProps {\r\n\titem: DataSetProfile;\r\n}\r\nexport function DataSetProfileSingle(props: DataSetProfileSingleProps) {\r\n\treturn (\r\n\t\tprops.item &&\r\n\t\t\r\n\t\t\t
    \r\n\t\t\t\t{props.item.Name}\r\n\t\t\t\t\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.Description &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{props.item.Description}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.DataSetTimePeriod?.length > 0 &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tApplicable Time Periods\r\n\t\t\t\t\t\t\t ({\r\n\t\t\t\t\t\t\t\t\t\tLabel: timeFrame.Name || (timeFrame.StartDate && timeFrame.EndDate && (timeFrame.StartDate + \" - \" + timeFrame.EndDate)) || \"Unnamed Time Frame\",\r\n\t\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.DataSuppressionPolicy &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tData Suppression Policy: {props.item.DataSuppressionPolicy}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.SubjectIdentification &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tSubject Identification: {props.item.SubjectIdentification}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.Source &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tSource Information\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.DistributionFile?.length > 0 &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.item.DistributionFile.map((url) => (\r\n\t\t\t\t\t\t\t\t{url}\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.InstructionalProgramType?.length > 0 &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tInstructional Program Type:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.Jurisdiction?.length > 0 &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tJurisdiction Information\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.About?.length > 0 &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tApplicable Resources\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tprops.item.DataProvider &&\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\tData Provider:\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport interface DataSetTimeFrameSingleProps {\r\n\titem: DataSetTimeFrame;\r\n}\r\nexport function DataSetTimeFrameSingle(props: DataSetTimeFrameSingleProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t{\r\n\t\t\t\tprops.item.Description &&\r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.item.Description}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\t(props.item.StartDate || props.item.EndDate) &&\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\t(props.item.TimeIntervalDisplay) &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tTime Interval: {props.item.TimeIntervalDisplay}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.DataSourceCoverageType?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tData Source Coverage Type:\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.DataAttributes?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tDetails\r\n\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tLabel: (dataProfile.Description || \"Data Profile \" + index).substr(0, 50) + ((dataProfile.Description || \"\").length > 50 ? \"...\" : \"\"),\r\n\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t))\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport function DataSetTimeFrameSingleMinimal(props: DataSetTimeFrameSingleProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t{\r\n\t\t\t\tprops.item.Name &&\r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.item.Name}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.Description &&\r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.item.Description}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\t(props.item.StartDate || props.item.EndDate) &&\r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\t(props.item.TimeIntervalDisplay) &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tTime Interval: {props.item.TimeIntervalDisplay}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.DataSourceCoverageType?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tData Source Coverage Type:\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport interface DataProfileSingleProps {\r\n\titem: DataProfile;\r\n}\r\nexport function DataProfileSingle(props: DataProfileSingleProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t{\r\n\t\t\t\tprops.item.Description &&\r\n\t\t\t\t
    \r\n\t\t\t\t\t{props.item.Description}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.Adjustment &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tAdjustment: {props.item.Adjustment}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.EarningsDefinition &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tEarnings Definition: {props.item.EarningsDefinition}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.EarningsThreshold &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tEarnings Threshold: {props.item.EarningsThreshold}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.EmploymentDefinition &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tEmployment Definition: {props.item.EmploymentDefinition}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.FacultyToStudentRatio &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tFaculty To Student Ratio: {props.item.FacultyToStudentRatio}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.WorkTimeThreshold &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tWork Time Threshold: {props.item.WorkTimeThreshold}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.AdministrativeRecordType?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tAdministrative Record Type:\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.IncomeDeterminationType?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tIncome Determination Type:\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t{\r\n\t\t\t\tprops.item.EarningsDistribution?.length > 0 &&\r\n\t\t\t\t
    \r\n\t\t\t\t\tEarnings Distribution\r\n\t\t\t\t\t{props.item.EarningsDistribution.map((item) =>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
    \r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport interface MonetaryAmountDistributionSingleProps {\r\n\titem: MonetaryAmountDistribution;\r\n}\r\nexport function MonetaryAmountDistributionSingle(props: MonetaryAmountDistributionSingleProps) {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\n\r\nconst DataSetProfileListWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst DataSetProfileWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst DataSetTimeFrameWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst DataProfileWrapper = styled.div`\r\n\r\n`;\r\n\r\nconst MonetaryAmountDistributionWrapper = styled.div`\r\n\r\n`;","import React from 'react';\r\nimport { AggregateDataProfile } from '../../types/external';\r\nimport { Section, Heading, Body } from './profileStyles';\r\nimport { SectionLabel, InlineLabelledItem } from '../DetailPage/styles';\r\nimport DateRange from './DateRange';\r\nimport styled from 'styled-components/macro';\r\nimport JurisdictionProfileList from './JurisdictionProfile';\r\nimport { QuantitativeValueList } from './QuantitativeValue';\r\nimport { TabSetOrSingle } from './TabSelector';\r\nimport { DataSetProfileSingle } from './DataSetProfile';\r\nimport { formatPrice } from '../../utils';\r\n\r\nexport interface AggregateDataProfileSectionProps { item: AggregateDataProfile; }\r\nexport function AggregateDataProfileSection(props: AggregateDataProfileSectionProps) {\r\n\r\n\treturn (\r\n\t\t
    \r\n\t\t\t{props.item.Name || \"Outcomes Data\"}\r\n\t\t\t\r\n\t\t\t\t{\r\n\t\t\t\t\tprops.item.Description &&\r\n\t\t\t\t\t
    {props.item.Description}
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\tprops.item.DemographicInformation &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tDemographic Information: {props.item.DemographicInformation}\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\tprops.item.FacultyToStudentRatio &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tFaculty To Student Ratio: {props.item.FacultyToStudentRatio}\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\t(props.item.DateEffective || props.item.ExpirationDate) &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\t( props.item.PostReceiptMonths ) &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tPost Receipt Months: {props.item.PostReceiptMonths}\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\t(props.item.LowEarnings || props.item.MedianEarnings || props.item.HighEarnings) &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tEarnings\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\tprops.item.JobsObtainedList?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tJobs Obtained\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\tprops.item.Jurisdiction?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tJurisdiction Information\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\t{\r\n\t\t\t\t\tprops.item.RelevantDataSet?.length > 0 &&\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\tDetails\r\n\t\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\tLabel: dataSetProfile.Name,\r\n\t\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t
    \r\n\t\t\t\t}\r\n\t\t\t\r\n\t\t
    \r\n\t) || \"error\"\r\n}\r\n\r\nexport interface AggregateDataProfileListProps { items: Array; }\r\nexport default function AggregateDataProfileList(props: AggregateDataProfileListProps) {\r\n\tconsole.log(\"Source Data\", props.items)\r\n\treturn (\r\n\t\t(props?.items?.length > 0) &&\r\n\t\t(\r\n\t\t\t\r\n\t\t\t\t{\r\n\t\t\t\t\tprops.items.map((data) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))\r\n\t\t\t\t}\r\n\t\t\t\r\n\t\t)\r\n\t) || null;\r\n}\r\n\r\nexport interface EarningsDisplayProps {\r\n\tCurrencySymbol: string;\r\n\tValues: EarningsDisplayItemData[];\r\n\tMaxBarHeight: number;\r\n}\r\nexport interface EarningsDisplayItemData {\r\n\tLabel: string;\r\n\tValue?: number;\r\n}\r\nexport function EarningsDisplay(props: EarningsDisplayProps) {\r\n\tvar values = (props.Values || []).filter(m => m.Value != null && m.Value != undefined);\r\n\tconst max = Math.max.apply(null, values.map(m => m.Value || 1));\r\n\r\n\treturn ( values.length > 1 &&\r\n\t\t\r\n\t\t\t{\r\n\t\t\t\tvalues.map((data) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{data.Label}\r\n\t\t\t\t\t\t{formatPrice(data.Value || 0, props.CurrencySymbol)}\r\n\t\t\t\t\t\r\n\t\t\t\t))\r\n\t\t\t}\r\n\t\t\r\n\t) || (\r\n\t\t
    {values[0].Label}: {formatPrice(values[0].Value || 0, props.CurrencySymbol)}
    \r\n\t)\r\n}\r\n\r\nconst AggregateDataProfiles = styled.div`\r\n\t\r\n`;\r\n\r\nconst EarningsDisplayWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: baseline;\r\n\tjustify-content: space-between;\r\n`;\r\n\r\nconst EarningsDisplayItem = styled.div`\r\n\tflex: 1 1 50%;\r\n\tmargin: 0 10px;\r\n\ttext-align: center;\r\n`;\r\n\r\nconst EarningsItemBar = styled.div`\r\n\tbackground-color: ${(p) => p.theme.color.aquaDark};\r\n\tmin-height: 5px;\r\n`;\r\n\r\nconst EarningsItemLabel = styled.div`\r\n\r\n`;\r\n\r\nconst EarningsItemValue = styled.div`\r\n\r\n`;","import React from 'react';\r\nimport { AggregateDataProfile, DataSetProfile } from '../../types/external';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport AggregateDataProfileList from '../../components/DetailPage/AggregateDataProfile';\r\nimport { DataSetProfileSingle } from '../../components/DetailPage/DataSetProfile';\r\nimport { Section, Label } from '../../components/DetailPage/styles';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\n\r\n\r\nexport function OutcomesDataPageSectionItem(props: {\r\n\taggregateDataProfiles: Array,\r\n\tdataSetProfiles: Array,\r\n\tresourceTitle: string\r\n}) {\r\n\tif ((props.aggregateDataProfiles?.length || 0) == 0 && (props.dataSetProfiles?.length || 0) == 0) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\t//Filter out External Data Set Profiles that are already referenced by an Aggregate Data Profile\r\n\tvar dataSetProfileCTIDsReferencedByAggregateDataProfiles = (props.aggregateDataProfiles || [] as Array).filter(adp => { return adp.RelevantDataSet?.length > 0 }).flatMap(adp => adp.RelevantDataSet).map(otherDSP => otherDSP.CTID);\r\n\tvar externalDataSetProfilesSansAggregateDataProfileReferences = props.dataSetProfiles?.filter(dsp => { return !dataSetProfileCTIDsReferencedByAggregateDataProfiles.includes(dsp.CTID) }) || [];\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t }\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tLabel: dataSetProfile.Name || (\"Data Set \" + (index + 1) + (dataSetProfile.Meta_LastUpdatedHeader ? \": \" + dataSetProfile.Meta_LastUpdatedHeader : \"\")),\r\n\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t/>\r\n\t\t\t\t}\r\n\t\t\t/>\r\n\t\t\r\n\t)\r\n}","import React, { useContext, useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport styled from 'styled-components/macro';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport credentialIcon from '../../assets/images/icons/icon-credentials-white-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport processIcon from '../../assets/images/icons/icon-process-blue-green-01.svg';\r\nimport costIcon from '../../assets/images/icons/icon-costs-and-time-blue-green-01.svg';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useMediaQuery, useGet } from '../../hooks';\r\nimport { Credential, Assessment, LearningOpportunity, ConditionManifest, CostManifest, ProcessProfile, DataSetProfile, AggregateDataProfile, Link } from '../../types/external';\r\nimport { ModalType } from '../../types/internal';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport {\r\n MobileAboutDetail,\r\n Section,\r\n Wrapper,\r\n Label,\r\n Inline,\r\n\tInlineLabel,\r\n\tDescription\r\n} from '../../components/DetailPage/styles';\r\nimport AboutDetail from './AboutDetail';\r\nimport ConnectionsSection from '../../components/DetailPage/ConnectionsSection';\r\nimport DurationProfileList from '../../components/DetailPage/DurationProfile';\r\nimport FinancialAssistance from '../../components/DetailPage/FinancialAssistance';\r\nimport JurisdictionProfileList from '../../components/DetailPage/JurisdictionProfile';\r\nimport LinkObject, { PlainTextLink } from '../../components/DetailPage/LinkObject';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LocationPageSection from '../../components/DetailPage/LocationPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport QualityAssurancePageSection from '../../components/DetailPage/QualityAssurancePageSection';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport RevocationProfileList from '../../components/DetailPage/RevocationProfile';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport { detailSectionProperties, isCredential } from '../../utils';\r\nimport { isFilled } from '../../validation';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from '../../components/DetailPage/ConditionProfile';\r\nimport ConditionManifestList from '../../components/DetailPage/ConditionManifest';\r\nimport CostManifestList from '../../components/DetailPage/CostManifest';\r\nimport CostProfileList from '../../components/DetailPage/CostProfile';\r\nimport ProcessProfileList from '../../components/DetailPage/ProcessProfile';\r\nimport { OutcomesDataPageSectionItem } from '../../components/DetailPage/OutcomesDataPageSection';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { LinkItem } from '../../components/DetailPage/Shared';\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function CredentialPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [dataIsLoading, hasError, getData] = useGet();\r\n const [pageModel, setCredential] = useState({} as Credential);\r\n const [openedModal, setOpenedModal] = useState();\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n\r\n useEffect(() => {\r\n getData(`${apiUrl}/credential/${id}`, (data: Credential) => {\r\n\t\t\tsetCredential(data);\r\n\t\t\trenderJSONLDMetaTags(data, \"Credential\");\r\n });\r\n\t}, [getData, id]);\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Credential\");\r\n\tvar typeLabelPlural = widgetGetPluralLabelForText(\"Credentials\");\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {pageModel.Description && (\r\n \r\n {pageModel.Description}\r\n \r\n )}\r\n \r\n\t\t\t\t\t\t\t\t{pageModel.AvailableOnlineAt?.length > 0 &&\r\n\t\t\t\t\t\t\t\t\tpageModel.AvailableOnlineAt.map((url) => {\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{pageModel.SubjectWebpage &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{pageModel.InCatalog &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{pageModel.IsNonCredit !== undefined && pageModel.IsNonCredit == true && (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tIs Non-Credit :\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t{pageModel.IsNonCredit\r\n\t\t\t\t\t\t\t\t\t\t\t\t? 'true'\r\n\t\t\t\t\t\t\t\t\t\t\t\t: 'false'}\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{(pageModel.LatestVersion?.URL || pageModel.PreviousVersion?.URL || pageModel.NextVersion?.URL || pageModel.Supersedes?.URL || pageModel.SupersededBy?.URL) &&\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\r\n \r\n \r\n {isMobile && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t{isFilled(pageModel.RenewalFrequency) && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    {pageModel.RenewalFrequency}
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t\t\t/>\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{(isFilled(pageModel.CommonCosts) || isFilled(pageModel.EstimatedCost) || isFilled(pageModel.AssessmentCost) || isFilled(pageModel.LearningOpportunityCost) || isFilled(pageModel.FinancialAssistance)) &&\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t 0 ? \"Specific Costs\" : typeLabel + \" Costs\")}\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={pageModel.EstimatedCost}\r\n\t\t\t\t\t\t\t\t\t\tWrapper={Section}\r\n\t\t\t\t\t\t\t\t\t\tContent={() => }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\r\n \r\n\t\t\t\t\t\t\t{isFilled(pageModel.EstimatedDuration) && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n {isFilled(pageModel.AssessmentEstimatedDuration) && (\r\n \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{pageModel.AssessmentEstimatedDuration?.Values.map((item: any) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n \r\n )}\r\n {isFilled(pageModel.LearningOpportunityEstimatedDuration) && (\r\n \r\n \r\n\t\t\t\t\t\t\t\t\t{pageModel.LearningOpportunityEstimatedDuration?.Values.map((item: any) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n \r\n\t\t\t\t\t\t\t)}\r\n\r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n
    \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\r\n \r\n {pageModel.ProcessStandards && (\r\n \r\n )} \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Administration Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.AdministrationProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Appeal Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.AppealProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Development Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.DevelopmentProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Maintenance Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.MaintenanceProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Complaint Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.ComplaintProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Review Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.ReviewProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Revocation Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.RevocationProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\r\n \r\n
    \r\n
    \r\n\t);\r\n\r\n}\r\n\r\nconst DurationProfileSourceWrapper = styled.div`\r\n\t& .truncatedList {\r\n\t\tpadding-left: 25px;\r\n\t}\r\n`;","export default __webpack_public_path__ + \"static/media/icon-assessments-white-green-01.fcad5ff1.svg\";","export default __webpack_public_path__ + \"static/media/icon-scoring-method-blue-green-01.006bd738.svg\";","export default __webpack_public_path__ + \"static/media/icon-example-blue-green-01.6ec802ec.svg\";","import React from 'react';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { Description, Label, Section } from '../../components/DetailPage/styles';\r\nimport {\r\n\tModalType,\r\n} from '../../types/internal';\r\nimport {\r\n\tAssessment,\r\n\tLearningOpportunity,\r\n} from '../../types/external';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { Button } from '../../components/common';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport ValueProfileList from '../../components/DetailPage/ValueProfile';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport DisplayPills from '../../components/PillDisplay';\r\n\r\ninterface Props {\r\n item: Assessment | LearningOpportunity;\r\n openedModal?: ModalType;\r\n onOpenModalClick: (modalType: ModalType) => () => void;\r\n onCloseModalClick: () => void;\r\n}\r\n\r\n// This is split out because we need to render it a second time on mobile devices.\r\nexport default function AboutDetail(props: Props) {\r\n const item = props.item;\r\n\r\n return (\r\n <>\r\n {item.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {isFilled(item.AudienceType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n {isFilled(item.AudienceLevelType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n {item.AssessmentMethodDescription && (\r\n
    {item.AssessmentMethodDescription}
    \r\n )}\r\n {isFilled(item.AssessmentMethodType) && (\r\n \r\n )}\r\n
    \r\n \r\n \r\n \r\n \r\n {item.DeliveryTypeDescription && (\r\n
    {item.DeliveryTypeDescription}
    \r\n )}\r\n {isFilled(item.DeliveryType) && (\r\n \r\n )}\r\n
    \r\n \r\n\r\n {isFilled((item as Assessment).AssessmentUseType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {item.LearningMethodDescription && (\r\n
    {item.LearningMethodDescription}
    \r\n )}\r\n \r\n
    \r\n\t\t\t \r\n\r\n\t\t\t{isFilled(item.ScheduleTimingType\t) && (\r\n \r\n \r\n \r\n \r\n )}\r\n\t\t\t{isFilled(item.OfferFrequencyType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n\t\t\t{isFilled(item.ScheduleFrequencyType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {isFilled((item as LearningOpportunity).DegreeConcentration) && (\r\n
    \r\n \r\n \r\n
    \r\n )}\r\n \r\n \r\n\t\t\t\t\t\r\n {item.CreditUnitTypeDescription && (\r\n \r\n {item.CreditUnitTypeDescription}\r\n \r\n )} \r\n \t\t\t\t\t }\r\n\t\t\t\t\t/>\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useContext, useEffect, useState } from 'react';\r\nimport { ModalType } from '../../types/internal';\r\nimport {\r\n\tAssessment,\r\n\tLearningOpportunity,\r\n\tConditionManifest,\r\n\tCostManifest\r\n} from '../../types/external';\r\nimport PageSection from '../PageSection';\r\nimport PageSectionItem from '../PageSectionItem';\r\nimport costIcon from '../../assets/images/icons/icon-costs-and-time-blue-green-01.svg';\r\nimport { Label, Section } from './styles';\r\nimport { Button } from '../common';\r\nimport { ModalButtonAndWindow } from '../Modal';\r\nimport { isFilled } from '../../validation';\r\nimport FinancialAssistance from './FinancialAssistance';\r\nimport HasAnyFilled from '../HasAnyFilled';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from './ConditionProfile';\r\nimport ConditionManifestList from './ConditionManifest';\r\nimport CostManifestList from './CostManifest';\r\nimport CostProfileList from './CostProfile';\r\n\r\ninterface Props {\r\n item: Assessment | LearningOpportunity;\r\n openedModal?: ModalType;\r\n onOpenModalClick: (modalType: ModalType) => () => void;\r\n\tonCloseModalClick: () => void;\r\n\tpageSectionDescription?: string;\r\n}\r\n\r\nexport default function CostsAndTimePageSection(props: Props) {\r\n const [openedModal, setOpenedModal] = useState();\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n return (\r\n \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{(props.item.CommonCosts?.length > 0 || props.item.EstimatedCost?.length > 0 || props.item.FinancialAssistance?.length > 0) &&\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t 0 ? \"Specific Costs\" : \"Costs\")}\r\n\t\t\t\t\t\t\tresourceTitle={props.item.Name}\r\n\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\titems={props.item.EstimatedCost}\r\n\t\t\t\t\t\t\tWrapper={Section}\r\n\t\t\t\t\t\t\tContent={() => }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n {isFilled(props.item.EstimatedDuration) && (\r\n \r\n \r\n
    \r\n {props.item.EstimatedDuration.map((item, index) => (\r\n
    \r\n

    \r\n Estimated: \r\n {item.DurationSummary}\r\n

    \r\n

    {item.Description}

    \r\n
    \r\n ))}\r\n
    \r\n
    \r\n )}\r\n
    \r\n \r\n );\r\n}\r\n","import styled from 'styled-components/macro';\r\n\r\nexport const TogglerButton = styled.button`\r\n background: none;\r\n border: 0 none;\r\n bottom: 0;\r\n box-shadow: none;\r\n color: ${(p) => p.theme.color.brown};\r\n text-align: left;\r\n padding: 5px 0;\r\n`;\r\n\r\nexport const ExpandableP = styled.p`\r\n margin-bottom: 0;\r\n`;\r\n","import React, { useState } from 'react';\r\nimport { TogglerButton, ExpandableP } from './styles';\r\n\r\ninterface Props {\r\n text: string;\r\n}\r\nexport default function ExpandableText({ text }: Props) {\r\n const [showMore, setShowMore] = useState(false);\r\n\r\n const isExpandable = text.length > 300;\r\n return (\r\n
    \r\n {isExpandable ? (\r\n <>\r\n {showMore ? (\r\n {text}\r\n ) : (\r\n \r\n {text.substring(0, 300) + '...'}\r\n \r\n )}\r\n setShowMore(!showMore)}>\r\n {showMore ? 'Show less' : 'Show more'}\r\n \r\n \r\n ) : (\r\n

    {text}

    \r\n )}\r\n
    \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport {\r\n MobileAboutDetail,\r\n Description,\r\n Label,\r\n Wrapper,\r\n Inline,\r\n InlineLabel,\r\n Section,\r\n} from '../../components/DetailPage/styles';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport assessmentIcon from '../../assets/images/icons/icon-assessments-white-green-01.svg';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\n\r\nimport scoringIcon from '../../assets/images/icons/icon-scoring-method-blue-green-01.svg';\r\nimport exampleIcon from '../../assets/images/icons/icon-example-blue-green-01.svg';\r\nimport processIcon from '../../assets/images/icons/icon-process-blue-green-01.svg';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useMediaQuery, useGet } from '../../hooks';\r\nimport { ModalType } from '../../types/internal';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { Assessment, ProcessProfile } from '../../types/external';\r\nimport { isFilled } from '../../validation';\r\nimport AboutDetail from './AboutDetail';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport QualityAssurancePageSection from '../../components/DetailPage/QualityAssurancePageSection';\r\nimport LocationPageSection from '../../components/DetailPage/LocationPageSection';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport CostsAndTimePageSection from '../../components/DetailPage/CostsAndTimePageSection';\r\nimport ExpandableText from '../../components/ExpandableText';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport ConnectionsSection from '../../components/DetailPage/ConnectionsSection';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faExternalLinkAlt } from '@fortawesome/free-solid-svg-icons';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport ProcessProfileList from '../../components/DetailPage/ProcessProfile';\r\nimport { OutcomesDataPageSectionItem } from '../../components/DetailPage/OutcomesDataPageSection';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function AssessmentPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n assessmentDataIsLoading,\r\n assessmentDataHasError,\r\n getAssessmentData,\r\n ] = useGet();\r\n const [pageModel, setAssessment] = useState({} as Assessment);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n const [openedModal, setOpenedModal] = useState();\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n\r\n useEffect(() => {\r\n getAssessmentData(`${apiUrl}/assessment/${id}`, (data: Assessment) => {\r\n\t\t\tsetAssessment(data);\r\n\t\t\trenderJSONLDMetaTags(data, \"Assessment\");\r\n });\r\n }, [getAssessmentData, id]);\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(pageModel.CTDLTypeLabel, \"Assessment\");\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {pageModel.Description && (\r\n \r\n {pageModel.Description}\r\n \r\n )}\r\n \r\n\t\t\t\t\t\t\t\t\t{pageModel.AvailableOnlineAt?.length > 0 &&\r\n\t\t\t\t\t\t\t\t\t\tpageModel.AvailableOnlineAt.map((url) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t}\r\n {pageModel.SubjectWebpage &&\r\n\t\t\t\t\t\t\t\t\t\t\r\n }\r\n {pageModel.InCatalog &&\r\n \r\n }\r\n\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n {isMobile && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n \r\n \r\n {/* TODO: connections can be other than connection profiles, need to change to a connections wrapper (like CostsAndTimePageSection), and then separate sections */}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t \r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\r\n \r\n \r\n {pageModel.ScoringMethodDescription && (\r\n \r\n )}\r\n {pageModel.ScoringMethodType && (\r\n
    \r\n \r\n
    \r\n )}\r\n {pageModel.ScoringMethodExample && (\r\n \r\n )}\r\n {pageModel.IsNonCredit !== undefined && pageModel.IsNonCredit == true && (\r\n \r\n Is Non-Credit :\r\n
    \r\n {pageModel.IsNonCredit\r\n ? 'true'\r\n : 'false'}\r\n
    \r\n
    \r\n )}\r\n {pageModel.IsProctored !== undefined && (\r\n \r\n Proctored :\r\n
    \r\n {pageModel.IsProctored\r\n ? 'true'\r\n : 'false'}\r\n
    \r\n
    \r\n )}\r\n {pageModel.HasGroupEvaluation !==\r\n undefined && (\r\n \r\n \r\n Group Evaluation :\r\n \r\n
    \r\n {pageModel.HasGroupEvaluation\r\n ? 'true'\r\n : 'false'}\r\n
    \r\n
    \r\n )}\r\n {pageModel.HasGroupParticipation !==\r\n undefined && (\r\n \r\n \r\n Group Participation :\r\n \r\n
    \r\n {pageModel.HasGroupParticipation\r\n ? 'true'\r\n : 'false'}\r\n
    \r\n
    \r\n )}\r\n
    \r\n
    \r\n \r\n \r\n\t\t\t\t\t\t\r\n {pageModel.AssessmentOutput && (\r\n
    \r\n {/* */}\r\n \r\n
    \r\n )}\r\n {pageModel.AssessmentExample && (\r\n \r\n \r\n \r\n )} \r\n
    \r\n \r\n \r\n\t\t\t\t\t\t\r\n \r\n {pageModel.ExternalResearch && (\r\n
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n
    \r\n )}\r\n {pageModel.ProcessStandards && (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Administration Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.AdministrationProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\tmodalTitle=\"Development Process\"\r\n\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\titems={[]}\r\n\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.DevelopmentProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t/>\r\n \r\n \r\n \r\n
    \r\n\t\t\t\t\t\r\n
    \r\n
    \r\n \r\n );\r\n function TextItem(props: { label: string, item: string }) {\r\n return (props.item &&\r\n \r\n {props.label}\r\n
    {props.item}
    \r\n
    \r\n ) || null\r\n }\r\n}\r\n","export default __webpack_public_path__ + \"static/media/icon-learning-opportunities-white-green-01.13923617.svg\";","import React, { useContext, useRef, useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport {\r\n MobileAboutDetail,\r\n Description,\r\n Wrapper,\r\n Inline,\r\n InlineLabel,\r\n Section,\r\n} from '../../components/DetailPage/styles';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport opportunityIcon from '../../assets/images/icons/icon-learning-opportunities-white-green-01.svg';\r\nimport courseIcon from '../../assets/images/UpdatedIcons/CE-Icon_3-Course_Blue-Green_High-Res.png';\r\nimport learningProgramIcon from '../../assets/images/UpdatedIcons/CE-Icon_3-Course_Blue-Green_High-Res.png';\r\n\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useMediaQuery, useGet } from '../../hooks';\r\nimport { ModalType } from '../../types/internal';\r\nimport { LearningOpportunity } from '../../types/external';\r\nimport { isFilled } from '../../validation';\r\nimport AboutDetail from '../AssessmentPage/AboutDetail';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport QualityAssurancePageSection from '../../components/DetailPage/QualityAssurancePageSection';\r\nimport LocationPageSection from '../../components/DetailPage/LocationPageSection';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport CostsAndTimePageSection from '../../components/DetailPage/CostsAndTimePageSection';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport ConnectionsSection from '../../components/DetailPage/ConnectionsSection';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faExternalLinkAlt } from '@fortawesome/free-solid-svg-icons';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport { OutcomesDataPageSectionItem } from '../../components/DetailPage/OutcomesDataPageSection';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText, widgetReplacePluralLabelInText } from '../../utils/SiteWidgetizer';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from '../../components/DetailPage/ConditionProfile';\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function LearningOpportunityPage(\r\n props: RouteComponentProps,\r\n) {\r\n const id = props.match.params.id;\r\n const [\r\n opportunityDataIsLoading,\r\n opportunityDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [opportunity, setOpportunity] = useState({} as LearningOpportunity);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n const [openedModal, setOpenedModal] = useState();\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n\r\n useEffect(() => {\r\n getPageData(\r\n `${apiUrl}/learningopportunity/${id}`,\r\n (data: LearningOpportunity) => {\r\n\t\t\t\tsetOpportunity(data);\r\n\t\t\t\trenderJSONLDMetaTags(data, \"LearningOpportunity\");\r\n },\r\n );\r\n }, [getPageData, id]);\r\n\r\n var typeLabel = widgetGetSingleLabelForText(opportunity.CTDLTypeLabel, \"Learning Opportunity\");\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {opportunity.Description && (\r\n \r\n {opportunity.Description}\r\n \r\n )}\r\n \r\n {opportunity.AvailableOnlineAt?.length > 0 &&\r\n opportunity.AvailableOnlineAt.map((url) => {\r\n \r\n })\r\n }\r\n {opportunity.SubjectWebpage &&\r\n \r\n }\r\n {opportunity.InCatalog &&\r\n \r\n }\r\n {opportunity.IsNonCredit !== undefined && opportunity.IsNonCredit == true && (\r\n \r\n Is Non-Credit :\r\n
    \r\n {opportunity.IsNonCredit\r\n ? 'true'\r\n : 'false'}\r\n
    \r\n
    \r\n )}\r\n
    \r\n\t\t\t\t\t\t\t\r\n \r\n \r\n {isMobile && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t }\r\n />\r\n }\r\n />\r\n }\r\n />\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t \r\n \r\n \r\n\t\t\t\t\t\r\n \r\n \r\n
    \r\n \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport axios from 'axios';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport styled from 'styled-components/macro';\r\nimport Error from '../../components/Error';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\n\r\ninterface Props {\r\n\tid: string;\r\n\tcompetencyCTID?: string;\r\n}\r\n\r\nexport default function CompetencyFrameworkPage(\r\n props: RouteComponentProps,\r\n) {\r\n\tconst id = props.match.params.id;\r\n\tconst paramSearch = (props.location.search || \"\").replace(\"?\", \"&\");\r\n const [loading, setLoading] = useState(false);\r\n const [pageContent, setPageContent] = useState(' ');\r\n const [error, setError] = useState(false);\r\n\r\n\tconsole.log(\"Router props\", props);\r\n\r\n useEffect(() => {\r\n setLoading(true);\r\n\t\tconst url = `${legacySourceUrl}/competencyframework/${id}?coreonly=true` + paramSearch;\r\n axios\r\n .get(url)\r\n .then((res) => {\r\n setPageContent(res.data);\r\n setLoading(false);\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n setError(true);\r\n setLoading(false);\r\n });\r\n }, []);\r\n if (loading) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n if (error) {\r\n return ;\r\n }\r\n return ;\r\n}\r\n\r\nconst LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;\r\n","import React, { ReactNode, useEffect, useState } from 'react';\r\nimport { renderToString } from 'react-dom/server';\r\nimport styled from 'styled-components/macro';\r\nimport { apiUrl, appBaseName, appURL, registryURL } from '../../shared/globals';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { CompetencyFramework as CompetencyFrameworkType, Competency as CompetencyType, Outline, Link, IdentifierValue, AJAXSettings } from '../../types/external';\r\nimport { Concept } from '../ConceptSchemePage';\r\nimport competenciesbannerIcon from '../../assets/images/icons/icon-competencies-white-green-01.svg';\r\nimport competenciesIcon from '../../assets/images/icons/icon-competencies-blue-green-01.svg';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport {\r\n\tWrapper,\r\n\tFullWidthWrapper,\r\n\tInnerWrapper,\r\n\tDescription,\r\n\tLabel,\r\n\tSection\r\n} from '../../components/DetailPage/styles';\r\nimport { VStack } from '../../components/Stack';\r\nimport PageSection from '../../components/PageSection';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport RelatedOrganizationPageSection, { RelatedOrganizationPageSectionAJAXResourceList } from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport { getResourceByURI, englishOrNull, createKeywordSearchLink, getAndRenderByURL, getResourceByURLWithoutState, createReferenceFrameworkFromCredentialAlignmentObject, addResourceToCache } from '../../components/GetResourceByURI';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport { CompetencyFramework } from '../../components/DetailPage/CompetencyFramework';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faAngleDown, faAngleRight } from '@fortawesome/free-solid-svg-icons';\r\nimport ConnectionsSectionForDSP, { DSPConnection } from '../../components/DetailPage/ConnectionsSectionForDSP';\r\nimport { renderCompetencyFromRDF, CompetencyStyleBlock } from '../../components/DetailPage/Competency';\r\nimport AJAXResourceList, { getDetailPageHeaderModifiedDate, OutlineStyleBlock, renderOutline } from '../../components/AJAXResourceList';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { LinkItem } from '../../components/DetailPage/Shared';\r\n\r\n\r\ninterface Props {\r\n\tid: string;\r\n\ttargetCTID?: string;\r\n}\r\n\r\nexport default function CompetencyFrameworkPageV2(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [dataIsLoading, setDataIsLoading] = useState(true);\r\n\tconst [hasError, setHasError] = useState(false);\r\n\tconst [competencyFramework, setCompetencyFramework] = useState({} as CompetencyFrameworkType);\r\n\tconst [competencies, setCompetencies] = useState([] as Array);\r\n\tconst [localAJAXCache, setLocalAJAXCache] = useState([] as Array); //Used to trick react into re-rendering the data\r\n\tconst [relatedItems, setRelatedItems] = useState([] as Array);\r\n\tconst [relatedItemsMap, setRelatedItemsMap] = useState([] as Array);\r\n\tconst [rawCompetencyFramework, setRawCompetencyFramework] = useState({} as any);\r\n\tconst [relatedWorkRoles, setRelatedWorkRoles] = useState({} as AJAXSettings);\r\n\r\n\t//This is so backwards I hate this\r\n\tconst [publicationStatusText, setPublicationStatusText] = useState(\"\");\r\n\r\n\tuseEffect(() => {\r\n\r\n\t\tgetResourceByURI(`${apiUrl}/dsp_competencyframework/${id}?includeRelatedResources=true&perBranchLimit=20`, setLocalAJAXCache, null,\r\n\t\t\t(loaded: any) => {\r\n\t\t\t\tvar data = loaded.Result;\r\n\t\t\t\trenderJSONLDMetaTags(data.Resource, \"CompetencyFramework\");\r\n\t\t\t\tsetRawCompetencyFramework(loaded.Result.Resource); //Takes extra rendering cycles for some stupid reason so double assign it\r\n\t\t\t\tsetDataIsLoading(false);\r\n\t\t\t\tsetCompetencyFramework(convertDataToCompetencyFramework(data.Resource || { \"ceasn:name\": \"Missing Competency Framework\", \"ceasn:description\": \"Unable to find data for identifier: \" + id }, data.Metadata));\r\n\t\t\t\tsetCompetencies(data.RelatedItems?.filter((m: any) => { return m && m[\"ceasn:isPartOf\"] == data?.Resource?.[\"@id\"] }).map((m: CompetencyType) => { return convertDataToCompetency(m) }) || []);\r\n\t\t\t\tsetRelatedItems(data.RelatedItems);\r\n\t\t\t\tsetRelatedItemsMap(data.RelatedItemsMap);\r\n\t\t\t\tdata.RelatedItems?.forEach((item: any) => {\r\n\t\t\t\t\tif (item[\"@id\"]) {\r\n\t\t\t\t\t\taddResourceToCache(item[\"@id\"], item);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tconsole.log(\"DSP Data\", { Framework: competencyFramework, Competencies: competencies, Map: data.RelatedItemsMap, Related: data.RelatedItems });\r\n\r\n\t\t\t\tif (competencyFramework.PublicationStatusType) {\r\n\t\t\t\t\tgetResourceByURLWithoutState(competencyFramework.PublicationStatusType, null, (success: any) => {\r\n\t\t\t\t\t\tsetPublicationStatusText(englishOrNull(success?.[\"@graph\"]?.[0]?.[\"skos:prefLabel\"]));\r\n\t\t\t\t\t\tconsole.log(publicationStatusText);\r\n\t\t\t\t\t}, (error: any) => {\r\n\t\t\t\t\t\tsetPublicationStatusText(\"Error loading Status: \" + competencyFramework.PublicationStatusType);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\t(Array.from(competencyFramework.Meta_JSON?.[\"ceasn:conceptTerm\"] || [])).forEach((uri: any) => { //Array.from is only used here because TypeScript will not get out of my way without it\r\n\t\t\t\t\tgetResourceByURLWithoutState(uri, null, (success: any) => {\r\n\t\t\t\t\t\tcompetencyFramework.ConceptTerm.push(createKeywordSearchLink(\"competencyframework\", englishOrNull(success[\"skos:prefLabel\"])) as Link);\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\t(error: any) => {\r\n\t\t\t\tsetHasError(true);\r\n\t\t\t\tconsole.log(\"Error loading data: \", error);\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tnew URLSearchParams(window.location.search).forEach(function (value: string, key: string) {\r\n\t\t\tif (key.toLowerCase() == \"competencyctid\" || key.toLowerCase() == \"targetctid\") {\r\n\t\t\t\tconsole.log(\"Jumping to CTID\", value.toLowerCase());\r\n\t\t\t\tjumpToCompetencyCTID(value.toLowerCase(), 0);\r\n\t\t\t}\r\n\t\t});\r\n\t}, [id, localAJAXCache]);\r\n\r\n\tfunction jumpToCompetencyCTID(targetCTID: string, attempts: number) {\r\n\t\tsetTimeout(function () {\r\n\t\t\tvar element = document.getElementById(targetCTID);\r\n\t\t\tif (element && element.getElementsByClassName(\"competencyContent\").length > 0) {\r\n\t\t\t\telement.scrollIntoView();\r\n\t\t\t}\r\n\t\t\telse if (attempts <= 10) {\r\n\t\t\t\tjumpToCompetencyCTID(targetCTID, attempts + 1);\r\n\t\t\t}\r\n\t\t}, 500);\r\n\t}\r\n\r\n\tfunction convertDataToCompetencyFramework(resource: any, metadata: any): CompetencyFrameworkType {\r\n\t\treturn {\r\n\t\t\tBroadType: \"CompetencyFramework\",\r\n\t\t\tCTDLType: \"ceasn:CompetencyFramework\",\r\n\t\t\tCTDLTypeLabel: \"Competency Framework\",\r\n\t\t\tMeta_Id: id,\r\n\t\t\tMeta_Language: resource[\"ceasn:inLanguage\"]?.[0] || \"en\",\r\n\t\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\t\tMeta_LastUpdated: metadata?.DateModified || \"Unknown\",\r\n\t\t\tMeta_LastUpdatedHeader: getDetailPageHeaderModifiedDate(metadata?.DateModified),\r\n\t\t\tName: englishOrNull(resource[\"ceasn:name\"]),\r\n\t\t\tDescription: englishOrNull(resource[\"ceasn:description\"]),\r\n\t\t\tSource: resource[\"ceasn:source\"],\r\n\t\t\tInLanguage: resource[\"ceasn:inLanguage\"],\r\n\t\t\tConceptKeyword: englishOrNull(resource[\"ceasn:conceptKeyword\"])?.map((m: string) => { return createKeywordSearchLink(\"competencyframework\", m) }),\r\n\t\t\t//ConceptTerm: resource[\"ceasn:conceptTerm\"]?.map((m: string) => { return createKeywordSearchLink(\"competencyframework\", englishOrNull(m)) }),\r\n\t\t\tConceptTerm: [] as Array,\r\n\t\t\tInstructionalProgramType: resource[\"ceterms:instructionalProgramType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tIndustryType: resource[\"ceterms:industryType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tOccupationType: resource[\"ceterms:occupationType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tHasProgressionModel: resource[\"asn:hasProgressionModel\"], //Should use the same data conversion process as concept schemes\r\n\t\t\tLocalSubject: resource[\"ceasn:localSubject\"]?.map((m: string) => { return createKeywordSearchLink(\"competencyframework\", englishOrNull(m)) }),\r\n\t\t\tCreator: resource[\"ceasn:creator\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) }),\r\n\t\t\tAlignFrom: resource[\"ceasn:alignFrom\"],\r\n\t\t\tAlignTo: resource[\"ceasn:alignTo\"],\r\n\t\t\tDerivedFrom: resource[\"ceasn:derivedFrom\"],\r\n\t\t\tDateCreated: resource[\"ceasn:dateCreated\"],\r\n\t\t\tDateCopyrighted: resource[\"ceasn:dateCopyrighted\"],\r\n\t\t\tDateModified: resource[\"ceasn:dateModified\"],\r\n\t\t\tDateValidFrom: resource[\"ceasn:dateValidFrom\"],\r\n\t\t\tDateValidUntil: resource[\"ceasn:dateValidUntil\"],\r\n\t\t\tLicense: resource[\"ceasn:license\"],\r\n\t\t\tPublicationStatusType: resource[\"ceasn:publicationStatusType\"],\r\n\t\t\tEducationLevelType: resource[\"ceasn:educationLevelType\"],\r\n\t\t\tPublisher: resource[\"ceasn:publisher\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) }),\r\n\t\t\tPublisherName: englishOrNull(resource[\"ceasn:publisherName\"]),\r\n\t\t\tRights: englishOrNull(resource[\"ceasn:rights\"]),\r\n\t\t\tRightsHolder: resource[\"ceasn:rightsHolder\"] && (Array.isArray(resource[\"ceasn:rightsHolder\"]) ? resource[\"ceasn:rightsHolder\"].map(m => getOrganizationOutlineByURI(m)) : [getOrganizationOutlineByURI(resource[\"ceasn:rightsHolder\"])]),\r\n\t\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\t\tHasTopChild: resource[\"ceasn:hasTopChild\"],\r\n\t\t\tLatestVersion: resource[\"ceterms:latestVersion\"],\r\n\t\t\tPreviousVersion: resource[\"ceterms:previousVersion\"],\r\n\t\t\tNextVersion: resource[\"ceterms:nextVersion\"],\r\n\t\t\tVersionIdentifier: createIdentifier(resource[\"ceterms:versionIdentifier\"]),\r\n\t\t\tOwnedByLabel: (resource[\"ceasn:creator\"] || resource[\"ceasn:publisher\"])?.map((m: string) => { return getOrganizationOutlineByURI(m) })?.map((m: any) => { return { Label: m.Label, URL: m.URL } as Link; })[0],\r\n\t\t\tRegistryData: { CTID: resource[\"ceterms:ctid\"], Resource: { URL: resource[\"@id\"], Label: \"View Resource\" }, Envelope: { URL: resource[\"@id\"]?.replace(\"/resources/\", \"/envelopes/\"), Label: \"View Envelope\" } },\r\n\t\t\tMeta_JSON: resource || {}\r\n\t\t} as CompetencyFrameworkType;\r\n\t}\r\n\r\n\tfunction getOrganizationOutlineByURI(uri: string): Outline {\r\n\t\tvar data = getResourceByURI(uri, setLocalAJAXCache).Data;\r\n\t\treturn {\r\n\t\t\tLabel: englishOrNull(data?.[\"ceterms:name\"]) || ,\r\n\t\t\tURL: appURL + \"/organization/\" + uri.split(\"/resources/\")[1],\r\n\t\t\tImage: data?.[\"ceterms:image\"]\r\n\t\t} as Outline;\r\n\t}\r\n\r\n\tvar topCompetencies = competencyFramework.HasTopChild?.length > 0 ? competencyFramework.HasTopChild.map((m) => { return competencies.filter((n) => { return n.CredentialRegistryURL == m })[0] }).filter((m) => { return m }) : competencies;\r\n\tvar renderedCompetencies = [] as Array;\r\n\r\n\tvar referencedByCredentials = getDSPConnectionURIs(new RegExp(\"ceterms:Credential$\"));\r\n\tvar referencedByAssessments = getDSPConnectionURIs(new RegExp(\"ceterms:AssessmentProfile$\"));\r\n\tvar referencedByLearningOpportunities = getDSPConnectionURIs(new RegExp(\"ceterms:LearningOpportunityProfile$\"));\r\n\tvar referencesConceptSchemes = getDSPConnectionURIs(new RegExp(\"skos:ConceptScheme$\"));\r\n\tvar referencedByWorkRoles = getDSPConnectionURIs(new RegExp(\"ceterms:WorkRole$\"));\r\n\tvar referencedByJobs = getDSPConnectionURIs(new RegExp(\"ceterms:Job$\"));\r\n\tvar referencedByOccupations = getDSPConnectionURIs(new RegExp(\"ceterms:Occupation$\"));\r\n\tvar referencedByTasks = getDSPConnectionURIs(new RegExp(\"ceterms:Task$\"));\r\n\r\n\tfunction getDSPConnectionURIs(expression: RegExp): Array {\r\n\t\tvar uris = [] as Array;\r\n\t\tvar matches = relatedItemsMap?.filter(m => { return expression.test(m.Path) }) || [];\r\n\t\tmatches.forEach((match) => {\r\n\t\t\turis = uris.concat(match.URIs?.filter((m: string) => { return uris.indexOf(m) == -1 }) || []);\r\n\t\t});\r\n\t\treturn uris;\r\n\t}\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Competency Framework\");\r\n\r\n\tuseEffect(() => {\r\n\t\tconst ctid = competencyFramework.CTID;\r\n\t\tif (ctid != null) {\r\n\t\t\tvar data = getResourceByURI(`${apiUrl}/GetRelatedResource/${ctid}/34`, setLocalAJAXCache).Data;//WorkRolesEntityTypeId is 34\r\n\t\t\tif (data != null && data.Result) {\r\n\t\t\t\tsetRelatedWorkRoles(data.Result);\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t}, [competencyFramework]);\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{competencyFramework.Description || \"No description available\"}\r\n\t\t\t\t\t\t{competencyFramework.Rights && Rights: {competencyFramework.Rights}}\r\n\t\t\t\t\t\t{competencyFramework.Source?.length > 0 && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{competencyFramework.Source.map((m) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{competencyFramework.PublicationStatusType && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{publicationStatusText && {publicationStatusText}}\r\n\t\t\t\t\t\t\t\t{!publicationStatusText &&
    }\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{competencyFramework.EducationLevelType?.length > 0 && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{competencyFramework.EducationLevelType.map((m) => (\r\n\t\t\t\t\t\t\t\t\tEducation Level Type\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t{/* //TODO: Add this when we have a good way to do so*/}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{competencyFramework.ConceptTerm?.length > 0 && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{(competencyFramework.LatestVersion || competencyFramework.PreviousVersion || competencyFramework.NextVersion) &&\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tThis {typeLabel} contains {competencies.length} Competencies.\r\n\t\t\t\t\t\t\t\t\t m.CredentialRegistryURL)}\r\n\t\t\t\t\t\t\t\t\t\tresources={relatedItems.map(m => { return { URL: m[\"@id\"], Data: m } })}\r\n\t\t\t\t\t\t\t\t\t\tonSuccess={(data, itemContent, listContent) => renderCompetencyFromRDF(data, itemContent, relatedItemsMap, true )}\r\n\t\t\t\t\t\t\t\t\t\tStyleComponent={CompetencyStyleBlock}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t{/*\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t */}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t\t\t\t{(\r\n\t\t\t\t\t\t\t\t\t\t\treferencedByCredentials.length > 0 ||\r\n\t\t\t\t\t\t\t\t\t\t\treferencedByAssessments.length > 0 ||\r\n\t\t\t\t\t\t\t\t\t\t\treferencedByLearningOpportunities.length > 0 ||\r\n\t\t\t\t\t\t\t\t\t\t\treferencesConceptSchemes.length > 0 ||\r\n\t\t\t\t\t\t\t\t\t\t\trelatedWorkRoles.Total > 0 || referencedByTasks.length > 0 || referencedByJobs.length > 0 || referencedByOccupations.length > 0\r\n\t\t\t\t\t\t\t\t\t\t) && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t].filter(m => m.Content != null)}\r\n\t\t\t\t/>\r\n\t\t\t\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction createIdentifier(identifier: Array) {\r\n\treturn (identifier || []).map(source => {\r\n\t\treturn {\r\n\t\t\tIdentifierType: englishOrNull(source[\"ceterms:identifierType\"]),\r\n\t\t\tIdentifierTypeName: englishOrNull(source[\"ceterms:identifierTypeName\"]),\r\n\t\t\tIdentifierValueCode: englishOrNull(source[\"ceterms:identifierValueCode\"]),\r\n\t\t} as IdentifierValue;\r\n\t});\r\n}\r\n\r\nfunction ConnectionsSectionForDSPModal(props: { competencyFramework: CompetencyFrameworkType, uriList: Array, label: string }) {\r\n\treturn props.uriList?.length > 0 && (\r\n\t\t renderOutline(data, itemContent, listContent)}\r\n\t\t\t\tStyleComponent={OutlineStyleBlock}\r\n\t\t\t/>}\r\n\t\t\thideCount={true}\r\n\t\t/>\r\n\t) || null\r\n}\r\n\r\nexport function convertDataToCompetency(resource: any): CompetencyType {\r\n\treturn {\r\n\t\tBroadType: \"Competency\",\r\n\t\tCTDLType: \"ceasn:Competency\",\r\n\t\tCTDLTypeLabel: \"Competency\",\r\n\t\tMeta_Language: resource[\"ceasn:inLanguage\"]?.[0] || \"en\",\r\n\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\tCompetencyLabel: englishOrNull(resource[\"ceasn:competencyLabel\"]),\r\n\t\tCompetencyText: englishOrNull(resource[\"ceasn:competencyText\"]),\r\n\t\tCompetencyCategory: englishOrNull(resource[\"ceasn:competencyCategory\"]),\r\n\t\tComment: englishOrNull(resource[\"ceasn:comment\"]),\r\n\t\tListID: resource[\"ceasn:listID\"],\r\n\t\tCodedNotation: resource[\"ceasn:codedNotation\"],\r\n\t\tHasChild: resource[\"ceasn:hasChild\"],\r\n\t\tMeta_JSON: resource\r\n\t} as CompetencyType;\r\n}\r\n\r\nexport function CompetencyListManual(props: { topCompetencies: Array, allCompetencies: Array | null, relatedItems: Array, renderedCompetencies: Array, setLocalAJAXCache: React.Dispatch> }) {\r\n\tuseEffect(() => {\r\n\t\tvar container = document.getElementById(\"mainCompetencyBox\");\r\n\t\tif (container && Array.from(container.classList).indexOf(\"rendered\") == -1) {\r\n\t\t\tcontainer.classList.add(\"rendered\");\r\n\t\t\tprops.topCompetencies.forEach((competency) => {\r\n\t\t\t\trenderCompetency(competency, props.allCompetencies, props.relatedItems, props.renderedCompetencies, container, props.setLocalAJAXCache);\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t
    \r\n\t\t\r\n\t)\r\n}\r\n\r\nexport function renderCompetency(competency: CompetencyType, allCompetencies: Array | null, relatedItems: Array, renderedCompetencies: Array, container: any, setLocalAJAXCache: React.Dispatch>) {\r\n\tif (competency && renderedCompetencies.indexOf(competency) == -1) {\r\n\t\trenderedCompetencies.push(competency);\r\n\t\t//Render the competency div immediately so that competencies always render in the correct order\r\n\t\tvar wrapper = document.createElement(\"div\");\r\n\t\twrapper.classList.add(\"competency\");\r\n\t\twrapper.id = competency.CTID;\r\n\t\twrapper.dataset.ctid = competency.CTID;\r\n\t\tcontainer.appendChild(wrapper);\r\n\t\twrapper.innerHTML = renderToString(ActivityIndicator({ size: \"sm\" }));\r\n\r\n\t\t//Asynchronously render the contents of the competency div\r\n\t\tsetTimeout(function () {\r\n\t\t\t//Main Content\r\n\t\t\twrapper.innerHTML = renderToString(\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{competency.CompetencyCategory && {competency.CompetencyCategory}}\r\n\t\t\t\t\t\t\t{competency.ListID && {competency.ListID}}\r\n\t\t\t\t\t\t\t{competency.CodedNotation && {competency.CodedNotation}}\r\n\t\t\t\t\t\t\t{competency.Meta_JSON[\"ceasn:altCodedNotation\"] && {competency.Meta_JSON[\"ceasn:altCodedNotation\"]}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{competency.CompetencyLabel && {competency.CompetencyLabel}}\r\n\t\t\t\t\t\t\t{competency.CompetencyText && {competency.CompetencyText}}\r\n\t\t\t\t\t\t\t{competency.Comment?.length > 0 && {competency.Comment.map((m) => (
    {m}
    ))}
    }\r\n\t\t\t\t\t\t\t{competency.CTID?.length > 0 && CTID: {competency.CTID}}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\r\n\t\t\t//Interaction - wire this up first so it doesn't impact child competencies\r\n\t\t\tArray.from(wrapper?.querySelectorAll(\".competencyExtraListWrapper\") || []).forEach(function (item) {\r\n\t\t\t\titem.querySelector(\".competencyExtraListSummaryButton\")?.addEventListener(\"click\", function () {\r\n\t\t\t\t\titem.classList.contains(\"expanded\") ? item.classList.remove(\"expanded\") : item.classList.add(\"expanded\");\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t//Lookups for referenced data\r\n\t\t\tvar references = Array.from(wrapper?.querySelectorAll(\"[data-lookup\") || []);\r\n\t\t\treferences.forEach((item: any) => {\r\n\t\t\t\tif (!item.classList.contains(\"loaded\")) {\r\n\t\t\t\t\tgetAndRenderByURL(item.dataset.lookup, relatedItems, { \"ceasn:competencyText\": { \"en\": \"Error loading competency: \" + item.dataset.lookup } }, (competency: any) => {\r\n\t\t\t\t\t\titem.classList.add(\"loaded\");\r\n\t\t\t\t\t\titem.innerHTML = englishOrNull(competency[\"ceasn:competencyText\"]) || \"Error: No competency text: \" + item.dataset.lookup;\r\n\t\t\t\t\t\tvar isPartOf = competency[\"ceasn:isPartOf\"];\r\n\t\t\t\t\t\tvar isMemberOf = competency[\"ceterms:isMemberOf\"];\r\n\t\t\t\t\t\tif (isPartOf || isMemberOf) {\r\n\t\t\t\t\t\t\tvar containerURI = isPartOf || isMemberOf || null;\r\n\t\t\t\t\t\t\tvar containerURLPart = isPartOf ? \"competencyframework\" : isMemberOf ? \"collection\" : \"resources\";\r\n\t\t\t\t\t\t\tvar itemCTIDTarget = isPartOf ? \"competencyCTID=\" : isMemberOf ? \"memberCTID=\" : \"targetCTID=\";\r\n\t\t\t\t\t\t\tvar urlFirstPart = getFinderDomainFromRegistryURL(isPartOf) || appURL;\r\n\r\n\t\t\t\t\t\t\titem.href = urlFirstPart + \"/\" + containerURLPart + \"/ce-\" + containerURI.split(\"/ce-\")[1] + \"?\" + itemCTIDTarget + \"=\" + competency[\"ceterms:ctid\"];\r\n\t\t\t\t\t\t\tgetAndRenderByURL(isPartOf, relatedItems, { \"ceterms:name\": { \"en\": \"Error loading resource: \" + isPartOf } }, (container: any) => {\r\n\t\t\t\t\t\t\t\tvar containerNode = document.createElement(\"a\");\r\n\t\t\t\t\t\t\t\tcontainerNode.innerHTML = englishOrNull(container[\"ceasn:name\"]) || englishOrNull(container[\"ceterms:name\"]) || \"Unknown Resource\";\r\n\t\t\t\t\t\t\t\tcontainerNode.href = urlFirstPart + \"/\" + containerURLPart + \"/\" + container[\"ceterms:ctid\"];\r\n\t\t\t\t\t\t\t\tcontainerNode.target = \"_blank\";\r\n\t\t\t\t\t\t\t\titem.parentNode.insertBefore(containerNode, item);\r\n\t\t\t\t\t\t\t\tvar separator = document.createTextNode(\" | \");\r\n\t\t\t\t\t\t\t\titem.parentNode.insertBefore(separator, item);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t//Children\r\n\t\t\tif (competency.HasChild?.length > 0 && (allCompetencies || []).length > 0) {\r\n\t\t\t\tvar children = document.createElement(\"div\");\r\n\t\t\t\tchildren.classList.add(\"competencyChildren\");\r\n\t\t\t\twrapper.appendChild(children);\r\n\t\t\t\tcompetency.HasChild.forEach((childURI) => {\r\n\t\t\t\t\trenderCompetency((allCompetencies || []).filter((m) => { return m.CredentialRegistryURL == childURI })[0], allCompetencies, relatedItems, renderedCompetencies, children, setLocalAJAXCache);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t}, 1);\r\n\t}\r\n}\r\n\r\n//Hack\r\nfunction getFinderDomainFromRegistryURL(registryURL: string): string {\r\n\tvar url = registryURL || \"\";\r\n\treturn url.includes(\"sandbox.credentialengineregistry.org\") ? \"https://sandbox.credentialengine.org/finder\" :\r\n\t\turl.includes(\"staging.credentialengineregistry.org\") ? \"https://staging.credentialengine.org/finder\" :\r\n\t\t\turl.includes(\"localhost\") ? \"http://localhost:3000\" :\r\n\t\t\t\t\"https://credentialfinder.org\";\r\n}\r\n\r\nfunction CompetencyAlignmentList(props: { source: CompetencyType, relatedItems: Array }) {\r\n\tvar competencyAlignments = [] as Array;\r\n\tvar alignmentTypes = [\r\n\t\t{ label: \"Exact Alignment\", property: \"ceasn:exactAlignment\" },\r\n\t\t{ label: \"Prerequisite Alignment\", property: \"ceasn:prerequisiteAlignment\" },\r\n\t\t{ label: \"Broad Alignment\", property: \"ceasn:broadAlignment\" },\r\n\t\t{ label: \"Narrow Alignment\", property: \"ceasn:narrowAlignment\" },\r\n\t\t{ label: \"Major Alignment\", property: \"ceasn:majorAlignment\" },\r\n\t\t{ label: \"Minor Alignment\", property: \"ceasn:minorAlignment\" },\r\n\t\t{ label: \"Knowledge Embodied\", property: \"ceasn:knowledgeEmbodied\" },\r\n\t\t{ label: \"Skill Embodied\", property: \"ceasn:skillEmbodied\" },\r\n\t\t{ label: \"Ability Embodied\", property: \"ceasn:abilityEmbodied\" },\r\n\t\t{ label: \"Align To\", property: \"ceasn:alignTo\" },\r\n\t\t{ label: \"Align From\", property: \"ceasn:alignFrom\" },\r\n\t\t{ label: \"Cross Subject Reference\", property: \"ceasn:crossSubjectReference\" },\r\n\t\t{ label: \"Is Version Of\", property: \"ceasn:isVersionOf\" },\r\n\t];\r\n\r\n\talignmentTypes.forEach(type => {\r\n\t\tvar value = props.source.Meta_JSON[type.property] || [];\r\n\t\tvar list = Array.isArray(value) ? value : [value];\r\n\t\tlist.forEach((alignment: string) => {\r\n\t\t\tvar match = props.relatedItems.filter(item => {\r\n\t\t\t\treturn item[\"@id\"] == alignment\r\n\t\t\t})[0];\r\n\r\n\t\t\tif (!match && alignment.indexOf(\"credentialengineregistry.org/resources/\") > -1) {\r\n\t\t\t\tcompetencyAlignments.push({\r\n\t\t\t\t\tlookup: alignment,\r\n\t\t\t\t\talignmentPrefix: \"\",\r\n\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\talignmentPostfix: \":\",\r\n\t\t\t\t\ttargetURL: alignment,\r\n\t\t\t\t\ttargetLabel: <> Loading...\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tvar framework = props.relatedItems.filter(item => { return match?.[\"ceasn:isPartOf\"] == item[\"@id\"] })[0];\r\n\t\t\t\tcompetencyAlignments.push(\r\n\t\t\t\t\tmatch ?\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\talignmentPrefix: \"\",\r\n\t\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\t\talignmentPostfix: \":\",\r\n\t\t\t\t\t\t\ttargetURL: \"/competencyframework/ce-\" + match[\"ceasn:isPartOf\"]?.split(\"/ce-\")[1] + \"?competencyCTID=\" + match[\"ceterms:ctid\"],\r\n\t\t\t\t\t\t\ttargetLabel: englishOrNull(match[\"ceasn:competencyText\"]),\r\n\t\t\t\t\t\t\talignmentFrameworkURL: framework ? \"/competencyframework/\" + framework[\"ceterms:ctid\"] : \"\",\r\n\t\t\t\t\t\t\talignmentFrameworkName: englishOrNull(framework?.[\"ceasn:name\"])\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t:\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\talignmentPrefix: \"External \",\r\n\t\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\t\talignmentPostfix: \":\",\r\n\t\t\t\t\t\t\ttargetURL: alignment,\r\n\t\t\t\t\t\t\ttargetLabel: alignment\r\n\t\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\talignmentTypes.forEach(type => {\r\n\t\tprops.relatedItems.forEach(relatedItem => {\r\n\t\t\tif (relatedItem[type.property]?.indexOf(props.source.Meta_JSON[\"@id\"]) > -1) {\r\n\t\t\t\tvar framework = props.relatedItems.filter(item => { return relatedItem[\"ceasn:isPartOf\"] == item[\"@id\"] })[0];\r\n\t\t\t\tcompetencyAlignments.push(\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\talignmentPrefix: \"Reverse \",\r\n\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\talignmentPostfix: \" reference from:\",\r\n\t\t\t\t\t\ttargetURL: \"/competencyframework/ce-\" + relatedItem[\"ceasn:isPartOf\"]?.split(\"/ce-\")[1] + \"?competencyCTID=\" + relatedItem[\"ceterms:ctid\"],\r\n\t\t\t\t\t\ttargetLabel: englishOrNull(relatedItem[\"ceasn:competencyText\"]),\r\n\t\t\t\t\t\talignmentFrameworkURL: framework ? \"/competencyframework/\" + framework[\"ceterms:ctid\"] : \"\",\r\n\t\t\t\t\t\talignmentFrameworkName: englishOrNull(framework?.[\"ceasn:name\"])\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\treturn competencyAlignments.length > 0 && (\r\n\t\t (\r\n\t\t\t\t\r\n\t\t\t\t\t{m.alignmentPrefix}{m.alignmentLabel}{m.alignmentPostfix} {m.alignmentFrameworkURL && {m.alignmentFrameworkName}}{m.alignmentFrameworkURL ? \": \" : \"\"}{m.targetLabel}\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t/>\r\n\t) || null\r\n}\r\n\r\nfunction CompetencyTagList(props: { source: CompetencyType, relatedItems: Array }) {\r\n\tvar data = props.source.Meta_JSON;\r\n\tvar tagTypes = [\r\n\t\t{ label: \"Identifier URL\", value: data[\"ceasn:identifier\"]?.length > 0 && , count: data[\"ceasn:identifier\"]?.length },\r\n\t\t{ label: \"Keyword\", value: data[\"ceasn:conceptKeyword\"] && , count: englishOrNull(data[\"ceasn:conceptKeyword\"])?.length },\r\n\t\t{ label: \"Local Subject\", value: data[\"ceasn:localSubject\"] && , count: englishOrNull(data[\"ceasn:localSubject\"])?.length },\r\n\t\t{ label: \"Concept\", value: data[\"ceasn:conceptTerm\"] && , count: data[\"ceasn:conceptTerm\"]?.length },\r\n\t\t{ label: \"Complexity Level\", value: data[\"ceasn:complexityLevel\"] && , count: data[\"ceasn:complexityLevel\"]?.length },\r\n\t\t{ label: \"Education Level Type\", value: data[\"ceasn:educationLevelType\"] && , count: data[\"ceasn:educationLevelType\"]?.length },\r\n\t\t{ label: \"Environmental Hazard Type\", value: data[\"ceterms:environmentalHazardType\"] && , count: data[\"ceasn:environmentalHazardType\"]?.length },\r\n\t\t{ label: \"Performance Level Type\", value: data[\"ceterms:performanceLevelType\"] && , count: data[\"ceasn:performanceLevelType\"]?.length },\r\n\t\t{ label: \"Physical Capability Type\", value: data[\"ceterms:physicalCapabilityType\"] && , count: data[\"ceasn:physicalCapabilityType\"]?.length },\r\n\t\t{ label: \"Sensory Capability Type\", value: data[\"ceterms:sensoryCapabilityType\"] && , count: data[\"ceasn:sensoryCapabilityType\"]?.length }\r\n\t].filter(m => m.value);\r\n\t/*\r\n\treturn tagTypes.length > 0 && (\r\n\t\t (\r\n\t\t\t\t\r\n\t\t\t\t\t{m.label}:\r\n\t\t\t\t\t{m.value}\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t/>\r\n\t) || null\r\n\t*/\r\n\treturn tagTypes.length > 0 && (\r\n\t\t<>\r\n\t\t\t{tagTypes.map((m, index) => (\r\n\t\t\t\t (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{n}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t/>\r\n\t\t\t))}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nfunction CredentialAlignmentObjectSet(props: { source: CompetencyType, property: string, label: string }) {\r\n\tvar alignmentObjects = (props.source.Meta_JSON[props.property] || []) as Array;\r\n\treturn alignmentObjects.length > 0 && (\r\n\t\t (\r\n\t\t\t\t\r\n\t\t\t\t\t{(m[\"ceterms:codedNotation\"] || m[\"ceterms:targetNodeName\"] || m[\"ceterms:targetNode\"]) && (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{m[\"ceterms:codedNotation\"] &&
    {m[\"ceterms:codedNotation\"]}
    }\r\n\t\t\t\t\t\t\t{m[\"ceterms:targetNodeName\"] &&
    {englishOrNull(m[\"ceterms:targetNodeName\"])}
    }\r\n\t\t\t\t\t\t\t{m[\"ceterms:targetNode\"] && {m[\"ceterms:targetNode\"]}}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t)}\r\n\t\t\t\t\t{m[\"ceterms:targetNodeDescription\"] && (\r\n\t\t\t\t\t\t{englishOrNull(m[\"ceterms:targetNodeDescription\"])}\r\n\t\t\t\t\t)}\r\n\t\t\t\t
    \r\n\t\t\t))}\r\n\t\t/>\r\n\t) || null\r\n}\r\n\r\nfunction CompetencySubstantiationList(props: { source: CompetencyType }) {\r\n\tvar substantiationTypes = [\r\n\t\t{ label: \"Inferred Competency\", property: \"ceasn:inferredCompetency\", useFinderURL: false },\r\n\t\t{ label: \"Source Documentation\", property: \"ceasn:sourceDocumentation\", useFinderURL: false },\r\n\t\t{ label: \"Substantiating Competency Framework\", property: \"ceasn:substantiatingCompetencyFramework\", useFinderURL: true },\r\n\t\t{ label: \"Substantiating Credential\", property: \"ceasn:substantiatingCredential\", useFinderURL: true },\r\n\t\t{ label: \"Substantiating Job\", property: \"ceasn:substantiatingJob\", useFinderURL: false },\r\n\t\t{ label: \"Substantiating Occupation\", property: \"ceasn:substantiatingOccupation\", useFinderURL: false },\r\n\t\t{ label: \"Substantiating Resource\", property: \"ceasn:substantiatingResource\", useFinderURL: false },\r\n\t\t{ label: \"Substantiating Task\", property: \"ceasn:substantiatingTask\", useFinderURL: false },\r\n\t\t{ label: \"Substantiating Work Role\", property: \"ceasn:substantiatingWorkRole\", useFinderURL: false }\r\n\t].filter(m => (props.source.Meta_JSON[m.property] as any) != undefined);\r\n\r\n\treturn substantiationTypes.length > 0 && (\r\n\t\t (\r\n\t\t\t\t\r\n\t\t\t\t\t{m.label}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{(Array.isArray(props.source.Meta_JSON[m.property]) ? props.source.Meta_JSON[m.property] : [props.source.Meta_JSON[m.property]]).map((value: string) => (\r\n\t\t\t\t\t\t\t{m.useFinderURL ? value?.replace(registryURL, appURL) : value}\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t/>\r\n\t) || null\r\n}\r\n\r\nfunction LinkList(props: { items: Array }) {\r\n\treturn props.items?.length > 0 && (\r\n\t\t<>\r\n\t\t\t{props.items.map((item, index) => (\r\n\t\t\t\t{item}\r\n\t\t\t))}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nfunction ConceptListViaLookup(props: { uris: Array, relatedItems: Array }) {\r\n\tvar uris = props.uris || [] as Array;\r\n\tvar root = (crypto as any).randomUUID();\r\n\r\n\turis.forEach(uri => {\r\n\t\tgetResourceByURLWithoutState(uri, null, (data: any) => {\r\n\t\t\tvar concept = data?.[\"@graph\"]?.find((m: any) => m[\"@type\"] == \"skos:Concept\") || data;\r\n\t\t\tvar schemeURI = Array.isArray(concept[\"skos:inScheme\"]) ? concept[\"skos:inScheme\"][0] : concept[\"skos:inScheme\"] || \"\";\r\n\t\t\tvar renderURL = uri.includes(\"credentialengineregistry.org\") ? (appURL + \"/conceptscheme/ce-\" + schemeURI.split(\"/ce-\")[1] + \"?targetCTID=\" + concept[\"ceterms:ctid\"]) : uri;\r\n\t\t\tvar renderLabel = englishOrNull(concept[\"skos:prefLabel\"]) || renderURL;\r\n\t\t\tvar renderDefinition = englishOrNull(concept[\"skos:definition\"]);\r\n\t\t\t/*\r\n\t\t\tconsole.log(\"Data\", {\r\n\t\t\t\tConcept: concept,\r\n\t\t\t\tUUID: root,\r\n\t\t\t\tURL: uri,\r\n\t\t\t\tRenderURL: renderURL,\r\n\t\t\t\tRenderLabel: renderLabel,\r\n\t\t\t\tRenderDefinition: renderDefinition\r\n\t\t\t});\r\n\t\t\t*/\r\n\t\t\trenderContent(root, uri, 50, (div: any) => {\r\n\t\t\t\tdiv.innerHTML = renderToString(<>{renderLabel}{renderDefinition && \": \"}{renderDefinition && {renderDefinition}});\r\n\t\t\t});\r\n\t\t}, (error: any) => {\r\n\t\t\trenderContent(root, uri, 50, (div: any) => {\r\n\t\t\t\tdiv.innerHTML = \"Error looking up Concept: \" + uri;\r\n\t\t\t});\r\n\t\t})\r\n\t});\r\n\r\n\tfunction renderContent(unique: string, uri: string, attempts: number, renderer: any) {\r\n\t\tif (attempts > 0) {\r\n\t\t\tvar div = document.querySelector(\"[data-unique='\" + unique + \"'][data-uri='\" + uri + \"']\");\r\n\t\t\t//console.log(\"Selector\", \"[data-unique='\" + unique + \"'][data-uri='\" + uri + \"']\");\r\n\t\t\t//console.log(\"Div\", div);\r\n\t\t\tif (div) {\r\n\t\t\t\trenderer(div);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\trenderContent(unique, uri, attempts - 1, renderer);\r\n\t\t\t\t}, 10);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\treturn uris.length > 0 && (\r\n\t\t<>\r\n\t\t\t{uris.map(uri => (\r\n\t\t\t\t
    \r\n\t\t\t))}\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nfunction CompetencyExtraListSimple(props: { values: Array, count: number, label: string }) {\r\n\treturn props.values?.length > 0 && (\r\n\t\t\r\n\t\t\t{props.count > 1 && {props.count} {props.label + \"s\"} }\r\n\t\t\t{props.count == 1 && {props.count} {props.label}}\r\n\t\t\t\r\n\t\t\t\t{props.values}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nconst CompetencyListSummary = styled.div`\r\n\tpadding: 5px;\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst CompetencyPrefix = styled.div`\r\n\tdisplay: flex;\r\n\r\n\t&:empty {\r\n\t\tdisplay: none;\r\n\t}\r\n`;\r\n\r\nconst CompetencyPrefixItem = styled.div`\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tjustify-content: center;\r\n\tfont-size: 12px;\r\n\tmin-width: 50px;\r\n\tmax-width: 150px;\r\n\tword-wrap: break-word;\r\n\tmargin-right: 5px;\r\n\tbackground-color: #F5F5F5;\r\n\tpadding: 5px;\r\n\ttext-align: center;\r\n`;\r\n\r\nconst CompetencyContent = styled.div`\r\n\tdisplay: flex;\r\n\tpadding: 5px 0;\r\n`;\r\n\r\nconst CompetencyBody = styled.div`\r\n\tmargin-left: 5px;\r\n`;\r\n\r\nconst CompetencyLabel = styled.div`\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst CompetencyText = styled.div`\r\n\r\n`;\r\n\r\nconst Comment = styled.div`\r\n\tfont-style: italic;\r\n\tpadding: 0 10px;\r\n\tfont-size: 90%;\r\n`;\r\n\r\nconst CompetencyCTID = styled.div`\r\n\tpadding: 5px 10px;\r\n\tfont-size: 12px;\r\n\tfont-style: italic;\r\n`;\r\n\r\nconst CompetencyExtras = styled.div`\r\n\tpadding: 5px 0 5px 10px;\r\n`;\r\n\r\nconst CompetencyExtraListWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: baseline;\r\n\tfont-size: 12px;\r\n\tborder-top: 1px dashed #CCC;\r\n\tpadding: 5px 5px;\r\n\r\n`;\r\n\r\nconst CompetencyExtraListSummaryWrapper = styled.div`\r\n\tmin-width: 150px;\r\n\tmargin-right: 10px;\r\n\tpadding: 1px 5px;\r\n`;\r\n\r\nconst CompetencyExtraListSummaryButton = styled.button`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tmin-width: 150px;\r\n\tmargin-right: 10px;\r\n\tborder: none;\r\n\tbackground-color: transparent;\r\n\tfont-size: 12px;\r\n\tpadding: 1px 5px;\r\n\r\n\t& svg {\r\n\t\tmargin-left: auto;\r\n\t}\r\n\r\n\t&:hover, &:focus {\r\n\t\tcursor: pointer;\r\n\t\ttext-decoration: underline;\r\n\t}\r\n`;\r\n\r\nconst CompetencyExtraListValues = styled.div`\r\n\twidth: 100%;\r\n`;\r\n\r\nconst CompetencyExtraListItem = styled.div`\r\n\tpadding: 2.5px 0;\r\n\tborder-top: 1px dashed #CCC;\r\n\r\n\t&:first-child {\r\n\t\tborder: none;\r\n\t}\r\n\r\n\t& a {\r\n\t\tword-break: break-word;\r\n\t}\r\n`;\r\n\r\nconst AlignmentWrapper = styled(CompetencyExtraListItem)`\r\n\r\n`;\r\n\r\nconst AlignmentObjectWrapper = styled(CompetencyExtraListItem)`\r\n\r\n`;\r\n\r\nconst AlignmentObjectHeader = styled.div`\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\r\n\t& > * {\r\n\t\tmargin-right: 10px;\r\n\t}\r\n\r\n\t& a {\r\n\t\tmargin-left: auto;\r\n\t\tmargin-right: 0;\r\n\t}\r\n`;\r\n\r\nconst AlignmentObjectBody = styled.div`\r\n\r\n`;\r\n\r\nconst TagSetWrapper = styled(CompetencyExtraListItem)`\r\n\tdisplay: flex;\r\n`;\r\n\r\nconst TagSetLabel = styled.div`\r\n\tmargin-right: 10px;\r\n`;\r\n\r\nconst TagSetValues = styled.div`\r\n\t> * {\r\n\t\tmargin: 1px 5px;\r\n\t}\r\n`;\r\n\r\nconst ConceptPrefLabel = styled.span`\r\n\r\n`;\r\n\r\nconst ConceptDefinition = styled.span`\r\n\r\n`;\r\n\r\nconst Rights = styled.div`\r\n\tpadding: 10px;\r\n`;\r\n","import React, { ReactNode, useEffect, useRef, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { appURL, appBaseName } from '../../shared/globals';\r\nimport { ConceptScheme, Concept as ConceptType, Outline, Link, AJAXSettings } from '../../types/external';\r\nimport conceptsBannerIcon from '../../assets/images/UpdatedIcons/CE-Icon_18-Concept-Scheme_Blue-Green_High-Res.png';\r\nimport conceptsIcon from '../../assets/images/icons/icon-competencies-blue-green-01.svg';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport {\r\n\tWrapper,\r\n\tFullWidthWrapper,\r\n\tInnerWrapper,\r\n\tDescription,\r\n Label,\r\n Section\r\n} from '../../components/DetailPage/styles';\r\nimport { VStack } from '../../components/Stack';\r\nimport PageSection from '../../components/PageSection';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport { getResourceByURI, englishOrNull, createKeywordSearchLink, getResourceByURLWithoutState } from '../../components/GetResourceByURI';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faAngleDown, faAngleRight } from '@fortawesome/free-solid-svg-icons';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\n\r\n\r\ninterface Props {\r\n\tid: string;\r\n\ttargetCTID?: string;\r\n}\r\n\r\nexport default function ConceptSchemePage(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [dataIsLoading, setDataIsLoading] = useState(true);\r\n\tconst [hasError, setHasError] = useState(false);\r\n\tconst [conceptScheme, setConceptScheme] = useState({} as ConceptScheme);\r\n\tconst [concepts, setConcepts] = useState([] as Array);\r\n\tconst [localAJAXCache, setLocalAJAXCache] = useState([] as Array); //Used to trick react into re-rendering the data\r\n\r\n\t//This is so backwards I hate this\r\n\tconst [publicationStatusText, setPublicationStatusText] = useState(\"\");\r\n\tconst [relatedWorkRoles, setRelatedWorkRoles] = useState({} as AJAXSettings);\r\n\r\n\tuseEffect(() => {\r\n\t\tconsole.log(\"App Name\", appBaseName);\r\n\t\tgetResourceByURI(`${apiUrl}/dsp_conceptscheme/${id}`, setLocalAJAXCache, null, (loaded: any) => {\r\n\t\t\tvar data = loaded.Result;\r\n\t\t\trenderJSONLDMetaTags(data.Resource, \"ConceptScheme\");\r\n\t\t\tsetDataIsLoading(false);\r\n\t\t\tsetConceptScheme(convertDataToConceptScheme(data.Resource || { \"ceasn:name\": \"Missing Concept Scheme\", \"ceasn:description\": \"Unable to find data for identifier: \" + id }, data.Metadata, id, setLocalAJAXCache));\r\n\t\t\tsetConcepts(data.RelatedItems.filter((m: any) => { return m[\"skos:inScheme\"] == data.Resource[\"@id\"] || m[\"ceasn:inProgressionModel\"] == data.Resource[\"@id\"] }).map((m: ConceptType) => { return convertDataToConcept(m, setLocalAJAXCache) }));\r\n\r\n\t\t\tif (conceptScheme.PublicationStatusType) {\r\n\t\t\t\tgetResourceByURLWithoutState(conceptScheme.PublicationStatusType, null, (success: any) => {\r\n\t\t\t\t\tsetPublicationStatusText(englishOrNull(success?.[\"@graph\"]?.[0]?.[\"skos:prefLabel\"]));\r\n\t\t\t\t\tconsole.log(publicationStatusText);\r\n\t\t\t\t}, (error: any) => {\r\n\t\t\t\t\tsetPublicationStatusText(\"Error loading Status: \" + conceptScheme.PublicationStatusType);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\t\t(error: any) => {\r\n\t\t\tsetHasError(true);\r\n\t\t\tconsole.log(\"Error loading data: \", error);\r\n\t\t});\r\n\t\tnew URLSearchParams(window.location.search).forEach(function (value: string, key: string) {\r\n\t\t\tif (key.toLowerCase() == \"conceptctid\" || key.toLowerCase() == \"targetctid\") {\r\n\t\t\t\tjumpToConceptCTID(value.toLowerCase(), 0);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tfunction jumpToConceptCTID(targetCTID: string, attempts: number) {\r\n\t\t\tsetTimeout(function () {\r\n\t\t\t\tvar element = document.getElementById(targetCTID);\r\n\t\t\t\tif (element && element.getElementsByClassName(\"conceptContent\").length > 0) {\r\n\t\t\t\t\telement.scrollIntoView();\r\n\t\t\t\t}\r\n\t\t\t\telse if (attempts <= 10) {\r\n\t\t\t\t\tjumpToConceptCTID(targetCTID, attempts + 1);\r\n\t\t\t\t}\r\n\t\t\t}, 500);\r\n\t\t}\r\n\r\n\r\n\t}, [id, localAJAXCache]);\r\n\r\n\tvar topCompetencies = conceptScheme.HasTopConcept?.length > 0 ? conceptScheme.HasTopConcept.map((m) => { return concepts.filter((n) => { return n.CredentialRegistryURL == m })[0] }).filter((m) => { return m }) : concepts;\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Concept Scheme\");\r\n\tuseEffect(() => {\r\n\t\tconst ctid = conceptScheme.CTID;\r\n\t\tif (ctid != null) {\r\n\t\t\tgetResourceByURLWithoutState(`${apiUrl}/GetRelatedResource/${ctid}/34`, null, (success: any) => {\r\n\t\t\t\tsetRelatedWorkRoles(success.Result);\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t}, [conceptScheme]);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{conceptScheme.Description || \"No description available\"}\r\n\t\t\t\t\t\t{conceptScheme.Source && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{conceptScheme.Source.map((url) => ())}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{conceptScheme.PublicationStatusType && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{publicationStatusText && {publicationStatusText}}\r\n\t\t\t\t\t\t\t\t{!publicationStatusText &&
    }\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{topCompetencies && topCompetencies.map((concept) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{(\r\n\t\t\t\t\t\t\t\t\t\t\trelatedWorkRoles?.Total > 0\r\n\t\t\t\t\t\t\t\t\t\t) && (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t].filter(m => m.Content != null)}\r\n\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport function convertDataToConceptScheme(resource: any, metadata: any, id: string, setLocalAJAXCache: any): ConceptScheme {\r\n\treturn {\r\n\t\tBroadType: \"ConceptScheme\",\r\n\t\tCTDLType: \"skos:ConceptScheme\",\r\n\t\tCTDLTypeLabel: \"Concept Scheme\",\r\n\t\tMeta_Id: id,\r\n\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\tMeta_LastUpdated: metadata?.DateModified || \"Unknown\",\r\n\t\tMeta_LastUpdatedHeader: metadata?.DateModified || \"Unknown\",\r\n\t\tMeta_Language: resource[\"ceasn:inLanguage\"]?.[0] || \"en\",\r\n\t\tName: englishOrNull(resource[\"ceasn:name\"]),\r\n\t\tDescription: englishOrNull(resource[\"ceasn:description\"]),\r\n\t\tSource: Array.isArray(resource[\"ceasn:source\"]) ? resource[\"ceasn:source\"] : [resource[\"ceasn:source\"]],\r\n\t\tInLanguage: resource[\"ceasn:inLanguage\"],\r\n\t\tConceptKeyword: englishOrNull(resource[\"ceasn:conceptKeyword\"])?.map((m: string) => { return createKeywordSearchLink(\"conceptscheme\", m) }),\r\n\t\tConceptTerm: resource[\"ceasn:conceptTerm\"]?.map((m: string) => { return createKeywordSearchLink(\"conceptscheme\", englishOrNull(m)) }),\r\n\t\tCreator: resource[\"ceasn:creator\"]?.map((m: string) => { return getOrganizationOutlineByURI(m, \"creator\", setLocalAJAXCache) }),\r\n\t\tDateCreated: resource[\"ceasn:dateCreated\"],\r\n\t\tDateCopyrighted: resource[\"ceasn:dateCopyrighted\"],\r\n\t\tDateModified: resource[\"ceasn:dateModified\"],\r\n\t\tLicense: resource[\"ceasn:license\"],\r\n\t\tPublicationStatusType: resource[\"ceasn:publicationStatusType\"]?.replace(\"http://\", \"https://\")?.replace(\"publicationStatus:\", \"https://credreg.net/ctdlasn/vocabs/publicationStatus/\"),\r\n\t\tPublisher: resource[\"ceasn:publisher\"]?.map((m: string) => { return getOrganizationOutlineByURI(m, \"publisher\", setLocalAJAXCache) }),\r\n\t\tPublisherName: resource[\"ceasn:publisherName\"] && [englishOrNull(resource[\"ceasn:publisherName\"])],\r\n\t\tRights: resource[\"ceasn:rights\"],\r\n\t\tRightsHolder: resource[\"ceasn:rightsHolder\"] && getOrganizationOutlineByURI(resource[\"ceasn:rightsHolder\"], \"rightsholder\", setLocalAJAXCache),\r\n\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\tHasTopConcept: resource[\"skos:hasTopConcept\"],\r\n\t\tRegistryData: { CTID: resource[\"ceterms:ctid\"], Resource: { URL: resource[\"@id\"], Label: \"View Resource\" }, Envelope: { URL: resource[\"@id\"]?.replace(\"/resources/\", \"/envelopes/\"), Label: \"View Envelope\" } },\r\n\t\tMeta_JSON: resource,\r\n\t} as ConceptScheme;\r\n}\r\n\r\n\r\nexport function convertDataToConcept(resource: any, setLocalAJAXCache: any): ConceptType {\r\n\treturn {\r\n\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\tPrefLabel: englishOrNull(resource[\"skos:prefLabel\"]),\r\n\t\tHiddenLabel: englishOrNull(resource[\"skos:hiddenLabel\"]),\r\n\t\tAltLabel: englishOrNull(resource[\"skos:altLabel\"]),\r\n\t\tBroader: resource[\"skos:broader\"],\r\n\t\tBroadMatch: resource[\"skos:broadMatch\"],\r\n\t\tChangeNote: englishOrNull(resource[\"skos:changeNote\"]),\r\n\t\tCloseMatch: resource[\"skos:closeMatch\"],\r\n\t\tExactMatch: resource[\"skos:exactMatch\"],\r\n\t\tInScheme: resource[\"skos:inScheme\"],\r\n\t\tNarrower: resource[\"skos:narrower\"],\r\n\t\tNarrowMatch: resource[\"skos:narrowMatch\"],\r\n\t\tRelated: resource[\"skos:related\"],\r\n\t\tTopConceptOf: resource[\"skos:topConceptOf\"],\r\n\t\tDefinition: englishOrNull(resource[\"skos:definition\"]),\r\n\t\tNotation: resource[\"skos:notation\"],\r\n\t\tRelatedWorkRole: resource[\"ceterms:ctid\"] && getRelatedWorkRole(resource[\"ceterms:ctid\"]),\r\n\t\tNote: englishOrNull(resource[\"skos:note\"]),\r\n\t\tMeta_JSON: resource\r\n\t} as ConceptType;\r\n}\r\n\r\nfunction getOrganizationOutlineByURI(uri: string, temp: string, setLocalAJAXCache: any): Outline {\r\n\tvar data = getResourceByURI(uri, setLocalAJAXCache).Data;\r\n\treturn {\r\n\t\tLabel: englishOrNull(data?.[\"ceterms:name\"]) || ,\r\n\t\tURL: appURL + \"/organization/\" + uri.split(\"/resources/\")[1],\r\n\t\tImage: data?.[\"ceterms:image\"]\r\n\t} as Outline;\r\n}\r\n\r\nfunction getRelatedWorkRole(ctid: string) {\r\n\tvar workroles= null;\r\n\tif (ctid != null) {\r\n\t\tgetResourceByURLWithoutState(`${apiUrl}/GetRelatedResource/${ctid}/34`, null, (success: any) => {\r\n\t\t\tconsole.log(\"Success\",success.Result);\r\n\t\t\tworkroles= success.Result;\r\n\t\t});\r\n\t\treturn workroles;\r\n\t}\r\n}\r\n\r\n\r\n\r\nfunction AlignmentListHelper() {\r\n\twireupExtras();\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\nfunction wireupExtras() {\r\n\tsetTimeout(function () {\r\n\t\tvar items = Array.from(document.querySelectorAll(\".conceptExtraListWrapper:not(.setup)\") || []);\r\n\t\titems.forEach(function (item) {\r\n\t\t\titem.classList.add(\"setup\");\r\n\t\t\titem.querySelector(\".conceptExtraListSummaryButton\")?.addEventListener(\"click\", function () {\r\n\t\t\t\titem.classList.contains(\"expanded\") ? item.classList.remove(\"expanded\") : item.classList.add(\"expanded\");\r\n\t\t\t});\r\n\t\t});\r\n\t\tif (items.length > 0) {\r\n\t\t\twireupExtras();\r\n\t\t}\r\n\t}, 100);\r\n}\r\n\r\nexport function Concept(props: { concept: ConceptType, allConcepts: Array | null }) {\r\n\treturn props.concept && (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{props.concept.Notation && {props.concept.Notation}}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{(props.concept.PrefLabel || props.concept.AltLabel || props.concept.HiddenLabel) && (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.concept.PrefLabel && {props.concept.PrefLabel}}\r\n\t\t\t\t\t\t\t{props.concept.AltLabel && {props.concept.AltLabel}}\r\n\t\t\t\t\t\t\t{props.concept.HiddenLabel && {props.concept.HiddenLabel}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t\t{props.concept.Definition && {props.concept.Definition}}\r\n\t\t\t\t\t{props.concept.Note && {props.concept.Note}}\r\n\t\t\t\t\t{props.concept.ChangeNote && {props.concept.ChangeNote}}\r\n\t\t\t\t\t{props.concept.CTID && CTID: {props.concept.CTID}}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t m.Meta_JSON) || []} />\r\n\t\t\t\t{props.concept.RelatedWorkRole?.Total > 0 &&\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t\r\n\t\t\t{(props.allConcepts || []).length > 0 && props.concept.Narrower?.length > 0 &&\r\n\t\t\t\t\r\n\t\t\t\t\t{props.concept.Narrower.map((narrowerURI) => (\r\n\t\t\t\t\t\t { return m.CredentialRegistryURL == narrowerURI })[0]} allConcepts={props.allConcepts} key={\"concept-\" + narrowerURI} />\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\r\n\t) || null;\r\n}\r\n\r\nexport function ConceptAlignmentList(props: { source: ConceptType, relatedItems: Array }) {\r\n\tvar conceptAlignments = [] as Array;\r\n\tvar alignmentTypes = [\r\n\t\t{ label: \"Broad Match\", property: \"skos:broadMatch\" },\r\n\t\t{ label: \"Close Match\", property: \"skos:closeMatch\" },\r\n\t\t{ label: \"Exact Match\", property: \"skos:exactMatch\" },\r\n\t\t{ label: \"Narrow Match\", property: \"skos:narrowMatch\" },\r\n\t\t{ label: \"Related\", property: \"skos:related\" }\r\n\t];\r\n\r\n\talignmentTypes.forEach(type => {\r\n\t\t(props.source.Meta_JSON[type.property] || []).forEach((alignment: string) => {\r\n\t\t\tvar match = props.relatedItems.filter(item => {\r\n\t\t\t\treturn item[\"@id\"] == alignment\r\n\t\t\t})[0];\r\n\r\n\t\t\tconceptAlignments.push(\r\n\t\t\t\tmatch ?\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\talignmentPrefix: \"\",\r\n\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\talignmentPostfix: \":\",\r\n\t\t\t\t\t\ttargetURL: \"/conceptscheme/ce-\" + match[\"skos:inScheme\"]?.split(\"/ce-\")[1] + \"?conceptCTID=\" + match[\"ceterms:ctid\"],\r\n\t\t\t\t\t\ttargetLabel: englishOrNull(match[\"skos:prefLabel\"])\r\n\t\t\t\t\t}\r\n\t\t\t\t\t:\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\talignmentPrefix: \"External \",\r\n\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\talignmentPostfix: \":\",\r\n\t\t\t\t\t\ttargetURL: alignment,\r\n\t\t\t\t\t\ttargetLabel: alignment\r\n\t\t\t\t\t}\r\n\t\t\t);\r\n\t\t});\r\n\t});\r\n\r\n\talignmentTypes.forEach(type => {\r\n\t\tprops.relatedItems.forEach(relatedItem => {\r\n\t\t\tif (relatedItem[type.property]?.indexOf(props.source.Meta_JSON[\"@id\"]) > -1) {\r\n\t\t\t\tconceptAlignments.push(\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\talignmentPrefix: \"Reverse \",\r\n\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\talignmentPostfix: \" reference from:\",\r\n\t\t\t\t\t\ttargetURL: \"/conceptscheme/ce-\" + relatedItem[\"skos:inScheme\"]?.split(\"/ce-\")[1] + \"?conceptCTID=\" + relatedItem[\"ceterms:ctid\"],\r\n\t\t\t\t\t\ttargetLabel: englishOrNull(relatedItem[\"skos:prefLabel\"])\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\treturn conceptAlignments.length > 0 && (\r\n\t\t ( \r\n\t\t\t\t\r\n\t\t\t\t\t{(m.targetURL == m.targetLabel && m.targetURL.indexOf(\"credentialengineregistry.org\") > 0) ?(\r\n\t\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t\t<>{m.alignmentPrefix}{m.alignmentLabel}{m.alignmentPostfix} {englishOrNull(conceptSchemeData.data[\"ceasn:name\"])} : {englishOrNull(conceptData.data[\"skos:prefLabel\"])}\r\n\t\t\t\t\t\t\t\t)} /> \r\n\t\t\t\t\t\t)} />\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t<>{m.alignmentPrefix}{m.alignmentLabel}{m.alignmentPostfix} {m.targetLabel}\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t/>\r\n\t) || null\r\n}\r\n\r\nexport function RelatedWorkRoles(props: { relatedResource: AJAXSettings }) {\r\n\tconst containerRef = useRef(null);\r\n\r\n\tconst toggleVisibility = () => {\r\n\t\tif (containerRef.current) {\r\n\t\t\tif (containerRef.current.style.display === 'none') {\r\n\t\t\t\tcontainerRef.current.style.display = 'block';\r\n\t\t\t\tdocument.getElementById('arrowIconDown')?.setAttribute('style', 'display: none');\r\n\t\t\t\tdocument.getElementById('arrowIconUp')?.setAttribute('style', '');\r\n\t\t\t} else {\r\n\t\t\t\tcontainerRef.current.style.display = 'none';\r\n\t\t\t\tdocument.getElementById('arrowIconDown')?.setAttribute('style', '');\r\n\t\t\t\tdocument.getElementById('arrowIconUp')?.setAttribute('style', 'display: none');\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\treturn props.relatedResource.Total > 0 ? (\r\n\t\t
    \r\n\t\t\t\r\n\t\t\t
      \r\n\t\t\t\t{props.relatedResource.Values.map((m, index) => (\r\n\t\t\t\t\t
    • \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{m.Label}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
      \r\n\t\t\t\t\t\t{m.Description}\r\n\t\t\t\t\t
    • \r\n\t\t\t\t))}\r\n\t\t\t
    \r\n\t\t
    \r\n ) : null;\r\n}\r\n\r\n\r\n//Helper interface for RenderAsyncResource\r\ninterface ResourceData {\r\n\tURL: string,\r\n\tData?: any | null,\r\n\tError?: string | null,\r\n\tTriggered: boolean\r\n}\r\n//Condense multiple requests for the same resource into a single waiter, and only start requesting it when something scrolls into view\r\n//For some reason, the RenderComponent function will receive an extra layer of \"data\" object, so keep that in mind when calling this method\r\nfunction RenderAsyncResource(props: { url: string, RenderComponent: (props: { data: any }) => React.ReactElement, debugFlag?: string }) {\r\n\t//Only used to trigger React to re-render\r\n\tconst [items, setItems] = useState([] as Array);\r\n\t//Stores ref to the rendered spinner\r\n\tconst waiterRef = useRef(null);\r\n\r\n\t//Ensure the window has a ResourceData array regardless of what initialized it\r\n\tif (!(window as any).ResourceData) {\r\n\t\t(window as any).ResourceData = [];\r\n\t}\r\n\r\n\t//Ensure the window has a ScrollHelper array regardless of what initialized it\r\n\tif (!(window as any).ScrollHelper) {\r\n\t\t(window as any).ScrollHelper = [];\r\n\t\t//Efficiently loop through ScrollHelpers on scroll and execute their .run() function if they are active\r\n\t\t(window as any).addEventListener(\"scroll\", function () {\r\n\t\t\tfor (var i = 0; i < (window as any).ScrollHelper.length; i++) {\r\n\t\t\t\t(window as any).ScrollHelper[i].active && (window as any).ScrollHelper[i].run();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t//Initialize the Component when the spinner renders\r\n\tvar checkInterval = 0 as any;\r\n\tuseEffect(() => {\r\n\t\t//If there is a rendered spinner, but the ScrollHelper hasn't been injected into the window's ScrollHelper array yet...\r\n\t\tif (waiterRef.current && !(window as any).ScrollHelper.find((m: any) => m.current == waiterRef.current)) {\r\n\t\t\t//Create a ScrollHelper and inject it\r\n\t\t\tconsole.log(\"Adding waiter ref to scroll listener\");\r\n\t\t\t(window as any).ScrollHelper.push({\r\n\t\t\t\t//Reference to the rendered spinner, used for finding this ScrollHelper later\r\n\t\t\t\tcurrent: waiterRef.current,\r\n\t\t\t\t//Indicates whether or not this ScrollHelper is active - use this instead of removing it from the array so we don't risk accidentally adding it twice in the midst of React's async nonsense\r\n\t\t\t\tactive: true,\r\n\t\t\t\t//Function to run every time window onscroll is checked\r\n\t\t\t\trun: checkScrollPosition\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t//Also force a check periodically to handle things like accordions or things that modify CSS instead of using React's render loop\r\n\t\tclearInterval(checkInterval);\r\n\t\tcheckInterval = setInterval(checkScrollPosition, 500);\r\n\t}, [waiterRef.current]); //Only trigger this init when the spinner changes\r\n\r\n\tfunction checkScrollPosition() {\r\n\t\t//If the rendered spinner is visible on the window...\r\n\t\tvar top = (waiterRef.current?.getBoundingClientRect().top || 0);\r\n\t\tif ((window as any).outerHeight > top && top > 0) {\r\n\t\t\t//Trigger the AJAX call (this will also trigger event handlers for anything else that references that same URL, should be okay enough performance-wise)\r\n\t\t\tloadData();\r\n\t\t\t//Deactivate the ScrollHelper so it doesn't get triggered twice\r\n\t\t\tvar scrollHelper = (window as any).ScrollHelper.find((m: any) => m.current == waiterRef.current);\r\n\t\t\tscrollHelper && (scrollHelper.active = false);\r\n\t\t\t//Clear the periodic checker\r\n\t\t\tclearInterval(checkInterval);\r\n\t\t}\r\n\t}\r\n\r\n\t//Get the ResourceData for the current URL\r\n\tvar resourceDataArray = (window as any).ResourceData as Array;\r\n\tvar resourceData = resourceDataArray.find(m => m.URL == props.url) || { URL: props.url, Triggered: false };\r\n\r\n\t//AJAX load the data\r\n\tfunction loadData() {\r\n\t\t//If the current ResourceData has not already been triggered...\r\n\t\tif (!resourceData.Triggered) {\r\n\t\t\t//Trigger it\r\n\t\t\tresourceData.Triggered = true;\r\n\t\t\tconsole.log(\"loading data\", resourceData.URL);\r\n\t\t\t//Push it into the window's ResourceData array\r\n\t\t\tresourceDataArray.push(resourceData);\r\n\t\t\t//Trigger React to re-render\r\n\t\t\tsetItems([...((window as any).ResourceData as Array)]);\r\n\t\t\t//Fetch the data and handle errors\r\n\t\t\tfetch(resourceData.URL).then(result => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tif (result.ok) {\r\n\t\t\t\t\t\treturn result.json();\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tresourceData = (resourceData as ResourceData);\r\n\t\t\t\t\t\tresourceData.Error = result.statusText;\r\n\t\t\t\t\t\tsetItems([...((window as any).ResourceData as Array)]);\r\n\t\t\t\t\t\tconsole.log(\"Error loading URL\", { debugFlag: props.debugFlag, resourceData: resourceData });\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tcatch (e) {\r\n\t\t\t\t\tresourceData = (resourceData as ResourceData);\r\n\t\t\t\t\tresourceData.Error = (e as any).toString();\r\n\t\t\t\t\tsetItems([...((window as any).ResourceData as Array)]);\r\n\t\t\t\t\tconsole.log(\"Error loading or parsing URL\", { debugFlag: props.debugFlag, resourceData: resourceData });\r\n\t\t\t\t}\r\n\t\t\t}).then(json => {\r\n\t\t\t\tresourceData = (resourceData as ResourceData);\r\n\t\t\t\tresourceData.Data = json;\r\n\t\t\t\tsetItems([...((window as any).ResourceData as Array)]);\r\n\t\t\t\tconsole.log(\"Loaded URL\", { debugFlag: props.debugFlag, resourceData: resourceData });\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\t//Return the rendered component if data is present, otherwise return a generic error div if there was an error, otherwise return a spinner if nothing has happened/we're still waiting\r\n\treturn resourceData.Data ? :\r\n\t\tresourceData.Error ?
    Error loading data for {resourceData.URL}
    {resourceData.Error}
    :\r\n\t\t\t
    \r\n}\r\n\r\nexport function ConceptExtraListSimple(props: { values: Array, count: number, label: string }) {\r\n\treturn props.values?.length > 0 && (\r\n\t\t\r\n\t\t\t{props.count > 1 && {props.count} {props.label + \"s\"} }\r\n\t\t\t{props.count == 1 && {props.count} {props.label}}\r\n\t\t\t\r\n\t\t\t\t{props.values}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nconst ConceptWrapper = styled.div`\r\n\tpadding: 5px;\r\n\tborder-top: 1px solid #CCC;\r\n`;\r\n\r\nconst ConceptContent = styled.div`\r\n\tdisplay: flex;\r\n\tpadding-left: 10px;\r\n\r\n`;\r\n\r\nconst ConceptPrefix = styled.div`\r\n\r\n`;\r\n\r\nconst ConceptPrefixItem = styled.div`\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tjustify-content: center;\r\n\tfont-size: 12px;\r\n\tmin-width: 50px;\r\n\tmax-width: 150px;\r\n\tword-break: break-word;\r\n\tmargin-right: 5px;\r\n\tbackground-color: #F5F5F5;\r\n\tpadding: 5px;\r\n\ttext-align: center;\r\n`;\r\n\r\nconst ConceptBody = styled.div`\r\n\r\n`;\r\n\r\nconst ChildConcepts = styled.div`\r\n\tpadding-left: 25px;\r\n`;\r\n\r\nconst ConceptName = styled.div`\r\n\tfont-weight: bold;\r\n\r\n\t& span:not(:first-child) {\r\n\t\tborder-left: 1px solid #CCC;\r\n\t\tpadding-left: 10px;\r\n\t\tmargin-left: 10px;\r\n\t}\r\n`;\r\n\r\nconst ConceptDefinition = styled.div`\r\n\t\r\n`;\r\n\r\nconst ConceptNote = styled.div`\r\n\tfont-style: italic;\r\n\tpadding: 0 10px;\r\n\tfont-size: 90%;\r\n`;\r\n\r\nconst ConceptCTID = styled.div`\r\n\tpadding: 5px 10px;\r\n\tfont-size: 12px;\r\n\tfont-style: italic;\r\n`;\r\n\r\nconst ConceptExtras = styled.div`\r\n\tpadding: 5px 0 5px 10px;\r\n`;\r\n\r\nconst ConceptExtraListWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: flex-start;\r\n\tfont-size: 12px;\r\n\tborder-top: 1px dashed #CCC;\r\n\tpadding: 5px 5px;\r\n\r\n`;\r\n\r\nconst ConceptExtraListSummaryWrapper = styled.div`\r\n\tmin-width: 150px;\r\n\tmargin-right: 10px;\r\n\tpadding: 1px 5px;\r\n`;\r\n\r\nconst ConceptExtraListSummaryButton = styled.button`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tmin-width: 150px;\r\n\tmargin-right: 10px;\r\n\tborder: none;\r\n\tbackground-color: transparent;\r\n\tfont-size: 12px;\r\n\tpadding: 1px 5px;\r\n\r\n\t& svg {\r\n\t\tmargin-left: auto;\r\n\t}\r\n\r\n\t&:hover, &:focus {\r\n\t\tcursor: pointer;\r\n\t\ttext-decoration: underline;\r\n\t}\r\n`;\r\n\r\nconst ConceptExtraListValues = styled.div`\r\n\twidth: 100%;\r\n`;\r\n\r\n\r\nconst ConceptExtraListItem = styled.div`\r\n\tpadding: 2.5px 0;\r\n\tborder-top: 1px dashed #CCC;\r\n\r\n\t&:first-child {\r\n\t\tborder: none;\r\n\t}\r\n\r\n\t& a {\r\n\t\tword-break: break-word;\r\n\t}\r\n`;\r\n\r\nconst AlignmentWrapper = styled(ConceptExtraListItem)`\r\n\r\n`;\r\n","import React, { useEffect, useState } from 'react';\r\nimport axios from 'axios';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport pageIcon from '../../assets/images/icons/icon-pathways-white-green-01.svg';\r\nimport styled from 'styled-components/macro';\r\nimport Error from '../../components/Error';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function PathwayPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [loading, setLoading] = useState(false);\r\n const [pageContent, setPageContent] = useState(' ');\r\n const [error, setError] = useState(false);\r\n\r\n useEffect(() => {\r\n setLoading(true);\r\n const url1 = `https://sandbox.credentialengine.org/finder/pathway/${id}?coreonly=true`;\r\n\t\tconst url = `${legacySourceUrl}/pathway/${id}?coreonly=true`;\r\n axios\r\n .get(url)\r\n .then((res) => {\r\n setPageContent(res.data);\r\n setLoading(false);\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n setError(true);\r\n setLoading(false);\r\n });\r\n }, []);\r\n if (loading) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n if (error) {\r\n return ;\r\n }\r\n return ;\r\n}\r\n\r\nconst LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;\r\n","export default __webpack_public_path__ + \"static/media/icon-pathways-white-green-01.0fbe6c74.svg\";","export default __webpack_public_path__ + \"static/media/icon-pathways-green-blue-01.0f9f31ac.svg\";","import React, { useEffect, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { appURL } from '../../shared/globals';\r\nimport {\r\n\tPathway as PathwayType,\r\n\tPathwayComponent as PathwayComponentType,\r\n\tComponentCondition as ComponentConditionType,\r\n\tIdentifierValue as IdentifierValueType,\r\n\tValueProfile as ValueProfileType,\r\n\tConceptScheme,\r\n\tConcept,\r\n\tLink,\r\n\tOutline,\r\n\tAJAXSettingsOutline\r\n} from '../../types/external';\r\nimport { ModalType } from '../../types/internal';\r\nimport pathwaysBannerIcon from '../../assets/images/icons/icon-pathways-white-green-01.svg';\r\nimport pathwaysIcon from '../../assets/images/icons/icon-pathways-green-blue-01.svg';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport {\r\n\tWrapper,\r\n\tFullWidthWrapper,\r\n\tInnerWrapper,\r\n\tDescription,\r\n\tLabel\r\n} from '../../components/DetailPage/styles';\r\nimport { VStack } from '../../components/Stack';\r\nimport PageSection from '../../components/PageSection';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport { getResourceByURI, englishOrNull, createKeywordSearchLink } from '../../components/GetResourceByURI';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\n\r\n\r\ninterface Props {\r\n\tid: string;\r\n\ttargetCTID?: string;\r\n}\r\n\r\nexport default function PathwayPageV2(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [dataIsLoading, setDataIsLoading] = useState(true);\r\n\tconst [hasError, setHasError] = useState(false);\r\n\tconst [pathway, setPathway] = useState({} as PathwayType);\r\n\tconst [components, setComponents] = useState([] as Array);\r\n\tconst [progressionModel, setProgressionModel] = useState([] as Array);\r\n\tconst [progressionLevels, setProgressionLevels] = useState([] as Array);\r\n\tconst [localAJAXCache, setLocalAJAXCache] = useState([] as Array); //Used to trick react into re-rendering the data\r\n\r\n\tuseEffect(() => {\r\n\t\tgetResourceByURI(`${apiUrl}/dsp_pathway/${id}`, setLocalAJAXCache, null, (loaded: any) => {\r\n\t\t\tvar data = loaded.Result;\r\n\t\t\tsetDataIsLoading(false);\r\n\t\t\tsetPathway(convertDataToPathway(data.Resource || { \"ceterms:name\": \"Missing Pathway\", \"ceterms:description\": \"Unable to find data for identifier: \" + id }, data.Metadata));\r\n\t\t\trenderJSONLDMetaTags(data.Resource, \"Pathway\");\r\n\t\t\tconsole.log(\"Pathway\", pathway);\r\n\t\t\tsetComponents(data.RelatedItems.filter((m: any) => { return m[\"ceasn:isPartOf\"] == data.Resource[\"@id\"] }).map((m: PathwayComponentType) => { return convertDataToPathwayComponent(m) }));\r\n\t\t},\r\n\t\t(error: any) => {\r\n\t\t\tsetHasError(true);\r\n\t\t\tconsole.log(\"Error loading data: \", error);\r\n\t\t});\r\n\t}, [id, localAJAXCache]);\r\n\r\n\tfunction convertDataToPathway(resource: any, metadata: any): PathwayType {\r\n\t\tconsole.log(\"Converting resource to pathway\", resource);\r\n\t\treturn {\r\n\t\t\tBroadType: \"Pathway\",\r\n\t\t\tCTDLType: \"ceterms:Pathway\",\r\n\t\t\tCTDLTypeLabel: \"Pathway\",\r\n\t\t\tMeta_Id: id,\r\n\t\t\tMeta_Language: resource[\"ceasn:inLanguage\"]?.[0] || \"en\",\r\n\t\t\tMeta_LastUpdated: metadata?.LastUpdated || \"Unknown\",\r\n\t\t\tMeta_LastUpdatedHeader: metadata?.LastUpdated || \"Unknown\",\r\n\t\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\t\tName: englishOrNull(resource[\"ceterms:name\"]),\r\n\t\t\tDescription: englishOrNull(resource[\"ceterms:description\"]),\r\n\t\t\tSubjectWebpage: resource[\"ceterms:subjectWebpage\"],\r\n\t\t\tSubject: resource[\"ceterms:subject\"]?.map((m: string) => { return createKeywordSearchLink(\"pathway\", englishOrNull(m)) }),\r\n\t\t\tKeyword: resource[\"ceterms:keyword\"]?.map((m: string) => { return createKeywordSearchLink(\"pathway\", englishOrNull(m)) }),\r\n\t\t\tOwnedBy: resource[\"ceterms:ownedBy\"] && { Values: resource[\"ceterms:ownedBy\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) }) } as AJAXSettingsOutline,\r\n\t\t\tOfferedBy: resource[\"ceterms:offeredBy\"] && { Values: resource[\"ceterms:offeredBy\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) }) } as AJAXSettingsOutline,\r\n\t\t\tHasProgressionModel: resource[\"asn:hasProgressionModel\"], //Should use the same data conversion process as concept schemes\r\n\t\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\t\tHasDestinationComponent: resource[\"ceterms:hasDestinationComponent\"],\r\n\t\t\tRegistryData: { CTID: resource[\"ceterms:ctid\"], Resource: { URL: resource[\"@id\"], Label: \"View Resource\" }, Envelope: { URL: resource[\"@id\"]?.replace(\"/resources/\", \"/envelopes/\"), Label: \"View Envelope\" } },\r\n\t\t\tMeta_JSON: resource\r\n\t\t} as PathwayType;\r\n\t}\r\n\r\n\tfunction convertDataToPathwayComponent(resource: any): PathwayComponentType {\r\n\t\treturn {\r\n\t\t\tBroadType: \"PathwayComponent\",\r\n\t\t\tCTDLType: resource[\"@type\"],\r\n\t\t\tCTDLTypeLabel: englishOrNull(lookupFromSchema(resource[\"@type\"])?.[\"rdfs:label\"]),\r\n\t\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\t\tName: englishOrNull(resource[\"ceterms:name\"]),\r\n\t\t\tDescription: englishOrNull(resource[\"ceterms:description\"]),\r\n\t\t\tHasProgressionLevel: resource[\"ceterms:hasProgressionLevel\"],\r\n\t\t\tIsDestinationComponentOf: resource[\"ceterms:isDestinationComponentOf\"],\r\n\t\t\tComponentCategory: englishOrNull(resource[\"ceterms:componentCategory\"]),\r\n\t\t\tComponentDesignation: englishOrNull(resource[\"ceterms:componentDesignation\"]),\r\n\t\t\tIdentifier: resource[\"ceterms:identifier\"]?.map((m: any) => { return convertDataToIdentifierValue(m) }),\r\n\t\t\tHasCondition: resource[\"ceterms:hasCondition\"]?.map((m: any) => { return convertDataToComponentCondition(m) }),\r\n\t\t\tPointValue: resource[\"ceterms:pointValue\"],\r\n\t\t\tPrecedes: resource[\"ceterms:precedes\"],\r\n\t\t\tPrerequisite: resource[\"ceterms:prerequisite\"],\r\n\t\t\tSourceData: resource[\"ceterms:sourceData\"],\r\n\t\t\tSubjectWebpage: resource[\"ceterms:subjectWebpage\"],\r\n\t\t\tProgramTerm: englishOrNull(resource[\"ceterms:programTerm\"]),\r\n\t\t\tCreditValue: resource[\"ceterms:creditValue\"]?.map((m: any) => { return convertDataToValueProfile(m) }),\r\n\t\t\tMeta_JSON: resource\r\n\t\t} as any;\r\n\t}\r\n\r\n\tfunction convertDataToComponentCondition(resource: any): ComponentConditionType | null {\r\n\t\treturn !resource ? null : {\r\n\t\t\tName: englishOrNull(resource[\"ceterms:name\"]),\r\n\t\t\tDescription: englishOrNull(resource[\"ceterms:description\"]),\r\n\t\t\tRequiredNumber: resource[\"ceterms:requiredNumber\"],\r\n\t\t\tTargetComponent: resource[\"ceterms:targetComponent\"],\r\n\t\t\tMeta_JSON: resource\r\n\t\t} as ComponentConditionType;\r\n\t}\r\n\r\n\tfunction convertDataToIdentifierValue(resource: any): IdentifierValueType | null {\r\n\t\treturn !resource ? null : {\r\n\t\t\tIdentifierType: resource[\"ceterms:identifierType\"],\r\n\t\t\tIdentifierTypeName: englishOrNull(resource[\"ceterms:identifierTypeName\"]),\r\n\t\t\tIdentifierValueCode: resource[\"ceterms:identifierValueCode\"]\r\n\t\t} as IdentifierValueType;\r\n\t}\r\n\r\n\tfunction convertDataToValueProfile(resource: any): ValueProfileType | null {\r\n\t\treturn !resource ? null : {\r\n\t\t\tDescription: englishOrNull(resource[\"schema:description\"]),\r\n\t\t\tMaxValue: resource[\"schema:maxValue\"],\r\n\t\t\tMinValue: resource[\"schema:minValue\"],\r\n\t\t\tValue: resource[\"schema:value\"],\r\n\t\t\tPercentage: resource[\"qdata:percentage\"],\r\n\t\t\tSubject: resource[\"ceterms:subject\"]?.map((m: any) => { return convertDataToLink(m) }),\r\n\t\t\tCreditLevelType: resource[\"ceterms:subject\"]?.map((m: any) => { return convertDataToLink(m) }),\r\n\t\t\tCreditUnitType: resource[\"ceterms:subject\"]?.map((m: any) => { return convertDataToLink(m) }),\r\n\t\t} as ValueProfileType;\r\n\t}\r\n\r\n\tfunction convertDataToLink(resource: any): Link | null {\r\n\t\treturn !resource ? null : {\r\n\t\t\tLabel: englishOrNull(resource[\"ceterms:targetNodeName\"] || resource[\"skos:prefLabel\"] || resource[\"ceterms:name\"] || resource[\"ceasn:name\"])\r\n\t\t} as Link;\r\n\t}\r\n\r\n\tfunction lookupFromSchema(url: string) {\r\n\t\t//Temporary\r\n\t\treturn {\r\n\t\t\t\"rdfs:label\": { \"en\": url }\r\n\t\t};\r\n\t}\r\n\r\n\tfunction getOrganizationOutlineByURI(uri: string): Outline {\r\n\t\tvar data = getResourceByURI(uri, setLocalAJAXCache).Data;\r\n\t\treturn {\r\n\t\t\tLabel: englishOrNull(data?.[\"ceterms:name\"]) || ,\r\n\t\t\tURL: appURL + \"/organization/\" + uri.split(\"/resources/\")[1],\r\n\t\t\tImage: data?.[\"ceterms:image\"]\r\n\t\t} as Outline;\r\n\t}\r\n\r\n\tvar destinationComponent = (pathway.HasDestinationComponent ?\r\n\t\tcomponents.filter((m) => { return m.CredentialRegistryURL == pathway.HasDestinationComponent })[0] :\r\n\t\tcomponents.filter((m: any) => { return m.IsDestinationComponentOf == pathway.CredentialRegistryURL })[0]) ||\r\n\t\t{ Name: \"No Destination\", Description: \"No destination component was indicated for this pathway.\" } as PathwayComponentType;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{pathway.Description || \"No description available\"}\r\n\t\t\t\t\t\t{pathway.SubjectWebpage && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{destinationComponent && }\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t].filter(m => m.Content != null)}\r\n\t\t\t\t/>\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\n\r\nfunction PathwayComponent(props: { pathwayComponent: PathwayComponentType, allPathwayComponents: Array }) {\r\n\treturn props.pathwayComponent && (\r\n\t\t\r\n\t\t\t{props.pathwayComponent.Name && {props.pathwayComponent.Name}}\r\n\t\t\t\r\n\t\t\t\t{props.pathwayComponent.Description &&
    {props.pathwayComponent.Description}
    }\r\n\t\t\t\t{props.pathwayComponent.HasCondition?.length > 0 &&\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{props.pathwayComponent.HasCondition.map((componentCondition, index) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t
    \r\n\t\t
    \r\n\t) || null;\r\n}\r\n\r\nfunction ComponentCondition(props: { componentCondition: ComponentConditionType, allPathwayComponents: Array }) {\r\n\treturn props.componentCondition && (\r\n\t\t\r\n\t\t\t{props.componentCondition.Name &&
    {props.componentCondition.Name}
    }\r\n\t\t\t{props.componentCondition.Description &&
    {props.componentCondition.Description}
    }\r\n\t\t
    \r\n\t) || null;\r\n}\r\n\r\nconst PathwayComponentWrapper = styled.div`\r\n\tpadding: 5px;\r\n\r\n\t&:not(:last-child) {\r\n\t\tborder-bottom: 1px solid #CCC;\r\n\t}\r\n`;\r\n\r\nconst PathwayComponentName = styled.div`\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst PathwayComponentContent = styled.div`\r\n\tpadding-left: 10px;\r\n`;\r\n\r\nconst ComponentConditionList = styled.div`\r\n\tpadding-left: 25px;\r\n`;\r\n\r\nconst ComponentConditionWrapper = styled.div`\r\n\t\r\n`;","import React, { useEffect, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport { apiUrl, appURL, registryURL } from '../../shared/globals';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport { Description, Section, Label, Wrapper, FullWidthWrapper, InnerWrapper } from '../../components/DetailPage/styles';\r\nimport { VStack } from '../../components/Stack';\r\nimport pathwaysBannerIcon from '../../assets/images/icons/icon-pathways-white-green-01.svg';\r\nimport pathwaysIcon from '../../assets/images/icons/icon-pathways-green-blue-01.svg';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport { LinkItem } from '../../components/DetailPage/Shared';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport RelatedOrganizationPageSection, { RelatedOrganizationPageSectionAJAXResourceList } from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport AJAXResourceList, { createElement, getEnglish, renderText, renderLink, renderImage, renderElement, getResourceViaResourceCacheV3, getDetailPageHeaderModifiedDate, renderOutline, lookupSchema, appendAJAXCacheV3ResourceRaw } from '../../components/AJAXResourceList';\r\nimport { getResourceByURI, createKeywordSearchLink, createKeywordSearchLinkListFromCredentialAlignmentObjectList, createReferenceFrameworkFromCredentialAlignmentObject } from '../../components/GetResourceByURI';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport {\r\n\tPathway as PathwayType,\r\n\tPathwayComponent as PathwayComponentType,\r\n\tComponentCondition as ComponentConditionType,\r\n\tIdentifierValue as IdentifierValueType,\r\n\tValueProfile as ValueProfileType,\r\n\tConceptScheme,\r\n\tConcept as ConceptType,\r\n\tLink,\r\n\tOutline,\r\n\tAJAXSettingsOutline,\r\n PathwayComponent\r\n} from '../../types/external';\r\nimport AJAXModal from '../../components/Modal/AJAXModal';\r\nimport { Concept, convertDataToConceptScheme, convertDataToConcept } from '../ConceptSchemePage';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport DisplayPills from '../../components/PillDisplay';\r\n\r\ninterface Props {\r\n\tid: string;\r\n\ttargetCTID?: string;\r\n}\r\n\r\nexport default function PathwayPageV3(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [dataIsLoading, setDataIsLoading] = useState(true);\r\n\tconst [hasError, setHasError] = useState(false);\r\n\tconst [rawPathwayData, setRawPathwayData] = useState({} as any);\r\n\tconst [pageModel, setPathway] = useState({} as PathwayType);\r\n\tconst [relatedItemsMap, setRelatedItemsMap] = useState({} as any);\r\n\tconst [graph, setGraph] = useState([] as Array);\r\n\tconst [progressionModelData, setProgressionModelData] = useState({} as ConceptScheme);\r\n\tconst [progressionLevelsData, setProgressionLevelsData] = useState([] as Array)\r\n\tconst [localAJAXCache, setLocalAJAXCache] = useState([] as Array); //Used to trick react into re-rendering the data\r\n\tconst [supportServiceData, setSupportServiceData] = useState([] as Array);\r\n\tconst [supportServiceWrapper, setSupportServiceWrapper] = useState({} as AJAXSettingsOutline);\r\n\tconst [externalComponents, setExternalComponents] = useState([] as PathwayComponent[]);\r\n\r\n\r\n\tvar rawPathwayDataNow = {} as any;\r\n\tvar rawExtraDataNow = {} as any;\r\n\tvar supportServices = [] as Array;\r\n\tuseEffect(() => {\r\n\t\tgetResourceByURI(`${apiUrl}/dsp_pathway/${id}?includeRelatedResources=false&includeGraphData=true&perBranchLimit=-1`, setLocalAJAXCache, null, (loaded: any) => {\r\n\t\t\t//Get data\r\n\t\t\trawPathwayDataNow = loaded.Result.Resource;\r\n\t\t\trawExtraDataNow = loaded.Extra;\r\n\t\t\trenderJSONLDMetaTags(rawPathwayDataNow, \"Pathway\");\r\n\t\t\tsetRawPathwayData(loaded.Result.Resource); //Takes extra rendering cycles for some stupid reason so double assign it\r\n\t\t\tvar metadata = loaded.Result.Metadata || {};\r\n\t\t\tvar relatedItemsMapData = loaded.Result.RelatedItemsMap || {};\r\n\t\t\tvar graphItemsData = loaded.Result.RelatedItems || [] as Array;\r\n\t\t\tsetDataIsLoading(false);\r\n\t\t\tsetPathway(convertDataToPathway(rawPathwayDataNow || { \"ceterms:name\": \"Missing Pathway\", \"ceterms:description\": \"Unable to find data for identifier: \" + id } as any, metadata, rawExtraDataNow));\r\n\r\n\t\t\tsetGraph(graphItemsData);\r\n\t\t\tsetRelatedItemsMap(relatedItemsMapData);\r\n\t\t\tconsole.log(\"Detail Data\", { Pathway: pageModel, Graph: graph, GraphNow: loaded.Result.RelatedItems });\r\n\r\n\t\t\t//Get owner for header\r\n\t\t\tif (!pageModel.OwnedByLabel && rawPathwayDataNow[\"ceterms:ownedBy\"]) {\r\n\t\t\t\tgetResourceViaResourceCacheV3(rawPathwayDataNow[\"ceterms:ownedBy\"]?.[0], (data: any) => {\r\n\t\t\t\t\tpageModel.OwnedByLabel = {\r\n\t\t\t\t\t\tLabel: getEnglish(data?.[\"ceterms:name\"]),\r\n\t\t\t\t\t\tURL: appURL + \"/resources/\" + data[\"ceterms:ctid\"]\r\n\t\t\t\t\t} as Link;\r\n\r\n\t\t\t\t\tvar updatedPathway = convertDataToPathway(rawPathwayDataNow || { \"ceterms:name\": \"Missing Pathway\", \"ceterms:description\": \"Unable to find data for identifier: \" + id } as any, metadata, rawExtraDataNow);\r\n\t\t\t\t\tsetPathway({...updatedPathway, OwnedByLabel: pageModel.OwnedByLabel});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t//Get Progression Model\r\n\t\t\tif (!progressionModelData.CTID && rawPathwayDataNow[\"asn:hasProgressionModel\"]) {\r\n\t\t\t\tgetResourceViaResourceCacheV3(rawPathwayDataNow[\"asn:hasProgressionModel\"].replace(\"/resources/\", \"/graph/\"), (data: any) => {\r\n\t\t\t\t\tconsole.log(\"Got Progression Model Data\", data);\r\n\t\t\t\t\tvar progressionModel = data[\"@graph\"]?.find((m: any) => m[\"@type\"] == \"asn:ProgressionModel\");\r\n\t\t\t\t\tvar progressionLevels = data[\"@graph\"]?.filter((m: any) => m[\"@type\"] == \"asn:ProgressionLevel\");\r\n\r\n\t\t\t\t\tsetProgressionModelData(convertDataToConceptScheme(progressionModel, null, \"\", setLocalAJAXCache));\r\n\r\n\t\t\t\t\t//Forcibly convert the data because React can't handle it\r\n\t\t\t\t\tprogressionLevels.forEach((level: any) => {\r\n\t\t\t\t\t\tif (!progressionLevelsData.find(m => m.CredentialRegistryURL == level[\"@id\"])) {\r\n\t\t\t\t\t\t\tvar convertedConcept = convertDataToConcept(level, setLocalAJAXCache);\r\n\t\t\t\t\t\t\tprogressionLevelsData.push(convertedConcept);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\tsetProgressionLevelsData([...progressionLevelsData]);\r\n\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t//Get Support Services\r\n\t\t\tif (!pageModel.HasSupportService && rawPathwayDataNow[\"ceterms:hasSupportService\"]?.length > 0) {\r\n\t\t\t\tpageModel.HasSupportService = { Values: [{Label: \"test\"}] as Array } as AJAXSettingsOutline;\r\n\t\t\t\t(rawPathwayDataNow[\"ceterms:hasSupportService\"] || []).forEach((serviceURI: string) => {\r\n\t\t\t\t\tvar holder = {} as Outline;\r\n\t\t\t\t\tpageModel.HasSupportService.Values.push(holder);\r\n\t\t\t\t\tsupportServices.push(holder);\r\n\t\t\t\t\tgetResourceViaResourceCacheV3(serviceURI, (data: any) => {\r\n\t\t\t\t\t\tconsole.log(\"Got support service data\", data);\r\n\t\t\t\t\t\tholder.Label = getEnglish(data[\"ceterms:name\"]) || \"Unnamed Support Service\";\r\n\t\t\t\t\t\tholder.Description = getEnglish(data[\"ceterms:description\"]) || \"No Description\";\r\n\t\t\t\t\t\tholder.URL = appURL + \"/resources/\" + data[\"ceterms:ctid\"];\r\n\t\t\t\t\t\t//setSupportServiceData([...supportServiceData, holder]);\r\n\t\t\t\t\t\tconsole.log(\"Support\", supportServices);\r\n\t\t\t\t\t\tsetSupportServiceWrapper({ ...pageModel.HasSupportService, Values: [...supportServices] }); //Have to do this to get around react's stupid garbage architecture\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\t\t\t(error: any) => {\r\n\t\t\t\tsetHasError(true);\r\n\t\t\t\tconsole.log(\"Error loading data: \", error);\r\n\t\t\t});\r\n\r\n\t\tnew URLSearchParams(window.location.search).forEach(function (value: string, key: string) {\r\n\t\t\tif (key.toLowerCase() == \"memberctid\") {\r\n\t\t\t\tjumpToProxyForCTID(value.toLowerCase(), 0);\r\n\t\t\t}\r\n\t\t});\r\n\t}, [id, localAJAXCache]);\r\n\r\n\tfunction convertDataToPathway(resource: any, metadata: any, rawExtraDataNow: any): PathwayType {\r\n\t\treturn ({\r\n\t\t\tBroadType: \"Pathway\",\r\n\t\t\tCTDLType: \"ceterms:Pathway\",\r\n\t\t\tCTDLTypeLabel: \"Pathway\",\r\n\t\t\tMeta_Id: id,\r\n\t\t\tMeta_Language: resource[\"ceterms:inLanguage\"]?.[0] || \"en\",\r\n\t\t\tMeta_LastUpdated: metadata?.DateModified || \"Unknown\",\r\n\t\t\tMeta_LastUpdatedHeader: getDetailPageHeaderModifiedDate(metadata?.DateModified),\r\n\t\t\tHasDestinationComponent: Array.isArray(resource[\"ceterms:hasDestinationComponent\"]) ? resource[\"ceterms:hasDestinationComponent\"][0] : resource[\"ceterms:hasDestinationComponent\"],\r\n\t\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\t\tInstructionalProgramType: resource[\"ceterms:instructionalProgramType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tIndustryType: resource[\"ceterms:industryType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tOccupationType: resource[\"ceterms:occupationType\"]?.map((m: any) => { return createReferenceFrameworkFromCredentialAlignmentObject(\"competencyframework\", m) }),\r\n\t\t\tName: getEnglish(resource[\"ceterms:name\"]),\r\n\t\t\tDescription: getEnglish(resource[\"ceterms:description\"]),\r\n\t\t\tSubjectWebpage: resource[\"ceterms:subjectWebpage\"],\r\n\t\t\tSubject: resource[\"ceterms:subject\"]?.map((m: any) => { return createKeywordSearchLink(\"pathway\", getEnglish(m[\"ceterms:targetNodeName\"])) }),\r\n\t\t\tHasMember: resource[\"ceterms:hasMember\"] || [],\r\n\t\t\tHasPart: resource[\"ceterms:hasPart\"] || [],\r\n\t\t\tRegistryData: { CTID: resource[\"ceterms:ctid\"], Resource: { URL: resource[\"@id\"], Label: \"View Resource\" }, Envelope: { URL: resource[\"@id\"]?.replace(\"/resources/\", \"/envelopes/\"), Label: \"View Envelope\" } },\r\n\t\t\tPreviousVersion: resource[\"ceterms:previousVersion\"],\r\n\t\t\tLatestVersion: resource[\"ceterms:latestVersion\"],\r\n\t\t\tNextVersion: resource[\"ceterms:nextVersion\"],\r\n\t\t\tLifeCycleStatusType : resource[\"ceterms:lifeCycleStatusType\"] && resource[\"ceterms:lifeCycleStatusType\"][\"ceterms:targetNodeName\"] ? resource[\"ceterms:lifeCycleStatusType\"][\"ceterms:targetNodeName\"][\"en-US\"] : null,\r\n\t\t\tMeta_JSON: resource,\r\n\t\t\tAllowUseOfPathwayDisplay: rawExtraDataNow?.AllowUseOfPathwayDisplay\r\n\t\t} as any) as PathwayType;\r\n\t}\r\n\r\n\tfunction jumpToProxyForCTID(targetCTID: string, attempts: number) {\r\n\t\tconsole.log(\"jumping to CTID\", targetCTID)\r\n\t\tsetTimeout(function () {\r\n\t\t\tvar element = document.querySelector(\"[data-ctid='\" + targetCTID + \"']\");\r\n\t\t\tif (element) {\r\n\t\t\t\telement.scrollIntoView();\r\n\t\t\t}\r\n\t\t\telse if (attempts <= 10) {\r\n\t\t\t\tjumpToProxyForCTID(targetCTID, attempts + 1);\r\n\t\t\t}\r\n\t\t}, 500);\r\n\t}\r\n\tconst checkComponents = (components: any, haspart: any) => {\r\n\t\tconst missingIds = [];\r\n\t\tif (components.length > 0) {\r\n\t\t\tfor (const component of components) {\r\n\t\t\t\tconst precededby = component['ceterms:precededBy'];\r\n\t\t\t\tif (Array.isArray(precededby)) {\r\n\t\t\t\t\tfor (const id of precededby) {\r\n\t\t\t\t\t\tif (!haspart.includes(id)) {\r\n\t\t\t\t\t\t\tmissingIds.push(id);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (!haspart.includes(precededby) && precededby != undefined) {\r\n\t\t\t\t\t\tmissingIds.push(precededby);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn missingIds;\r\n\t};\r\n\tvar pathwayComponents = graph.filter(m => m[\"ceasn:isPartOf\"] == pageModel.CredentialRegistryURL);\r\n\tpathwayComponents.sort((a, b) => { return pageModel.HasDestinationComponent == a[\"@id\"] ? -1 : 0 });\r\n\tvar pathwayComponentURLs=pathwayComponents.map((m: any) => m[\"@id\"]) as Array;\r\n\tvar topProgressionLevels = progressionModelData.HasTopConcept?.length > 0 ? progressionModelData.HasTopConcept.map((m) => { return progressionLevelsData.filter((n) => { return n.CredentialRegistryURL == m })[0] }).filter((m) => { return m }) : progressionLevelsData;\r\n\t;\r\n\tuseEffect(() => {\r\n\t\tvar hasExternalComponents = checkComponents(pathwayComponents, pageModel.HasPart);\r\n\t\tif (hasExternalComponents != null && hasExternalComponents.length > 0) {\r\n\t\t\tconst updatedComponents: any[] = [];\r\n\t\t\tfor (const component of hasExternalComponents) {\r\n\t\t\t\tconst ctid = component.split(\"resources/\")[1];\r\n\t\t\t\tvar data = getResourceByURI(`${apiUrl}/PathwayComponent/${ctid}`, setLocalAJAXCache).Data;\r\n\t\t\t\tif (data != null && data.Result) {\r\n\t\t\t\t\tupdatedComponents.push(data.Result);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (updatedComponents.length > 0 && updatedComponents.length != externalComponents.length) {\r\n\t\t\t\tsetExternalComponents(updatedComponents);\r\n\t\t\t}\r\n\t\t}\r\n\t}, [pathwayComponents, pageModel.HasPart]);\r\n\r\n\tconsole.log(pageModel);\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Pathway\");\r\n\tconsole.log(\"Support Services\", supportServiceWrapper.Values); //Requires having an array to actually hold the values as they are updated (because react won't) and an object in the state that gets updated (so react will notice the change)\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{pageModel.Description || \"No Description\"}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{pageModel.AllowUseOfPathwayDisplay && }\r\n\t\t\t\t\t\t\t\t{!pageModel.AllowUseOfPathwayDisplay &&
    {typeLabel} Viewer is not available for this Resource.
    }\r\n\t\t\t\t\t\t\t\t{pageModel.SubjectWebpage && }\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t{pageModel.LifeCycleStatusType && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{pageModel.LifeCycleStatusType}\r\n\t\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{(pageModel.LatestVersion || pageModel.PreviousVersion || pageModel.NextVersion ) &&\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    This pathway contains {pathwayComponentURLs.length + externalComponents.length} Components.
    \r\n\t\t\t\t\t\t\t\t\t renderPathwayComponentProxyForData(pageModel, data, itemContainer, itemList)} resources={graph} />\r\n\t\t\t\t\t\t\t\t\t{externalComponents?.map((component: PathwayComponent, index: number) => (\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t{component.PathwayComponentType}\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\tExternal Component\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {component.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{component.CredentialType}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{component.Description}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: widgetGetPluralLabelForText(\"Progression Levels\"),\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{topProgressionLevels && topProgressionLevels.map((level) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t].filter(m => m.Content != null)}\r\n\t\t\t\t/>\r\n\t\t\t
    \r\n\t\t
    \r\n\t)\r\n}\r\n\r\nfunction renderPathwayComponentProxyForData(pathway: PathwayType, data: any, itemContainer: any, itemList: any) {\r\n\titemContainer.innerHTML = \"\";\r\n\titemContainer.classList.add(\"pathwayComponent\");\r\n\r\n\tlookupSchema(schemaGraph => {\r\n\t\t//Left Margin things\r\n\t\t//Component Type\r\n\t\trenderText(itemContainer, getSchemaProperty(data[\"@type\"], \"rdfs:label\", data[\"@type\"]), \"div\", \"componentPrefixItem componentType\", \"Component Type\");\r\n\t\trenderText(itemContainer, data[\"ceterms:componentCategory\"], \"div\", \"componentPrefixItem componentCategory\", \"Component Designation\");\r\n\t\trenderText(itemContainer, pathway.HasDestinationComponent == data[\"@id\"] ? \"Destination Component\" : null, \"div\", \"componentPrefixItem componentDestination\", \"This component represents the destination for the Pathway.\");\r\n\r\n\t\t//Content\r\n\t\tvar content = renderElement(itemContainer, true, \"div\", \"componentContent\", () => { });\r\n\r\n\t\t//Name\r\n\t\tvar headerContent = renderElement(content, true, \"div\", \"componentHeader\", () => { });\r\n\t\tif (data[\"ceterms:proxyFor\"]?.includes(registryURL)) {\r\n\t\t\trenderLink(headerContent, data[\"ceterms:proxyFor\"].replace(registryURL, appURL).replace(\"/graph/\", \"/resources/\"), getEnglish(data[\"ceterms:name\"] || \"Unnamed Resource\"), \"_blank\", \"componentName componentNameLink\");\r\n\t\t}\r\n\t\telse {\r\n\t\t\trenderText(headerContent, getEnglish(data[\"ceterms:name\"] || \"Unnamed Resource\"), \"div\", \"componentName\");\r\n\t\t}\r\n\r\n\t\t//Credential Type (if applicable)\r\n\t\tif (data[\"ceterms:credentialType\"]) {\r\n\t\t\tvar type = data[\"ceterms:credentialType\"]?.replace(\"https://purl.org/ctdl/terms/\", \"ceterms:\");\r\n\t\t\trenderText(headerContent, \"(\" + getSchemaProperty(type, \"rdfs:label\", type) + \")\", \"div\", \"componentCredentialType\")\r\n\t\t}\r\n\r\n\t\t//Description\r\n\t\trenderText(content, getEnglish(data[\"ceterms:description\"] || data[\"ceasn:description\"] || data[\"skos:definition\"] || data[\"ceasn:competencyText\"] || \"No Description\"), \"div\", \"componentDescription\");\r\n\r\n\t\tfunction getSchemaProperty(termURI: string, schemaProperty: string, fallback: string): any {\r\n\t\t\treturn getEnglish(schemaGraph.find(m => m[\"@id\"] == termURI)?.[schemaProperty] || fallback);\r\n\t\t}\r\n\t});\r\n\r\n}\r\n\r\n","export default __webpack_public_path__ + \"static/media/icon-pathwaysets-white-green-01.0fbe6c74.svg\";","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pathwayIcon from '../../assets/images/icons/icon-pathways-green-blue-01.svg';\r\nimport pageIcon from '../../assets/images/icons/icon-pathwaysets-white-green-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n Label,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { PathwaySet } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function PathwaySetPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as PathwaySet);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/PathwaySet/${id}`, (data: PathwaySet) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n color: \"transparent\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n\t}\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Pathway Set\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n \r\n {pageModel.Description && (\r\n \r\n {pageModel.Description}\r\n \r\n )}\r\n \r\n {pageModel.SubjectWebpage &&\r\n \r\n }\r\n \r\n \r\n\r\n \r\n \r\n\t\t\t\t\t\r\n \r\n \r\n {pageModel.HasPathway &&\r\n\t\t\t\t\t\t\r\n \r\n \r\n }\r\n\r\n\r\n\t\t\t\t\t\r\n\r\n \r\n \r\n \r\n );\r\n}\r\n//","import React, { useEffect, useState } from 'react';\r\nimport { Redirect, useHistory } from \"react-router-dom\";\r\nimport axios from 'axios';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport styled from 'styled-components/macro';\r\nimport Error from '../../components/Error';\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function ResourcesPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [loading, setLoading] = useState(false);\r\n const [pageContent, setPageContent] = useState(' ');\r\n const [error, setError] = useState(false);\r\n const testurl = `${apiUrl}/resources/` + id;\r\n // Using useHistory Hook\r\n let history = useHistory();\r\n useEffect(() => {\r\n setLoading(true);\r\n\t\tconst url = `${apiUrl}/resources/` + id;\r\n axios\r\n .get(url)\r\n .then((res) => {\r\n //return is currently an Outline with a relative URL\r\n history.push(\"/\" + res.data.Result.URL);\r\n //can't have useEffect under another useEffect\r\n // useEffect(() => {\r\n // window.location.href = \"credential/\" + id;//TBD\r\n // }, []);\r\n //setPageContent(res.data);\r\n setLoading(false);\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n setError(true);\r\n setLoading(false);\r\n });\r\n }, []);\r\n if (loading) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n if (error) {\r\n return ;\r\n }\r\n return ;\r\n}\r\n\r\nconst LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_13-Jobs_Blue-Green_High-Res.png';\r\nimport costIcon from '../../assets/images/icons/icon-costs-and-time-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { Job } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from \"../../components/DetailPage/ConditionProfile\";\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from '../../types/internal';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { CompetencyFrameworkList } from '../../components/DetailPage/CompetencyFramework';\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function JobPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n\tconst [pageModel, setPageData] = useState({} as Job);\r\n\tconst [openedModal, setOpenedModal] = useState();\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/Job/${id}`, (data: Job) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\t\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Job\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n\r\n\r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n \r\n {pageModel.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {pageModel.Classification &&\r\n \r\n \r\n {pageModel.Classification.Values.map((item, index) => (\r\n
    \r\n {item.URL ? (\r\n \r\n {item.Label}\r\n \r\n ) : (\r\n {item.Label}\r\n )}\r\n \r\n {item.Description}\r\n \r\n
    \r\n ))}\r\n
    \r\n }\r\n {pageModel.InCatalog &&\r\n \r\n }\r\n \r\n\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n {/* }\r\n\t\t\t\t\t\t\t\t\t/>*/}\r\n }\r\n />\r\n {/* }\r\n\t\t\t\t\t\t\t\t\t/>*/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n \r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n {/* }*/}\r\n {/* hideCount={true}*/}\r\n {/*/>*/}\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n\t\t\t\t />\r\n }\r\n hideCount={true}\r\n />\r\n\t\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {isFilled(pageModel.SameAs) && (\r\n \r\n \r\n {pageModel.SameAs.map((url) => (\r\n
    \r\n {url}\r\n
    \r\n ))}\r\n
    \r\n )}\r\n \r\n )\r\n }\r\n ].filter(m => m.Content != null)}\r\n />\r\n
    \r\n \r\n );\r\n}\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport costIcon from '../../assets/images/icons/icon-costs-and-time-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_11-Occupations_Blue-Green_High-Res.png';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { Occupation } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from \"../../components/DetailPage/ConditionProfile\";\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from '../../types/internal';\r\nimport LocationPageSection from '../../components/DetailPage/LocationPageSection';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { CompetencyFrameworkList } from '../../components/DetailPage/CompetencyFramework';\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function OccupationPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as Occupation);\r\n const [openedModal, setOpenedModal] = useState();\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/Occupation/${id}`, (data: Occupation) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n console.log(pageModel);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\t\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Occupation\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n\r\n\r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n {pageModel.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {pageModel.Classification &&\r\n \r\n \r\n {pageModel.Classification.Values.map((item, index) => (\r\n
    \r\n {item.URL ? (\r\n \r\n {item.Label}\r\n \r\n ) : (\r\n {item.Label}\r\n )}\r\n \r\n {item.Description}\r\n \r\n
    \r\n ))}\r\n
    \r\n }\r\n {pageModel.InCatalog &&\r\n \r\n }\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* }\r\n\t\t\t\t\t\t\t\t\t/>*/}\r\n }\r\n />\r\n {/* }\r\n\t\t\t\t\t\t\t\t\t/>*/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t{/**/}\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n {/* }*/}\r\n {/* hideCount={true}*/}\r\n {/*/>*/}\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n {/* }*/}\r\n {/* hideCount={true}*/}\r\n {/*/>*/}\r\n }\r\n hideCount={true}\r\n />\r\n {/* }*/}\r\n {/* hideCount={true}*/}\r\n\t\t\t\t {/*/>*/}\r\n {/* }*/}\r\n {/* hideCount={true}*/}\r\n {/* />*/}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {isFilled(pageModel.SameAs) && (\r\n \r\n \r\n {pageModel.SameAs.map((url) => (\r\n
    \r\n {url}\r\n
    \r\n ))}\r\n
    \r\n )}\r\n \r\n )\r\n }\r\n ].filter(m => m.Content != null)}\r\n />\r\n
    \r\n \r\n );\r\n}\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_14-Work-Roles_Blue-Green_High-Res.png';\r\n\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { AJAXSettingsOutline, WorkRole } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from \"../../components/DetailPage/ConditionProfile\";\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from '../../types/internal';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { CompetencyFrameworkList } from '../../components/DetailPage/CompetencyFramework';\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function WorkRolePage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as WorkRole);\r\n const [openedModal, setOpenedModal] = useState();\r\n const [knowledgeEmbodied, setKnowledgeEmbodied] = useState({} as AJAXSettingsOutline);\r\n const [abilityEmbodied, setAbilityEmbodied] = useState({} as AJAXSettingsOutline);\r\n const [skillEmbodied, setSkillEmbodied] = useState({} as AJAXSettingsOutline);\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/WorkRole/${id}`, (data: WorkRole) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n \r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\t\r\n var typeLabel = widgetGetSingleLabelForText(\"Work Role\");\r\n\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n if (pageModel.CTID != null) {\r\n try {\r\n await getPageData(`${apiUrl}/GetCompetencies/${pageModel.CTID}`, (data: WorkRole) => {\r\n setKnowledgeEmbodied(data.KnowledgeEmbodied);\r\n setAbilityEmbodied(data.AbilityEmbodied);\r\n setSkillEmbodied(data.SkillEmbodied);\r\n });\r\n } catch (error) {\r\n console.error(\"Error fetching data:\", error);\r\n }\r\n }\r\n };\r\n fetchData();\r\n }, [pageModel.CTID]);\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n {pageModel.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {pageModel.Classification &&\r\n \r\n \r\n {pageModel.Classification.Values.map((item, index) => (\r\n
    \r\n {item.URL ? (\r\n \r\n {item.Label}\r\n \r\n ) : (\r\n {item.Label}\r\n )}\r\n \r\n {item.Description}\r\n \r\n
    \r\n ))}\r\n
    \r\n }\r\n {pageModel.InCatalog &&\r\n \r\n }\r\n {/*{pageModel.SubjectWebpage &&*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*}*/}\r\n\r\n \r\n \r\n\t\t\t\t\t\r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n {/* }*/}\r\n {/* hideCount={true}*/}\r\n {/*/>*/}\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n );\r\n}\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_15-Tasks_Blue-Green_High-Res.png';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { Task } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from \"../../components/DetailPage/ConditionProfile\";\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from '../../types/internal';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { CompetencyFrameworkList } from '../../components/DetailPage/CompetencyFramework';\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function TaskPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as Task);\r\n const [openedModal, setOpenedModal] = useState();\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/Task/${id}`, (data: Task) => {\r\n debugger;\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\r\n var typeLabel = widgetGetSingleLabelForText(\"Task\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n {pageModel.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {pageModel.Classification &&\r\n \r\n \r\n {pageModel.Classification.Values.map((item, index) => (\r\n
    \r\n {item.URL ? (\r\n \r\n {item.Label}\r\n \r\n ) : (\r\n {item.Label}\r\n )}\r\n \r\n {item.Description}\r\n \r\n
    \r\n ))}\r\n
    \r\n }\r\n {pageModel.InCatalog &&\r\n \r\n }\r\n\r\n {/*{pageModel.SubjectWebpage &&*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*}*/}\r\n\r\n \r\n \r\n \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n \r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n {/* }*/}\r\n {/* hideCount={true}*/}\r\n {/*/>*/}\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n );\r\n}\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport styled from 'styled-components/macro';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/icons/icon-scoring-method-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport { LinkItem } from '../../components/DetailPage/Shared';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack, HStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { Rubric, ConceptScheme, RubricLevel, RubricCriterion, CriterionLevel } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from \"../../components/DetailPage/ConditionProfile\";\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from '../../types/internal';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport { Section, SectionLabel, SectionContent } from '../../components/DetailPage/Shared';\r\nimport { Inline, InlineLabel } from '../../components/DetailPage/styles';\r\nimport { Concept, convertDataToConceptScheme, convertDataToConcept } from '../ConceptSchemePage';\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function RubricPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as Rubric);\r\n const [openedModal, setOpenedModal] = useState();\r\n const [progressionModelData, setProgressionModelData] = useState({} as ConceptScheme);\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/Rubric/${id}`, (data: Rubric) => {\r\n debugger;\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n function TextItem(props: { label: string, item: string }) {\r\n return (props.item &&\r\n \r\n {props.label}\r\n
    {props.item}
    \r\n
    \r\n ) || null\r\n }\r\n function NumberItem(props: { label: string, item: number }) {\r\n return (props.item &&\r\n \r\n {props.label}\r\n
    {props.item}
    \r\n
    \r\n ) || null\r\n }\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n const CompetencyCTID = styled.div`\r\n\tpadding: 0 10px;\r\n\tfont-size: 90%;\r\n`;\r\n const styles: { [key: string]: React.CSSProperties } = {\r\n tableContainer: {\r\n borderCollapse: 'collapse',\r\n },\r\n headerCell: {\r\n border: '0.5px solid #ddd',\r\n padding: '4px',\r\n textAlign: 'left',\r\n verticalAlign: 'top',\r\n backgroundColor: '#DCFAF9',\r\n width: '550px',\r\n fontWeight: 'normal',\r\n\r\n },\r\n dataCell: {\r\n border: '1px solid #ddd',\r\n padding: '4px',\r\n textAlign: 'left',\r\n verticalAlign: 'top',\r\n width: '550px',\r\n },\r\n cell: {\r\n border: '1px solid #ddd', \r\n padding: '4px',\r\n verticalAlign: 'top',\r\n textAlign: 'left',\r\n }\r\n };\r\n\r\n var typeLabel = widgetGetSingleLabelForText(\"Rubric\");\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n\r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n {pageModel.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {pageModel.InCatalog &&\r\n \r\n }\r\n\r\n {isFilled(pageModel.AudienceType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n {isFilled(pageModel.AudienceLevelType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n {isFilled(pageModel.EducationLevelType\r\n ) && (\r\n \r\n \r\n \r\n \r\n )}\r\n {isFilled(pageModel.DeliveryType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n {isFilled(pageModel.EvaluatorType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n {(pageModel.LatestVersion?.URL || pageModel.PreviousVersion?.URL || pageModel.NextVersion?.URL) &&\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n }\r\n hideCount={true}\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.HasScope && (\r\n \r\n \r\n Has Scope: {pageModel.HasScope}\r\n \r\n \r\n )}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {pageModel?.RubricLevels?.map((level, index) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n {pageModel?.RubricCriterions?.map((criterion, rowIndex) => (\r\n \r\n \r\n \r\n {pageModel?.RubricLevels?.map((level, colIndex) => (\r\n \r\n ))}\r\n \r\n ))}\r\n \r\n
    \r\n {/**/}\r\n {/* Type: Rubric Level*/}\r\n {/**/}\r\n {level.Name && (\r\n \r\n {level.Name}\r\n \r\n )}\r\n {level.Description && (\r\n \r\n {level.Description}\r\n \r\n )}\r\n {level.ListID && (\r\n \r\n List ID: {level.ListID}\r\n \r\n )}\r\n {level.CodedNotation && (\r\n \r\n Coded Notation: {level.CodedNotation}\r\n \r\n )}\r\n {level.HasProgressionLevel?.Values?.length > 0 && Has Progression Level:\r\n {level.HasProgressionLevel?.Values[0].Label}\r\n }\r\n
    \r\n {/**/}\r\n {/* Type: Rubric Criterion*/}\r\n {/**/}\r\n {criterion.Name && (\r\n \r\n {criterion.Name}\r\n \r\n )}\r\n {criterion.Description && (\r\n \r\n {criterion.Description}\r\n \r\n )}\r\n {criterion.CTID && (\r\n \r\n CTID:\r\n {criterion.CTID}\r\n \r\n )}\r\n {criterion.ListID && (\r\n \r\n List ID: {criterion.ListID}\r\n \r\n )}\r\n {criterion.CodedNotation && (\r\n \r\n Coded Notation: {criterion.CodedNotation}\r\n \r\n )}\r\n {criterion.Weight && (\r\n \r\n Weight: {criterion.Weight}\r\n \r\n )}\r\n {criterion.HasProgressionLevel?.Values?.length > 0 && Has Progression Level: \r\n {criterion.HasProgressionLevel?.Values[0].Label}\r\n }\r\n {criterion.TargetTask?.Values?.length > 0 && (\r\n \r\n TargetTask:\r\n
      \r\n {criterion.TargetTask?.Values.map((targettask, index) => (\r\n
    • \r\n {targettask.Label}\r\n
    • \r\n ))}\r\n
    \r\n
    \r\n )}\r\n {criterion.TargetCompetency?.Values?.length > 0 && (\r\n \r\n TargetCompetency:\r\n
      \r\n {criterion.TargetCompetency?.Values.map((targettask, index) => (\r\n
    • \r\n {targettask.Label}\r\n
    • \r\n ))}\r\n
    \r\n
    \r\n )}\r\n
    \r\n {level?.HasCriterionLevel?.map(criterionLevel => (\r\n criterion?.HasCriterionLevel?.some(c => c.RowId === criterionLevel.RowId) && (\r\n
    \r\n {/**/}\r\n {/* Type: Criterion Level*/}\r\n {/**/}\r\n {criterionLevel.BenchmarkLabel && (\r\n \r\n {criterionLevel.BenchmarkText ? (\r\n {criterionLevel.BenchmarkLabel}\r\n ) : (\r\n criterionLevel.BenchmarkLabel\r\n )}\r\n \r\n \r\n )}\r\n {criterionLevel.BenchmarkText && (\r\n \r\n {criterionLevel.BenchmarkText}\r\n \r\n )}\r\n {criterionLevel.ListID && (\r\n \r\n List ID: {criterionLevel.ListID}\r\n \r\n )}\r\n {criterionLevel.CodedNotation && (\r\n \r\n Coded Notation: {criterionLevel.CodedNotation}\r\n \r\n )}\r\n {criterionLevel.Feedback && (\r\n \r\n Feedback: {criterionLevel.Feedback}\r\n \r\n )}\r\n {criterionLevel.Value > 0 && (\r\n \r\n Value: {criterionLevel.Value}\r\n \r\n )}\r\n {criterionLevel.MaxValue > 0 && (\r\n \r\n Max Value: {criterionLevel.MaxValue}\r\n \r\n )}\r\n {criterionLevel.MinValue > 0 && (\r\n \r\n Min Value: {criterionLevel.MinValue}\r\n \r\n )}\r\n {criterionLevel.Percentage > 0 && (\r\n \r\n Percentage: {criterionLevel.Percentage}\r\n \r\n )}\r\n {criterionLevel.MaxPercentage > 0 && (\r\n \r\n Max Percentage: {criterionLevel.MaxPercentage}\r\n \r\n )}\r\n {criterionLevel.MinPercentage > 0 && (\r\n \r\n Min Percentage: {criterionLevel.MinPercentage}\r\n \r\n )}\r\n\r\n
    \r\n )\r\n ))}\r\n
    \r\n \r\n\r\n\r\n )\r\n },\r\n {\r\n Label: \"Details\",\r\n Content: (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n )\r\n }\r\n ].filter(m => m.Content != null)}\r\n />\r\n
    \r\n\r\n \r\n );\r\n}\r\n\r\n\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_10-Support_Blue-Green_High-Res.png';\r\nimport costIcon from '../../assets/images/icons/icon-costs-and-time-blue-green-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { SupportService } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport CostManifestList from '../../components/DetailPage/CostManifest';\r\nimport CostProfileList from '../../components/DetailPage/CostProfile';\r\nimport DurationProfileList from '../../components/DetailPage/DurationProfile';\r\nimport LocationPageSection from '../../components/DetailPage/LocationPageSection';\r\nimport SubjectsAndKeywordsPageSection from \"../../components/DetailPage/SubjectsAndKeywordsPageSection\";\r\nimport OccupationsAndIndustriesSection from \"../../components/DetailPage/OccupationsAndIndustriesSection\";\r\nimport FinancialAssistance from \"../../components/DetailPage/FinancialAssistance\";\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport ConditionManifestList from \"../../components/DetailPage/ConditionManifest\";\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from \"../../components/DetailPage/ConditionProfile\";\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from \"../../types/internal\";\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function SupportServicePage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as SupportService);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n\tuseEffect(() => {\r\n getPageData(`${apiUrl}/SupportService/${id}`, (data: SupportService) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n\tconst [openedModal, setOpenedModal] = useState();\r\n\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n\r\n\r\n\tfunction getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\t\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Support Service\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t{pageModel.AccommodationType && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{pageModel.SupportServiceType && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{pageModel.DeliveryType && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{pageModel.LifeCycleStatusType && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n\r\n \r\n\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{isFilled(pageModel.SupportServiceReferencedBy) &&\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t}\r\n\t\t\t\t\t{pageModel.IsSpecificServiceOf?.Values?.length > 0 && \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t 0 &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{/* renderCollectionMemberDataV2(data, itemContainer, graph)} StyleComponent={CollectionMemberStyleBlock} />*/}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t) || null\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{(isFilled(pageModel.CommonConditions) || isFilled(pageModel.SupportServiceConditon) || isFilled(pageModel.CommonCosts) || isFilled(pageModel.EstimatedCost) || isFilled(pageModel.FinancialAssistance)) &&\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{(isFilled(pageModel.CommonConditions) || isFilled(pageModel.SupportServiceConditon)) &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{(isFilled(pageModel.CommonCosts) || isFilled(pageModel.EstimatedCost) || isFilled(pageModel.FinancialAssistance)) &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t]}\r\n\t\t\t\t/>\r\n\t\t\t\r\n \r\n );\r\n}\r\n//","export default __webpack_public_path__ + \"static/media/icon-transfer-value-white-green-01.2098d5ee.svg\";","export default __webpack_public_path__ + \"static/media/icon-transfer-value-green-blue-01.2e01fd42.svg\";","export default __webpack_public_path__ + \"static/media/icon-transfer-intermediary-blue-green-01.3bdcd76c.svg\";","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport {\r\n MobileAboutDetail,\r\n Description,\r\n Label,\r\n Wrapper,\r\n Inline,\r\n InlineLabel,\r\n Section,\r\n} from '../../components/DetailPage/styles';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\n\r\nimport pageIcon from '../../assets/images/icons/icon-transfer-value-white-green-01.svg';\r\nimport transferValueIcon from '../../assets/images/icons/icon-transfer-value-green-blue-01.svg';\r\nimport transferIntermediaryIcon from '../../assets/images/icons/icon-transfer-intermediary-blue-green-01.svg';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport additionalInfoIcon from '../../assets/images/icons/icon-additional-information-blue-green-01.svg';\r\nimport processIcon from '../../assets/images/icons/icon-process-blue-green-01.svg';\r\nimport JSONLinkedDataModal from '../../components/DetailPage/JSONLinkedDataModal';\r\nimport Banner from '../../components/Banner';\r\nimport LinkObject, { PlainTextLink } from '../../components/DetailPage/LinkObject';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useMediaQuery, useGet } from '../../hooks';\r\nimport { ModalType } from '../../types/internal';\r\nimport { Link, TransferValue } from '../../types/external';\r\nimport { isFilled } from '../../validation';\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport ValueProfileList from '../../components/DetailPage/ValueProfile';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport ProcessProfileList from '../../components/DetailPage/ProcessProfile';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function TransferValuePage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n\t] = useGet();\r\n\r\n\tconst [ pageModel, setPageData ] = useState({} as TransferValue);\r\n\tconst startDate = pageModel.StartDate;\r\n\tconst endDate = pageModel.EndDate;\r\n\tconst [openedModal, setOpenedModal] = useState();\r\n\r\n\tfunction onOpenModalClick(modalType: ModalType) {\r\n\t\treturn () => setOpenedModal(modalType);\r\n\t}\r\n\r\n\tfunction onCloseModalClick() {\r\n\t\tsetOpenedModal(undefined);\r\n\t}\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/transfervalue/${id}`, (data: TransferValue) => {\r\n\t\t\tsetPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n\t//\r\n\r\n\tfunction getSubTitleLink() {\r\n\t\tif ( pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n\t\t\treturn pageModel.OwnedByLabel.URL ?\r\n\t\t\t\t{pageModel.OwnedByLabel.Label} :\r\n\t\t\t\t<>{pageModel.OwnedByLabel.Label};\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\tfunction getLegacyLink() {\r\n\t\tif (pageModel.Meta_Id) {\r\n\t\t\tconst url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n\t\t\tconst mystyle = {\r\n\t\t\t\t//color: \"rgba(0,0,0,.01)\",\r\n\t\t\t\tcolor: \"transparent\",\r\n\t\t\t\t//backgroundColor: \"rgba(0,0,0,.01)\",\r\n\t\t\t\tmarginLeft: \"10px\"\r\n\t\t\t};\r\n\t\t\treturn <>\r\n\t\t\t\tLegacy\r\n\t\t\t\r\n\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Transfer Value\");\r\n\r\n return (\r\n \r\n \r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n } \r\n />\r\n \r\n \r\n \r\n \r\n \r\n {pageModel.Description && (\r\n \r\n {pageModel.Description}\r\n \r\n )}\r\n \r\n\t\t\t\t\t\t\t\t\t{pageModel.SubjectWebpage &&\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{pageModel.LifeCycleStatusType && (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t{pageModel.InCatalog &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{(pageModel.StartDate || pageModel.EndDate) && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t\t\t{(pageModel.LatestVersion?.URL || pageModel.PreviousVersion?.URL || pageModel.NextVersion?.URL || pageModel.Supersedes?.URL || pageModel.SupersededBy?.URL) &&\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t{pageModel.TransferValue && \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{pageModel.TransferValueFrom &&\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t{pageModel.TransferValueFor &&\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t{pageModel.DerivedFrom &&\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\t\t\t\t\t\r\n\t\t\t\t\t{/*{pageModel.DerivedFrom?.Values?.length > 0 &&*/}\r\n\t\t\t\t\t{/*\t*/}\r\n\t\t\t\t\t{/*\t\t*/}\r\n\t\t\t\t\t{/*\t\t\t }*/}\r\n\t\t\t\t\t{/*\t\t\t/>*/}\r\n\t\t\t\t\t{/*\t\t*/}\r\n\t\t\t\t\t{/*\t*/}\r\n\t\t\t\t\t{/*}*/}\r\n\t\t\t\t\t{pageModel.HasIntermediaryFor &&\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t{/*\t }*/}\r\n\t\t\t\t\t\t\t{/*\t/>*/}\r\n\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n \r\n\t);\r\n\tfunction TextItem(props: { label: string, item: string }) {\r\n\t\treturn (props.item &&\r\n\t\t\t\r\n\t\t\t\t{props.label}\r\n\t\t\t\t
    {props.item}
    \r\n\t\t\t
    \r\n\t\t) || null\r\n\t}\r\n\tfunction LinkItem(props: { label: string, item: any }) {\r\n\t\tif (!props.item) {\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\tvar link = typeof (props.item) == \"string\" ? ({ Label: props.item, URL: props.item } as Link) : (props.item as Link);\r\n\t\treturn (link.URL &&\r\n\t\t\t\r\n\t\t\t\t{props.label}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t) || null\r\n\t}\r\n}\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport transferValueIcon from '../../assets/images/icons/icon-transfer-value-green-blue-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_17-Transfer-Intermediary_Blue-Green_High-Res.png';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\n/*import ConditionProfileList from '../../components/DetailPage/ConditionProfile';*/\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from './../../components/DetailPage/ConditionProfile';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport ValueProfileList from '../../components/DetailPage/ValueProfile';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { TransferIntermediary } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport { CompetencyFrameworkList } from '../../components/DetailPage/CompetencyFramework';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function TransferIntermediaryPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as TransferIntermediary);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n\t\tgetPageData(`${apiUrl}/transferintermediary/${id}`, (data: TransferIntermediary) => {\r\n\t\t\tsetPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n\t//\r\n\r\n\tfunction getSubTitleLink() {\r\n\t\tif ( pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n\t\t\treturn pageModel.OwnedByLabel.URL ?\r\n\t\t\t\t{pageModel.OwnedByLabel.Label} :\r\n\t\t\t\t<>{pageModel.OwnedByLabel.Label};\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\tfunction getLegacyLink() {\r\n\t\tif ( pageModel.Meta_Id ) {\r\n\t\t\tconst url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n\t\t\treturn <>\r\n\t\t\t\tLegacy\r\n\t\t\t\t\r\n \r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\t\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Transfer Intermediary\");\r\n\r\n return (\r\n \r\n \r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n } \r\n />\r\n \r\n \r\n \r\n \r\n \r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n \r\n \r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n \r\n \r\n {/*{pageModel.IntermediaryFor &&*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*}*/}\r\n \r\n\r\n {pageModel.CreditValue &&\r\n\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t \r\n \r\n\t\t\t\t\t\t\t\t \r\n }\r\n \r\n \r\n }\r\n />\r\n \r\n \r\n\t\t\t\t\t\r\n\t\t\t\t\t{/* */} \r\n \r\n\t\t\t\t\r\n {/* {pageModel.IntermediaryFor &&*/}\r\n\t\t\t\t\t{/*\t*/}\r\n {/* */}\r\n\t\t\t\t\t{/*\t*/}\r\n\t\t\t\t\t{/*}*/}\r\n\r\n\r\n\t\t\t\t\t\r\n {(pageModel.RequiresCompetencies?.Values?.length > 0 ) &&\r\n \r\n }\r\n hideCount={true}\r\n />\r\n \r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n Label: \"Details\",\r\n Content: (\r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n )\r\n }\r\n ].filter(m => m.Content != null)}\r\n />\r\n
    \r\n \r\n );\r\n}\r\n//","import React, { ReactNode, useEffect, useState, useRef } from 'react';\r\nimport { renderToString } from 'react-dom/server';\r\nimport styled from 'styled-components/macro';\r\nimport { apiUrl, appBaseName, appURL, registryURL } from '../../shared/globals';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { Collection as CollectionType, Outline, Link, AJAXSettingsOutline, Competency, ConditionProfile, ValueProfile, CostManifest, CostProfile, AJAXSettings, JurisdictionProfile, CostItem, Place, IdentifierValue } from '../../types/external';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport {\r\n\tWrapper,\r\n\tFullWidthWrapper,\r\n\tInnerWrapper,\r\n\tDescription,\r\n\tSection,\r\n\tLabel\r\n} from '../../components/DetailPage/styles';\r\nimport { VStack } from '../../components/Stack';\r\nimport PageSection from '../../components/PageSection';\r\nimport { getResourceByURI, englishOrNull, createKeywordSearchLink, getResourceByURLWithoutState, createKeywordSearchLinkListFromCredentialAlignmentObjectList } from '../../components/GetResourceByURI';\r\nimport competenciesbannerIcon from '../../assets/images/UpdatedIcons/CE-Icon_6-Collection_Blue-Green_High-Res.png';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport OccupationsAndIndustriesSection from '../../components/DetailPage/OccupationsAndIndustriesSection';\r\nimport RelatedOrganizationPageSection, { RelatedOrganizationPageSectionAJAXResourceList } from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport { convertDataToCompetency, renderCompetency } from '../CompetencyFrameworkPage/indexv2';\r\nimport { createMiniSearch, getUUID, getElementEventually } from '../../components/MiniSearch';\r\nimport { ModalButtonAndWindow, ModalButtonAndWindowWithRegistrySearch, OutlineResult } from '../../components/Modal';\r\nimport AJAXModal from '../../components/Modal/AJAXModal';\r\nimport { renderCompetencyFromRDF, CompetencyStyleBlock } from '../../components/DetailPage/Competency';\r\nimport AJAXResourceList, { appendAJAXCacheV3ResourceRaw, createElement, getEnglish, renderText, renderLink, renderImage, renderElement, getResourceViaResourceCacheV3, lookupSchema, getDetailPageHeaderModifiedDate } from '../../components/AJAXResourceList';\r\nimport ConditionProfileList from '../../components/DetailPage/ConditionProfile';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { LinkItem } from \"../../components/DetailPage/Shared\";\r\n\r\ninterface Props {\r\n\tid: string;\r\n\ttargetCTID?: string;\r\n}\r\n\r\nexport default function CollectionPage(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [dataIsLoading, setDataIsLoading] = useState(true);\r\n\tconst [hasError, setHasError] = useState(false);\r\n\tconst [collection, setCollection] = useState({} as CollectionType);\r\n\tconst [rawCollectionData, setRawCollectionData] = useState({} as any);\r\n\tconst [relatedItemsMap, setRelatedItemsMap] = useState({} as any);\r\n\tconst [graph, setGraph] = useState([] as Array);\r\n\tconst [localAJAXCache, setLocalAJAXCache] = useState([] as Array); //Used to trick react into re-rendering the data\r\n\tconst [membershipConditionList, setMembershipConditionList] = useState([] as Array);\r\n\r\n\tvar rawCollectionDataNow = {} as any;\r\n\tuseEffect(() => {\r\n\t\t//var usingCTID = isNaN(id as any);\r\n\t\t//var url = usingCTID ? `${registryURL}/graph/${id}` : `${apiUrl}/detail/collection/${id}`;\r\n\t\t//getResourceByURI(url, setLocalAJAXCache, null, (loaded: any) => {\r\n\t\tgetResourceByURI(`${apiUrl}/dsp_collection/${id}?includeRelatedResources=false&includeGraphData=true&perBranchLimit=-1`, setLocalAJAXCache, null, (loaded: any) => {\r\n\t\t\t//Get data\r\n\t\t\trawCollectionDataNow = loaded.Result.Resource;\r\n\t\t\trenderJSONLDMetaTags(rawCollectionDataNow, \"Collection\");\r\n\t\t\tsetRawCollectionData(loaded.Result.Resource); //Takes extra rendering cycles for some stupid reason so double assign it\r\n\t\t\tvar metadata = loaded.Result.Metadata || {};\r\n\t\t\tvar relatedItemsMapData = loaded.Result.RelatedItemsMap || {};\r\n\t\t\tvar graphItemsData = loaded.Result.RelatedItems || [] as Array;\r\n\t\t\tsetDataIsLoading(false);\r\n\t\t\tsetCollection(convertDataToCollection(rawCollectionDataNow || { \"ceterms:name\": \"Missing Collection\", \"ceterms:description\": \"Unable to find data for identifier: \" + id } as any, metadata));\r\n\r\n\t\t\t//Convert data\r\n\t\t\tconvertDataToConditionProfileList(rawCollectionDataNow?.[\"ceterms:membershipCondition\"], membershipConditionList, setMembershipConditionList);\r\n\t\t\tsetGraph(graphItemsData);\r\n\t\t\tsetRelatedItemsMap(relatedItemsMapData);\r\n\t\t\tconsole.log(\"Detail Data\", { Collection: collection, Graph: graph });\r\n\r\n\t\t\t//Temporary(?) - Get link(s) to a search for members of the collection\r\n\t\t\tgetResourceByURI(`${apiUrl}/collection/${id}`, setLocalAJAXCache, null, (loaded: any) => {\r\n\t\t\t\tcollection.Connections = loaded?.Result?.Connections;\r\n\t\t\t\tsetCollection({ ...collection });\r\n\t\t\t});\r\n\r\n\t\t\t//Get owner for header\r\n\t\t\tif (!collection.OwnedByLabel && rawCollectionDataNow[\"ceterms:ownedBy\"]) {\r\n\t\t\t\tgetResourceViaResourceCacheV3(rawCollectionDataNow[\"ceterms:ownedBy\"]?.[0], (data: any) => {\r\n\t\t\t\t\tcollection.OwnedByLabel = {\r\n\t\t\t\t\t\tLabel: englishOrNull(data?.[\"ceterms:name\"]),\r\n\t\t\t\t\t\tURL: appURL + \"/resources/\" + data[\"ceterms:ctid\"]\r\n\t\t\t\t\t} as Link;\r\n\t\t\t\t\t//setCollection({ ...collection }); //Will randomly reset the collection data depending on which async process happens fastest, so just recalculate the whole thing\r\n\t\t\t\t\tvar updatedCollection = convertDataToCollection(rawCollectionDataNow || { \"ceterms:name\": \"Missing Collection\", \"ceterms:description\": \"Unable to find data for identifier: \" + id } as any, metadata);\r\n\t\t\t\t\tsetCollection({ ...updatedCollection, OwnedByLabel: collection.OwnedByLabel });\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\t\t\t(error: any) => {\r\n\t\t\t\tsetHasError(true);\r\n\t\t\t\tconsole.log(\"Error loading data: \", error);\r\n\t\t\t});\r\n\r\n\t\tnew URLSearchParams(window.location.search).forEach(function (value: string, key: string) {\r\n\t\t\tif (key.toLowerCase() == \"memberctid\") {\r\n\t\t\t\tjumpToMemberCTID(value.toLowerCase(), 0);\r\n\t\t\t}\r\n\t\t});\r\n\t}, [id, localAJAXCache]);\r\n\r\n\tfunction convertDataToCollection(resource: any, metadata: any): CollectionType {\r\n\t\treturn {\r\n\t\t\tBroadType: \"Collection\",\r\n\t\t\tCTDLType: \"ceterms:Collection\",\r\n\t\t\tCTDLTypeLabel: \"Collection\",\r\n\t\t\tMeta_Id: id,\r\n\t\t\tMeta_Language: resource[\"ceasn:inLanguage\"]?.[0] || \"en\",\r\n\t\t\tMeta_LastUpdated: metadata?.DateModified || \"Unknown\",\r\n\t\t\tMeta_LastUpdatedHeader: getDetailPageHeaderModifiedDate(metadata?.DateModified),\r\n\t\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\t\tName: englishOrNull(resource[\"ceterms:name\"]),\r\n\t\t\tDescription: englishOrNull(resource[\"ceterms:description\"]),\r\n\t\t\tSubjectWebpage: resource[\"ceterms:subjectWebpage\"],\r\n\t\t\tInCatalog: resource[\"ceterms:inCatalog\"],\r\n\t\t\tLatestVersion: resource[\"ceterms:latestVersion\"],\r\n\t\t\tPreviousVersion: resource[\"ceterms:previousVersion\"],\r\n\t\t\tNextVersion: resource[\"ceterms:nextVersion\"],\r\n\t\t\tVersionIdentifier: createIdentifier(resource[\"ceterms:versionIdentifier\"]),\r\n\t\t\tSubject: resource[\"ceterms:subject\"]?.map((m: any) => { return createKeywordSearchLink(\"collection\", getEnglish(m[\"ceterms:targetNodeName\"])) }),\r\n\t\t\t//Keyword: englishOrNull(resource[\"ceterms:keyword\"])?.map((m: string) => { return createKeywordSearchLink(\"collection\", m) }), //Need to ensure keywords are being published as a multi-value field before uncommenting this\r\n\t\t\t//CollectionType: resource[\"ceterms:collectionType\"]?.map((m: any) => { return createKeywordSearchLink(\"collection\", englishOrNull(m[\"ceterms:targetNodeName\"])) }),\r\n\t\t\tCollectionType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", resource[\"ceterms:collectionType\"]),\r\n\t\t\tHasMember: resource[\"ceterms:hasMember\"] || [],\r\n\t\t\t//OwnedBy: resource[\"ceterms:ownedBy\"] && { Values: resource[\"ceterms:ownedBy\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) }) } as AJAXSettingsOutline,\r\n\t\t\tRegistryData: { CTID: resource[\"ceterms:ctid\"], Resource: { URL: resource[\"@id\"], Label: \"View Resource\" }, Envelope: { URL: resource[\"@id\"]?.replace(\"/resources/\", \"/envelopes/\"), Label: \"View Envelope\" } },\r\n\t\t\t//OwnedByLabel: resource[\"ceterms:ownedBy\"]?.map((m: string) => { return getOrganizationOutlineByURI(m) })?.map((m: any) => { return { Label: m.Label, URL: m.URL } as Link; })[0],\r\n\t\t\t//MembershipCondition: resource[\"ceterms:membershipCondition\"]?.map((m: any) => { return convertDataToConditionProfile(m); }),\r\n\t\t\tMeta_JSON: resource\r\n\t\t} as CollectionType;\r\n\t}\r\n\r\n\tfunction jumpToMemberCTID(targetCTID: string, attempts: number) {\r\n\t\tconsole.log(\"jumping to CTID\", targetCTID)\r\n\t\tsetTimeout(function () {\r\n\t\t\tvar element = document.querySelector(\"[data-ctid='\" + targetCTID + \"']\");\r\n\t\t\tif (element) {\r\n\t\t\t\telement.scrollIntoView();\r\n\t\t\t}\r\n\t\t\telse if (attempts <= 10) {\r\n\t\t\t\tjumpToMemberCTID(targetCTID, attempts + 1);\r\n\t\t\t}\r\n\t\t}, 500);\r\n\t}\r\n\r\n\tfunction convertDataToConditionProfileList(sourceList: any, stateList: Array, setStateMethod: any) {\r\n\t\tif (sourceList && sourceList.length > 0) {\r\n\t\t\tsetStateMethod(sourceList.map((m: any) => { return {} as ConditionProfile }));\r\n\t\t\tsourceList.forEach((sourceItem: any, index: number) => {\r\n\t\t\t\tconvertDataToConditionProfile(sourceItem, index, stateList, setStateMethod);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tfunction convertDataToConditionProfile(source: any, index: number, stateList: Array, setStateMethod: any) {\r\n\t\t//Convert basic data\r\n\t\tvar converted = convertBasicDataToBasicConditionProfile(source);\r\n\r\n\t\t//Load additional reference data\r\n\t\t//It looks like CommonCosts is never used in the condition profile(?)\r\n\t\tloadResourceSetAsAJAXSettingsOutline(source[\"ceterms:assertedBy\"], converted, \"AssertedBy\", refreshProfile);\r\n\t\tloadResourceSetAsAJAXSettingsOutline(source[\"ceterms:targetCredential\"], converted, \"TargetCredential\", refreshProfile);\r\n\t\tloadResourceSetAsAJAXSettingsOutline(source[\"ceterms:targetAssessment\"], converted, \"TargetAssessment\", refreshProfile);\r\n\t\tloadResourceSetAsAJAXSettingsOutline(source[\"ceterms:targetLearningOpportunity\"], converted, \"TargetLearningOpportunity\", refreshProfile);\r\n\t\tloadResourceSetAsAJAXSettingsOutline(source[\"ceterms:targetCompetency\"], converted, \"TargetCompetency\", refreshProfile);\r\n\r\n\t\t//Refresh the profile at least once regardless\r\n\t\trefreshProfile();\r\n\r\n\t\tfunction refreshProfile() {\r\n\t\t\tstateList[index] = converted;\r\n\t\t\tsetStateMethod([...stateList]);\r\n\t\t}\r\n\t}\r\n\r\n\tfunction loadResourceSetAsAJAXSettingsOutline(sourceURIs: Array, converted: ConditionProfile, propertyName: string, refreshProfile: any) {\r\n\t\tif (!sourceURIs || sourceURIs.length == 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t(converted as any)[propertyName] = {\r\n\t\t\tTotal: sourceURIs.length,\r\n\t\t\tValues: sourceURIs.map(uri => {\r\n\t\t\t\treturn { Label: \"Loading...\" } as Outline;\r\n\t\t\t})\r\n\t\t} as AJAXSettingsOutline\r\n\r\n\t\tsourceURIs.forEach((uri, index) => {\r\n\t\t\tgetResourceViaResourceCacheV3(uri, data => {\r\n\t\t\t\t(converted as any)[propertyName].Values[index] = {\r\n\t\t\t\t\tLabel: englishOrNull(data[\"ceterms:name\"]),\r\n\t\t\t\t\tDescription: englishOrNull(data[\"ceterms:description\"]),\r\n\t\t\t\t\tURL: appURL + \"/resources/\" + data[\"ceterms:ctid\"],\r\n\t\t\t\t\tImage: data[\"ceterms:image\"]\r\n\t\t\t\t} as Outline;\r\n\t\t\t\trefreshProfile();\r\n\t\t\t}, error => {\r\n\t\t\t\t(converted as any)[propertyName].Values[index].Label = \"Error loading data for URI: \" + uri;\r\n\t\t\t\trefreshProfile();\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tfunction convertBasicDataToBasicConditionProfile(source: any) {\r\n\t\treturn {\r\n\t\t\t//Alternative Condition isn't fully supported here, because React will only allow the useState function to be called from inside a Component function and there's no /good/ way to handle the recursive nature of Alternative Condition here\r\n\t\t\tAlternativeCondition: source[\"ceterms:alternativeCondition\"]?.map((item: any) => { return convertBasicDataToBasicConditionProfile(item); }),\r\n\t\t\tName: englishOrNull(source[\"ceterms:name\"]) || \"\",\r\n\t\t\tDescription: englishOrNull(source[\"ceterms:description\"]) || \"\",\r\n\t\t\tCondition: englishOrNull(source[\"ceterms:condition\"]),\r\n\t\t\tSubmissionOf: englishOrNull(source[\"ceterms:submissionOf\"]),\r\n\t\t\tSubmissionOfDescription: englishOrNull(source[\"ceterms:submissionOfDescription\"]),\r\n\t\t\tCreditUnitTypeDescription: englishOrNull(source[\"ceterms:creditUnitTypeDescription\"]),\r\n\t\t\tSubjectWebpage: source[\"ceterms:subjectWebpage\"],\r\n\t\t\tDateEffective: source[\"ceterms:dateEffective\"],\r\n\t\t\tExperience: englishOrNull(source[\"ceterms:expereince\"]),\r\n\t\t\tWeight: source[\"ceterms:weight\"],\r\n\t\t\tYearsOfExperience: source[\"ceterms:yearsOfExperience\"],\r\n\t\t\tMinimumAge: source[\"ceterms:minimumAge\"],\r\n\t\t\tAudienceLevelType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", source[\"ceterms:audienceLevelType\"]),\r\n\t\t\tAudienceType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", source[\"ceterms:audienceType\"]),\r\n\t\t\tCreditValue: createValueProfileListFromSourceList(source[\"ceterms:creditValue\"]),\r\n\t\t\tEstimatedCost: createCostProfileListFromSourceList(source[\"ceterms:estimatedCost\"]),\r\n\t\t\tJurisdiction: createJurisdictionProfileListFromSourceList(source[\"ceterms:jurisdiction\"]),\r\n\t\t\tResidentOf: createJurisdictionProfileListFromSourceList(source[\"ceterms:residentOf\"]),\r\n\t\t} as ConditionProfile;\r\n\t}\r\n\r\n\tfunction createValueProfileListFromSourceList(creditValueList: Array) : Array | null {\r\n\t\treturn creditValueList?.map(source => {\r\n\t\t\treturn {\r\n\t\t\t\tCreditLevelType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", source[\"ceterms:creditLevelType\"]),\r\n\t\t\t\tCreditUnitType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", source[\"ceterms:creditUnitType\"]),\r\n\t\t\t\tSubject: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", source[\"ceterms:subject\"]),\r\n\t\t\t\tDescription: englishOrNull(source[\"schema:description\"]),\r\n\t\t\t\tMaxValue: source[\"schema:maxValue\"] || 0,\r\n\t\t\t\tMinValue: source[\"schema:minValue\"] || 0,\r\n\t\t\t\tPercentage: source[\"qdata:percentage\"] || 0,\r\n\t\t\t\tValue: source[\"schema:value\"] || 0\r\n\t\t\t} as ValueProfile;\r\n\t\t});\r\n\t}\r\n\r\n\tfunction createCostProfileListFromSourceList(costProfileList: Array): Array | null {\r\n\t\treturn costProfileList?.map(source => {\r\n\t\t\treturn {\r\n\t\t\t\tDescription: englishOrNull(source[\"ceterms:description\"]) || \"\",\r\n\t\t\t\tName: englishOrNull(source[\"ceterms:name\"]) || \"\",\r\n\t\t\t\tCondition: englishOrNull(source[\"ceterms:condition\"]),\r\n\t\t\t\tCostDetails: source[\"ceterms:costDetails\"],\r\n\t\t\t\tCurrency: source[\"ceterms:currency\"],\r\n\t\t\t\tCurrencySymbol: source[\"ceterms:currency\"]?.toLowerCase() == \"usd\" ? \"$\" : source[\"ceterms:currency\"],\r\n\t\t\t\tStartDate: source[\"ceterms:startDate\"],\r\n\t\t\t\tEndDate: source[\"ceterms:endDate\"],\r\n\t\t\t\tCostItems: createCostItemListFromSourceItem(source),\r\n\t\t\t\tJurisdiction: createJurisdictionProfileListFromSourceList(source[\"ceterms:jurisdiction\"])\r\n\t\t\t} as CostProfile;\r\n\t\t});\r\n\t}\r\n\r\n\tfunction createCostItemListFromSourceItem(source: any): Array | null {\r\n\t\treturn source?.[\"ceterms:directCostType\"]?.map((costType: any) => {\r\n\t\t\treturn {\r\n\t\t\t\tAudienceType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", source[\"ceterms:audienceType\"]),\r\n\t\t\t\tResidencyType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", source[\"ceterms:residencyType\"]),\r\n\t\t\t\tDirectCostType: createKeywordSearchLinkListFromCredentialAlignmentObjectList(\"collection\", [costType])[0],\r\n\t\t\t\tPaymentPattern: englishOrNull(source[\"ceterms:paymentPattern\"]),\r\n\t\t\t\tPrice: source[\"ceterms:price\"] || 0\r\n\t\t\t} as CostItem\r\n\t\t});\r\n\t}\r\n\r\n\tfunction createJurisdictionProfileListFromSourceList(jurisdictionProfileList: Array): Array | null {\r\n\t\treturn jurisdictionProfileList?.map(source => {\r\n\t\t\treturn {\r\n\t\t\t\t//AssertedBy is not worth bothering with\r\n\t\t\t\tDescription: englishOrNull(source[\"ceterms:description\"]) || \"\",\r\n\t\t\t\tGlobalJurisdiction: source[\"ceterms:isGlobalJurisdiction\"] == true ? true : false,\r\n\t\t\t\tMainJurisdiction: !source[\"ceterms:mainJurisdiction\"] ? {} : createPlaceListFromSourceList(source[\"ceterms:mainJurisdiction\"])[0],\r\n\t\t\t\tJurisdictionException: createPlaceListFromSourceList(source[\"ceterms:jurisdictionException\"])\r\n\t\t\t} as JurisdictionProfile;\r\n\t\t});\r\n\t}\r\n\r\n\tfunction createPlaceListFromSourceList(placeList: Array): Array {\r\n\t\treturn (placeList || []).map(source => {\r\n\t\t\treturn {\r\n\t\t\t\tAddressCountry: englishOrNull(source[\"ceterms:addressCountry\"]),\r\n\t\t\t\tAddressRegion: englishOrNull(source[\"ceterms:addressRegion\"]),\r\n\t\t\t\tAddressLocality: englishOrNull(source[\"ceterms:addressLocality\"]),\r\n\t\t\t\tStreetAddress: englishOrNull(source[\"ceterms:streetAddress\"]),\r\n\t\t\t\tPostalCode: source[\"ceterms:postalCode\"],\r\n\t\t\t\tPostOfficeBoxNumber: source[\"ceterms:postOfficeBoxNumber\"]\r\n\t\t\t\t//Identifier is not worth bothering with\r\n\t\t\t\t//TargetContactPoint is not worth bothering with\r\n\t\t\t} as Place;\r\n\t\t});\r\n\t}\r\n\r\n\tfunction createIdentifier(identifier: Array) {\r\n\t\treturn (identifier || []).map(source => {\r\n\t\t\treturn {\r\n\t\t\t\tIdentifierType: englishOrNull(source[\"ceterms:identifierType\"]),\r\n\t\t\t\tIdentifierTypeName: englishOrNull(source[\"ceterms:identifierTypeName\"]),\r\n\t\t\t\tIdentifierValueCode: englishOrNull(source[\"ceterms:identifierValueCode\"]),\r\n\t\t\t} as IdentifierValue;\r\n\t\t});\r\n\t}\r\n\t//Get all of the real URIs to fetch\r\n\tvar collectionMembers = graph.filter(item => item[\"@type\"] == \"ceterms:CollectionMember\");\r\n\tvar collectionMemberResourceURLs = rawCollectionData?.[\"ceterms:hasMember\"]?.filter((uri: string) => uri.includes(\"http\")).concat(collectionMembers.map(member => member[\"ceterms:proxyFor\"])) || [];\r\n\r\n\t//Inject resources and collection members for later use by the AJAXResourceList\r\n\tgraph.forEach(item => {\r\n\t\tappendAJAXCacheV3ResourceRaw(item[\"@id\"], item);\r\n\t});\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Collection\");\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{collection.Description || \"No description available\"}\r\n\t\t\t\t\t\t{collection.SubjectWebpage && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{collection.CollectionType?.length > 0 && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{collection.Connections?.length > 0 && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{collection.InCatalog && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t{(collection.LatestVersion || collection.PreviousVersion || collection.NextVersion) &&\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tThis {typeLabel} contains {rawCollectionData?.[\"ceterms:hasMember\"]?.length} members.\r\n\t\t\t\t\t\t\t\t\t renderCollectionMemberDataV2(data, itemContainer, graph)} StyleComponent={CollectionMemberStyleBlock} />\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{membershipConditionList?.length > 0 && (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t].filter(m => m.Content != null)}\r\n\t\t\t\t/>\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\n\r\nfunction renderCollectionMemberDataV2(data: any, itemContainer: any, graph: Array) {\r\n\t//Finish setting up the box\r\n\titemContainer.classList.add(\"collectionMemberListItem\");\r\n\titemContainer.innerHTML = \"\";\r\n\r\n\t//If there is an associated collection member, render it\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Collection\");\r\n\tvar member = graph.find(item => item[\"ceterms:proxyFor\"] == data[\"@id\"]);\r\n\tif (member) {\r\n\r\n\t\tvar memberBox = itemContainer.appendChild(createElement(\"div\", \"collectionMemberBox\"));\r\n\t\t//renderText(memberBox, member[\"ceterms:name\"], \"div\", \"collectionMemberName\", \"Collection Member Name\");\r\n\t\t//renderText(memberBox, member[\"ceterms:description\"], \"div\", \"collectionMemberDescription\", \"Collection Member Description\");\r\n\t\trenderText(memberBox, member[\"ceterms:startDate\"] ? \"Membership Begins: \" + member[\"ceterms:startDate\"] : \"\", \"div\", \"collectionMemberDate\", \"Start date of the membership of this Resource in this \" + typeLabel + \".\");\r\n\t\trenderText(memberBox, member[\"ceterms:endDate\"] ? \"Membership Ends: \" + member[\"ceterms:endDate\"] : \"\", \"div\", \"collectionMemberDate\", \"End date of the membership of this Resource in this \" + typeLabel + \".\");\r\n\r\n\t}\r\n\r\n\t//Render the member resource data\r\n\tvar resourceBox = itemContainer.appendChild(createElement(\"div\", \"resourceBox\"));\r\n\r\n\t//If it's a competency, use the competency renderer\r\n\tif (data[\"@type\"] == \"ceasn:Competency\") {\r\n\t\trenderCompetencyFromRDF(data, resourceBox, [], false);\r\n\t}\r\n\t//Otherwise, use the vanilla renderer\r\n\telse {\r\n\t\r\n\t\tvar resourceBoxImage = resourceBox.appendChild(createElement(\"div\", \"resourceBoxImage\"));\r\n\t\tvar resourceBoxContent = resourceBox.appendChild(createElement(\"div\", \"resourceBoxContent\"));\r\n\t\tvar providerSource = data[\"ceterms:ownedBy\"] || data[\"ceterms:offeredBy\"] || data[\"ceasn:creator\"] || data[\"ceasn:publisher\"] || \"\";\r\n\t\tvar providerURI = Array.isArray(providerSource) ? providerSource[0] : providerSource;\r\n\t\tvar classification = data[\"ceterms:classification\"] || \"\";\r\n\t\t//to add this css onely when there is an image\r\n\t\tif (data[\"ceterms:image\"] || getImageUrl(data[\"@type\"])) {\r\n\t\t\tresourceBox.style.display = 'flex';\r\n\t\t\tresourceBox.style.flexDirection = 'row';\r\n\t\t}\r\n\t\trenderImage(resourceBoxImage, (data[\"ceterms:image\"] || getImageUrl(data[\"@type\"] )), \"resourceImage\");\r\n\t\trenderElement(resourceBoxContent, \" \", \"div\", \"resourceHeader\", (element, content) => {\r\n\t\t\telement.innerHTML = \"\";\r\n\t\t\trenderLink(element, appURL + \"/resources/\" + data[\"ceterms:ctid\"], getEnglish(data[\"ceterms:name\"] || data[\"ceasn:name\"] || data[\"skos:prefLabel\"] || \"Unnamed Resource\"), \"_blank\", \"resourceLink\");\r\n\t\t\t//renderText(element, \"(\" + (data[\"@type\"] || \"Unknown Type\") + \")\", \"div\", \"resourceType\");\r\n\t\t\tlookupSchema((schemaGraph) => {\r\n\t\t\t\tvar label = englishOrNull(schemaGraph.find((graphItem: any) => {\r\n\t\t\t\t\treturn graphItem[\"@id\"] == data[\"@type\"]\r\n\t\t\t\t})?.[\"rdfs:label\"] || data[\"@type\"] || \"Unknown Type\").replace(\" Profile\", \"\");\r\n\t\t\t\trenderText(element, \"(\" + label + \")\", \"div\", \"resourceType\");\r\n\t\t\t});\r\n\t\t});\r\n\t\tproviderURI && renderElement(resourceBoxContent, providerURI, \"div\", \"resourceProvider\", (box, uri) => {\r\n\t\t\tgetResourceViaResourceCacheV3(uri, (data) => {\r\n\t\t\t\tbox.innerHTML = \"Provider: \";\r\n\t\t\t\trenderLink(box, appURL + \"/organization/\" + data[\"ceterms:ctid\"], getEnglish(data[\"ceterms:name\"]), \"_blank\");\r\n\t\t\t});\r\n\t\t});\r\n\t\trenderText(resourceBoxContent, getEnglish(data[\"ceterms:description\"] || data[\"ceasn:description\"] || data[\"skos:prefLabel\"] || \"No Description\"), \"div\", \"resourceDescription\");\r\n\t\tif (classification && classification.length > 0) {\r\n\t\t\tconst totalConcepts = classification.length;\r\n\t\t\tconst totalConceptsButton = document.createElement(\"button\");\r\n\t\t\ttotalConceptsButton.innerHTML = totalConcepts + \" Concepts\";\r\n\t\t\ttotalConceptsButton.classList.add(\"toggleButton\");\r\n\t\t\tconst downArrowIcon = document.createElement(\"span\");\r\n\t\t\tdownArrowIcon.innerHTML = \"▼\";\r\n\t\t\tconst upArrowIcon = document.createElement(\"span\");\r\n\t\t\tupArrowIcon.innerHTML = \"▲\";\r\n\t\t\tupArrowIcon.style.display = \"none\";\r\n\t\t\ttotalConceptsButton.appendChild(downArrowIcon);\r\n\t\t\ttotalConceptsButton.appendChild(upArrowIcon);\r\n\t\t\tresourceBox.appendChild(totalConceptsButton);\r\n\r\n\t\t\tconst classificationContainer = document.createElement(\"div\");\r\n\t\t\tclassificationContainer.classList.add(\"classificationContainer\");\r\n\r\n\t\t\tclassification.forEach((classificationItem:any, index: any) => {\r\n\t\t\t\trenderElement(classificationContainer, classificationItem, \"div\", \"classification\", (box, uri) => {\r\n\t\t\t\t\tgetResourceViaResourceCacheV3(uri, (data) => {\r\n\t\t\t\t\t\trenderLink(box, appURL + \"/conceptscheme/\" + data[\"skos:topConceptOf\"].substring(data[\"skos:topConceptOf\"].lastIndexOf(\"/\") + 1) + \"?targetCTID=\" + data[\"ceterms:ctid\"], getEnglish(data[\"skos:prefLabel\"]), \"_blank\");\r\n\t\t\t\t\t\trenderText(classificationContainer, getEnglish(data[\"skos:definition\"] || \"\"), \"div\", \"conceptDescription\");\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\tresourceBox.appendChild(classificationContainer);\r\n\r\n\t\t\tclassificationContainer.style.display = \"block\";\r\n\r\n\t\t\ttotalConceptsButton.addEventListener(\"click\", function () {\r\n\t\t\t\tif (classificationContainer.style.display === \"none\") {\r\n\t\t\t\t\tclassificationContainer.style.display = \"block\";\r\n\t\t\t\t\tdownArrowIcon.style.display = \"none\";\r\n\t\t\t\t\tupArrowIcon.style.display = \"inline\";\r\n\t\t\t\t} else {\r\n\t\t\t\t\tclassificationContainer.style.display = \"none\";\r\n\t\t\t\t\tdownArrowIcon.style.display = \"inline\";\r\n\t\t\t\t\tupArrowIcon.style.display = \"none\";\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t}\r\n\r\n\r\n\r\n\t}\r\n}\r\n\r\nfunction CollectionMemberStyleBlock() {\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\n//get iconurl with type\r\nfunction getImageUrl(credentialType: any) {\r\n\tif (credentialType.includes(\"Badge\")) {\r\n\t\treturn \"https://apps.credentialengine.org/services/images/icons/flat_badge_cropped.png\";\r\n\t}else if (credentialType.includes(\"Certification\") || credentialType.includes(\"Certificate\") ) {\r\n\t\treturn \"https://apps.credentialengine.org/services/images/icons/flat_certificate_cropped.png\";\r\n\t} else if (credentialType.includes(\"Degree\")) {\r\n\t\treturn \"https://apps.credentialengine.org/services/images/icons/flat_degree_cropped.png\";\r\n\t} else if (credentialType.includes(\"License\")) {\r\n\t\treturn \"https://apps.credentialengine.org/services/images/icons/flat_license_cropped.png\";\r\n\t} else if (credentialType.includes(\"Diploma\")) {\r\n\t\treturn \"https://apps.credentialengine.org/services/images/icons/flat_diploma_cropped.png\";\r\n\t} else if (credentialType.includes(\"Credential\")) {\r\n\t\treturn \"https://apps.credentialengine.org/services/images/icons/flat_microcredential_cropped.png\";\r\n\t}\r\n}\r\n\r\nconst VanillaRendererStyleBlock = function () {\r\n\treturn ();\r\n}\r\n\r\n\r\n\r\nfunction RelatedDataPageSection(props: { item: any, relatedItemsMap: any }) {\r\n\tif (!props.item || !props.relatedItemsMap || props.relatedItemsMap.length == 0 || Object.keys(props.relatedItemsMap).length == 0) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar relatedItemSets = [\r\n\t\t{ labelTemplate: \"{number} Related Credentials\", pathMatch: \"< ceterms:Credential$\", relatedItemURIs: [] as Array },\r\n\t\t{ labelTemplate: \"{number} Related Assessments\", pathMatch: \"< ceterms:AssessmentProfile$\", relatedItemURIs: [] as Array },\r\n\t\t{ labelTemplate: \"{number} Related Learning Opportunities\", pathMatch: \"< ceterms:LearningOpportunityProfile$\", relatedItemURIs: [] as Array },\r\n\t\t{ labelTemplate: \"{number} Related Courses\", pathMatch: \"< ceterms:Course$\", relatedItemURIs: [] as Array },\r\n\t\t{ labelTemplate: \"{number} Related WorkRoles\", pathMatch: \"< ceterms:WorkRole$\", relatedItemURIs: [] as Array },\r\n\t\t{ labelTemplate: \"{number} Related Jobs\", pathMatch: \"< ceterms:Job$\", relatedItemURIs: [] as Array },\r\n\t\t{ labelTemplate: \"{number} Related Occupations\", pathMatch: \"< ceterms:Occupation$\", relatedItemURIs: [] as Array },\r\n\t\t{ labelTemplate: \"{number} Related Tasks\", pathMatch: \"< ceterms:Task$\", relatedItemURIs: [] as Array }\r\n\r\n\t];\r\n\r\n\t//For each related item set...\r\n\trelatedItemSets.forEach(set => {\r\n\t\t//Find the related item maps that match its path and extract their URIs. For each such URI...\r\n\t\tprops.relatedItemsMap.filter((map: any) => { return map.Path.match(set.pathMatch)?.length > 0 }).flatMap((map: any) => { return map.URIs }).forEach((uri: string) => {\r\n\t\t\t//Add it to the related item set's URIs list if it isn't already present\r\n\t\t\tif (!set.relatedItemURIs.includes(uri)) {\r\n\t\t\t\tset.relatedItemURIs.push(uri);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\t//Return null if there are no related item URIs that match\r\n\tif (relatedItemSets.filter((set: any) => { return set.relatedItemURIs.length > 0 }).length == 0) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\t{/**/ }\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{relatedItemSets.map((set: any) => (\r\n\t\t\t\t\t renderCollectionMemberDataV2(data, itemContainer, [])} StyleComponent={CollectionMemberStyleBlock} />}\r\n\t\t\t\t\t\thideCount={true}\r\n\t\t\t\t\t/>\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\n\r\n\r\nfunction AJAXModalForRelatedItems(props: { relatedItemsMap: any, labelTemplate: string, pathMatch: string }) {\r\n\tif (!props.relatedItemsMap) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar maps = props.relatedItemsMap.filter((item: any) => item.Path.match(props.pathMatch));\r\n\tif (maps.length == 0) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar urls = maps.flatMap((map: any) => map.URIs);\r\n\treturn \r\n}\r\n\r\nfunction RenderGenericItem(props: { data: any, index: number }) {\r\n\tconst [provider, setProvider] = useState({} as any);\r\n\r\n\tuseEffect(() => {\r\n\t\tvar providerURI = (props.data[\"ceterms:ownedBy\"] || props.data[\"ceterms:offeredBy\"] || props.data[\"ceasn:creator\"] || props.data[\"ceasn:publisher\"] || [])[0];\r\n\t\tif (providerURI) {\r\n\t\t\tgetResourceByURLWithoutState(providerURI, null, (result: any) => {\r\n\t\t\t\tsetProvider(result);\r\n\t\t\t}, (error: any) => {\r\n\t\t\t\tconsole.log(\"Error\", error);\r\n\t\t\t\tsetProvider({ \"ceterms:name\": { \"en\": \"Error loading provider data.\" }, \"ceterms:ctid\": \"\" });\r\n\t\t\t});\r\n\t\t}\r\n\t}, []);\r\n\r\n\treturn \r\n\t\t{englishOrNull(props.data[\"ceterms:name\"] || props.data[\"ceasn:name\"])}\r\n\t\t{provider ? Provider: {englishOrNull(provider[\"ceterms:name\"])} :
    }\r\n\t\t{englishOrNull(props.data[\"ceterms:description\"] || props.data[\"ceasn:description\"])}\r\n\t
    \r\n}\r\n\r\nfunction RenderError(props: { error: any, index: number }) {\r\n\treturn {props.error}\r\n}\r\n\r\nconst CollectionMembersListWrapper = styled.div`\r\n\t\r\n`;\r\n\r\nconst CollectionMemberCount = styled.div`\r\n\tpadding: 10px 5px; font-style: italic;\r\n`;\r\n\r\nconst CollectionItem = styled.div`\r\n\tborder-top: 1px solid #CCC;\r\n`;\r\n\r\nconst MemberDataWrapper = styled.div`\r\n\tpadding: 10px;\r\n`;\r\n\r\nconst CollectionMemberHeader = styled.div`\r\n\tdisplay: flex; padding: 5px 10px; font-style: italic; font-size: 12px;\r\n\r\n\t& span {\r\n\t\tmargin-right: 20px;\r\n\t}\r\n`;\r\n\r\nconst MemberHeader = styled.div`\r\n\tdisplay: flex;\r\n`;\r\n\r\nconst MemberName = styled.div`\r\n\tfont-weight: bold;\r\n\tmargin-right: 20px;\r\n`;\r\n\r\nconst MemberType = styled.div`\r\n\tfont-style: italic;\r\n`;\r\n\r\nconst MemberDescription = styled.div`\r\n\tpadding: 0 10px; font-size: 14px;\r\n`;\r\n\r\nconst RelatedListItem = styled.div`\r\n\r\n`\r\n\r\nconst GenericItem = styled(RelatedListItem)`\r\n\r\n`;\r\n\r\nconst GenericTitle = styled.a`\r\n\tdisplay: block;\r\n\tfont-weight: bold;\r\n`;\r\n\r\nconst GenericProvider = styled.div`\r\n\tdisplay: block;\r\n\tpadding: 2px 5px;\r\n\tfont-size: 85%;\r\n\tfont-style: italic;\r\n`;\r\n\r\nconst GenericDescription = styled.div`\r\n\r\n`;\r\n\r\nconst Error = styled(RelatedListItem)`\r\n\r\n`;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/icons/icon-transfer-value-white-green-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n Label,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport ValueProfileList from '../../components/DetailPage/ValueProfile';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { Collection } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function CollectionPageV2(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as Collection);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/collection/${id}`, (data: Collection) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n\t}\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Collection\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n\t\t\t\t\t\t\r\n \r\n {pageModel.Description && (\r\n \r\n {pageModel.Description}\r\n \r\n )}\r\n \r\n {pageModel.SubjectWebpage &&\r\n \r\n }\r\n \r\n \r\n {/*{pageModel.Connections?.length > 0 && (*/}\r\n {/*\t*/}\r\n {/*\t\t*/}\r\n {/* */}\r\n {/*\t*/}\r\n {/*)}*/}\r\n \r\n \r\n\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\r\n\r\n \r\n \r\n \r\n );\r\n}\r\n//","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport partOfIcon from '../../assets/images/icons/icon-pathways-green-blue-01.svg';\r\nimport pageIcon from '../../assets/images/icons/icon-pathways-white-green-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { PathwayComponent } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function PathwayComponentPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as PathwayComponent);\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n\tconsole.log(\"test\");\r\n\tuseEffect(() => {\r\n\t\tconsole.log(\"using effect\");\r\n getPageData(`${apiUrl}/PathwayComponent/${id}`, (data: PathwayComponent) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\r\n var typeLabel = widgetGetSingleLabelForText(\"Pathway Component\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n\r\n\r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n\r\n \r\n \r\n \r\n \r\n \r\n {pageModel.Pathway &&\r\n \r\n \r\n \r\n }\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n//","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n FullWidthWrapper,\r\n InnerWrapper,\r\n Label, Section,\r\n Inline,\r\n InlineLabel,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { CredentialingAction } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport ConditionProfileList, { getConditionProfileListButtonName } from \"../../components/DetailPage/ConditionProfile\";\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from '../../types/internal';\r\nimport transferValueIcon from '../../assets/images/icons/icon-transfer-value-green-blue-01.svg';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport pageIcon from '../../assets/images/icons/icon-quality-assurance-blue-green-01.svg';\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function CredentialingActionPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as CredentialingAction);\r\n const [openedModal, setOpenedModal] = useState();\r\n const startDate = pageModel.StartDate;\r\n const endDate = pageModel.EndDate;\r\n function onOpenModalClick(modalType: ModalType) {\r\n return () => setOpenedModal(modalType);\r\n }\r\n\r\n function onCloseModalClick() {\r\n setOpenedModal(undefined);\r\n }\r\n function TextItem(props: { label: string, item: string }) {\r\n return (props.item &&\r\n \r\n {props.label}\r\n
    {props.item}
    \r\n
    \r\n ) || null\r\n }\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/Action/${id}`, (data: CredentialingAction) => {\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\r\n var typeLabel = widgetGetSingleLabelForText(\"Quality Assurance Action\");\r\n\r\n return (\r\n \r\n \r\n {/*Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}*/}\r\n {/* }*/}\r\n {/*/>*/}\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n {/*{pageModel.ActionType && (*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*)}*/}\r\n {pageModel.EvidenceOfAction &&\r\n \r\n \r\n \r\n }\r\n {pageModel.ActionStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n {(pageModel.StartDate || pageModel.EndDate) && (\r\n \r\n \r\n \r\n \r\n )} \r\n\r\n\r\n {/*{pageModel.SubjectWebpage &&*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*}*/}\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {pageModel.Object &&\r\n \r\n \r\n \r\n }\r\n {pageModel.Instrument &&\r\n \r\n \r\n \r\n }\r\n {/*{pageModel.Participant &&*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*}*/}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n//\r\n","export default __webpack_public_path__ + \"static/media/icon-credential-benchmark-report-white-green-01.c4d7cdd1.svg\";","import React, { Dispatch, SetStateAction, useEffect, useState } from 'react';\r\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\n//updates for data table testing\r\n//yarn add react-data-table-component styled-components\r\nimport ReactDOM from \"react-dom\";\r\nimport DataTable from \"react-data-table-component\";\r\nimport axios from 'axios';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport styled from 'styled-components/macro';\r\nimport pageIcon from '../../assets/images/icons/icon-credential-benchmark-report-white-green-01.svg';\r\nimport credentials_icon from '../../assets/images/icons/icon-credentials-white-green-01.svg';\r\nimport organizations_icon from '../../assets/images/icons/icon-organization-white-green-01.svg';\r\nimport assessments_icon from '../../assets/images/icons/icon-assessments-white-green-01.svg';\r\nimport learning_opportunities_icon from '../../assets/images/icons/icon-learning-opportunities-white-green-01.svg';\r\nimport costmanifest_icon from '../../assets/images/icons/icon-slider-credential-providers-01.svg';\r\nimport conditionmanifest_icon from '../../assets/images/icons/icon-slider-credential-providers-01.svg';\r\nimport pathways_icon from '../../assets/images/icons/icon-pathways-white-green-01.svg';\r\nimport transfervalue_icon from '../../assets/images/icons/icon-transfer-value-white-green-01.svg';\r\nimport transferintermediary_icon from '../../assets/images/icons/icon-transfer-value-white-green-01.svg';\r\nimport Error from '../../components/Error';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport { Wrapper } from '../../components/Error/styles';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { VStack } from '../../components/Stack';\r\nimport { PageDescription, PageSection, PageTitle } from '../HomePage/styles';\r\nimport { StyledHelpanel } from './styles';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { theme } from '../../shared/theme';\r\nimport { BenchmarkReport } from '../../types/external';\r\nimport Banner from '../../components/Banner';\r\n//not used\r\ninterface Props {\r\n benchmarkType: string;\r\n}\r\n\r\nexport default function ReportsBenchmarkPage(props: RouteComponentProps) {\r\n let benchmarkType = props.match.params.benchmarkType;\r\n if(benchmarkType == null) {\r\n benchmarkType = \"credential\";\r\n }//\r\n //Setup tabs/entities. On change of currentEntity, the getPageData UseEffect will be called.\r\n //ISSUE: the whole page is being refreshed, rather than just the benchmarks\r\n\tconst [currentEntity, setCurrentEntity] = useState(\"credential\");\r\n function getLegacyLink() {\r\n const url = legacySourceUrl + \"/Reports/BenchmarkReport/\"\r\n const mystyle = {\r\n color: \"transparent\",\r\n //backgroundColor: \"#0a2942\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy Version\r\n \r\n\r\n\t}\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n // const [loading, setLoading] = useState(false);\r\n const [pageContent, setPageContent] = useState({} as BenchmarkReport);\r\n\r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n const url = `${apiUrl}/reports/benchmarks/` + currentEntity;\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/reports/benchmarks/${currentEntity}`, (data: BenchmarkReport) => {\r\n\t\t\tsetPageContent(data);\r\n });\r\n }, [getPageData, currentEntity]);\r\n\r\n \r\n //These columns have a text box for filtering. For example, in the \"Policy\" column type in \"Recommended\" to only show Labels that are not required but are recommended in the Minimum data policy. \r\n return (\r\n \r\n This report is a count of CTDL terms by class published to the Credential Registry. Select any of the classes from the top of this page. The \"Label\" column represents the CTDL terms. The \"Policy\" column is based on the Credential Registry Minimum Data Policy. The policy also identifies Recommended Benchmarks as models to include more comprehensive data that includes information valuable to different consumers, providers, employers, and agencies. The \"Policy\" column also includes some other types:\r\n
    \r\n
      \r\n
    • Requires OwnedBy or OfferedBy - At least of one OwnedBy or OfferedBy must be provided.
    • \r\n
    • Required Conditionally - At least one of the properties that are required conditionally must be entered.
    • \r\n
    \r\n
    \r\n {getLegacyLink()} \r\n \r\n } \r\n />\r\n \r\n \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\r\n\r\n\r\n \r\n
    \r\n \r\n {pageContent.BenchmarkType && (\r\n

    \r\n {pageContent.BenchmarkType}\r\n

    \r\n )}\r\n {pageContent.Benchmarks && (\r\n
    \r\n
    \r\n
    Label
    \r\n
    Policy
    \r\n
    Total
    \r\n
    Percent Of Overall Total
    \r\n
    \r\n
    \r\n {pageContent.Benchmarks.map((profile) => ( \r\n
    \r\n
    {profile.Label}
    \r\n
    {profile.Policy}
    \r\n
    {profile.Total.toLocaleString()}
    \r\n
    {profile.PercentOfOverallTotal}
    \r\n
    \r\n ))} \r\n
    \r\n
    \r\n )}\t\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n );\r\n}\r\n\r\n\r\nfunction ReportTabButton(props: { broadType: string, currentEntity: string, label: string, icon: string, onClick: Dispatch> }) {\r\n\treturn (\r\n\t\t props.onClick(props.broadType)} className={props.currentEntity == props.broadType ? \"currentEntity\" : \"\"}>\r\n\t\t\t\"\"\r\n\t\t\t{props.label}\r\n\t\t\r\n\t)\r\n}\r\n\r\nconst StyledReportTabButton = styled.button`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tpadding: 10px 20px;\r\n\tbackground-color: transparent;\r\n\tborder: none;\r\n\tcolor: inherit;\r\n\tborder-bottom: 2px solid transparent;\r\n\r\n\t&:hover, &:focus {\r\n\t\tbackground-color: rgba(255, 255, 255, 0.2);\r\n\t}\r\n\r\n\t&.currentEntity {\r\n\t\topacity: 1;\r\n\t\tfont-weight: bold;\r\n\t\tborder-color: ${(props) => props.theme.color.aquaDark};\r\n\t}\r\n\r\n\t& img {\r\n\t\twidth: 30px;\r\n\t\tmargin-right: 10px;\r\n\t}\r\n\r\n\t@media(max-width: 675px){\r\n\t\twidth: 100%;\r\n\t\ttext-align: left;\r\n\t\tborder-bottom: none;\r\n\t\tborder-left: 5px solid transparent;\r\n\t}\r\n`;\r\nconst ReportTabButtons = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: stretch;\r\n\tmargin: 0 auto;\r\n background-color: ${(props) => props.theme.color.greyLight};\r\n\t@media(max-width: 1000px) {\r\n\t\torder: 3;\r\n\t}\r\n\r\n\t@media(max-width: 675px){\r\n\t\tdisplay: block;\r\n\t\tmargin: 0;\r\n\t\twidth: 100%;\r\n\t}\r\n`;","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport styled from 'styled-components/macro';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\nimport axios from 'axios';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport Error from '../../components/Error';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\n\r\nexport default function WidgetPage(props: RouteComponentProps) {\r\n\tconst [loading, setLoading] = useState(false);\r\n\tconst [pageContent, setPageContent] = useState(' ');\r\n\tconst [error, setError] = useState(false);\r\n\r\n\tuseEffect(() => {\r\n\t\tsetLoading(true);\r\n\t\tconst url = `${legacySourceUrl}/widget?coreonly=true`;\r\n\t\taxios\r\n\t\t\t.get(url)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tsetPageContent(res.data);\r\n\t\t\t\tsetLoading(false);\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t\tsetError(true);\r\n\t\t\t\tsetLoading(false);\r\n\t\t\t});\r\n\t}, []);\r\n\tif (loading) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\tif (error) {\r\n\t\treturn ;\r\n\t}\r\n\treturn ;\r\n}\r\n\r\nconst LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport styled from 'styled-components/macro';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\nimport axios from 'axios';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport Error from '../../components/Error';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\n\r\nexport default function WidgetConfigurePage(props: RouteComponentProps) {\r\n\tconst [loading, setLoading] = useState(false);\r\n\tconst [pageContent, setPageContent] = useState(' ');\r\n\tconst [error, setError] = useState(false);\r\n\r\n\tuseEffect(() => {\r\n\t\tsetLoading(true);\r\n\t\tconst url = `${legacySourceUrl}/widget/configurev2?coreonly=true`;\r\n\t\taxios\r\n\t\t\t.get(url)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tsetPageContent(res.data);\r\n\t\t\t\tsetLoading(false);\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t\tsetError(true);\r\n\t\t\t\tsetLoading(false);\r\n\t\t\t});\r\n\t}, []);\r\n\tif (loading) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\tif (error) {\r\n\t\treturn ;\r\n\t}\r\n\treturn ;\r\n}\r\n\r\nconst LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport styled from 'styled-components/macro';\r\nimport { legacySourceUrl } from '../../shared/globals';\r\nimport axios from 'axios';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport Error from '../../components/Error';\r\nimport InnerHTML from 'dangerously-set-html-content';\r\n\r\nexport default function WidgetConfigurePage(props: RouteComponentProps) {\r\n\tconst [loading, setLoading] = useState(false);\r\n\tconst [pageContent, setPageContent] = useState(' ');\r\n\tconst [error, setError] = useState(false);\r\n\r\n\tuseEffect(() => {\r\n\t\tsetLoading(true);\r\n\t\tconst url = `${legacySourceUrl}/widget/searchwidget?coreonly=true`;\r\n\t\taxios\r\n\t\t\t.get(url)\r\n\t\t\t.then((res) => {\r\n\t\t\t\tsetPageContent(res.data);\r\n\t\t\t\tsetLoading(false);\r\n\t\t\t})\r\n\t\t\t.catch((err) => {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t\tsetError(true);\r\n\t\t\t\tsetLoading(false);\r\n\t\t\t});\r\n\t}, []);\r\n\tif (loading) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\tif (error) {\r\n\t\treturn ;\r\n\t}\r\n\treturn ;\r\n}\r\n\r\nconst LoadingIndicatorWrapper = styled.div`\r\n text-align: center;\r\n padding: 50px;\r\n`;\r\n","import React, { ReactNode, useEffect, useState } from 'react';\r\nimport styled from 'styled-components/macro';\r\nimport { apiUrl } from '../../shared/globals';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { appURL, appBaseName } from '../../shared/globals';\r\nimport { ProgressionModel, ProgressionLevel as ProgressionLevelType, Outline, Link } from '../../types/external';\r\nimport conceptsBannerIcon from '../../assets/images/UpdatedIcons/CE-Icon_19-Progression-Model_Blue-Green_High-Res.png';\r\nimport conceptsIcon from '../../assets/images/icons/icon-competencies-blue-green-01.svg';\r\nimport PageBanner from '../../components/DetailPage/PageBanner';\r\nimport {\r\n\tWrapper,\r\n\tFullWidthWrapper,\r\n\tInnerWrapper,\r\n\tDescription,\r\n\tLabel\r\n} from '../../components/DetailPage/styles';\r\nimport { VStack } from '../../components/Stack';\r\nimport PageSection from '../../components/PageSection';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport { getResourceByURI, englishOrNull, createKeywordSearchLink, getResourceByURLWithoutState } from '../../components/GetResourceByURI';\r\nimport ActivityIndicator from '../../components/ActivityIndicator';\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport SubjectsAndKeywordsPageSection from '../../components/DetailPage/SubjectsAndKeywordsPageSection';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { faAngleDown, faAngleRight } from '@fortawesome/free-solid-svg-icons';\r\nimport { renderJSONLDMetaTags } from '../../utils/JSONLDMetaHelper';\r\n\r\n\r\ninterface Props {\r\n\tid: string;\r\n\ttargetCTID?: string;\r\n}\r\n\r\nexport default function ProgressionModelPage(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [dataIsLoading, setDataIsLoading] = useState(true);\r\n\tconst [hasError, setHasError] = useState(false);\r\n\tconst [progressionModel, setProgressionModel] = useState({} as ProgressionModel);\r\n\tconst [progressionLevels, setProgressionLevels] = useState([] as Array);\r\n\tconst [localAJAXCache, setLocalAJAXCache] = useState([] as Array); //Used to trick react into re-rendering the data\r\n\r\n\t//This is so backwards I hate this\r\n\tconst [publicationStatusText, setPublicationStatusText] = useState(\"\");\r\n\r\n\tuseEffect(() => {\r\n\t\tconsole.log(\"App Name\", appBaseName);\r\n\t\tgetResourceByURI(`${apiUrl}/dsp_progressionmodel/${id}`, setLocalAJAXCache, null, (loaded: any) => {\r\n\t\t\tvar data = loaded.Result;\r\n\t\t\trenderJSONLDMetaTags(data.Resource, \"ProgressionModel\");\r\n\t\t\tsetDataIsLoading(false);\r\n\t\t\tsetProgressionModel(convertDataToProgressionModel(data.Resource || { \"ceasn:name\": \"Missing Progression Model\", \"ceasn:description\": \"Unable to find data for identifier: \" + id }, data.Metadata, id, setLocalAJAXCache));\r\n\t\t\tsetProgressionLevels(data.RelatedItems.filter((m: any) => { return m[\"skos:inScheme\"] == data.Resource[\"@id\"] || m[\"ceasn:inProgressionModel\"] == data.Resource[\"@id\"] }).map((m: ProgressionLevelType) => { return convertDataToConcept(m) }));\r\n\r\n\t\t\tif (progressionModel.PublicationStatusType) {\r\n\t\t\t\tgetResourceByURLWithoutState(progressionModel.PublicationStatusType, null, (success: any) => {\r\n\t\t\t\t\tsetPublicationStatusText(englishOrNull(success?.[\"@graph\"]?.[0]?.[\"skos:prefLabel\"]));\r\n\t\t\t\t\tconsole.log(publicationStatusText);\r\n\t\t\t\t}, (error: any) => {\r\n\t\t\t\t\tsetPublicationStatusText(\"Error loading Status: \" + progressionModel.PublicationStatusType);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\t\t\t(error: any) => {\r\n\t\t\t\tsetHasError(true);\r\n\t\t\t\tconsole.log(\"Error loading data: \", error);\r\n\t\t\t});\r\n\t\tnew URLSearchParams(window.location.search).forEach(function (value: string, key: string) {\r\n\t\t\tif (key.toLowerCase() == \"conceptctid\" || key.toLowerCase() == \"targetctid\") {\r\n\t\t\t\tjumpToConceptCTID(value.toLowerCase(), 0);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tfunction jumpToConceptCTID(targetCTID: string, attempts: number) {\r\n\t\t\tsetTimeout(function () {\r\n\t\t\t\tvar element = document.getElementById(targetCTID);\r\n\t\t\t\tif (element && element.getElementsByClassName(\"conceptContent\").length > 0) {\r\n\t\t\t\t\telement.scrollIntoView();\r\n\t\t\t\t}\r\n\t\t\t\telse if (attempts <= 10) {\r\n\t\t\t\t\tjumpToConceptCTID(targetCTID, attempts + 1);\r\n\t\t\t\t}\r\n\t\t\t}, 500);\r\n\t\t}\r\n\r\n\r\n\t}, [id, localAJAXCache]);\r\n\r\n\tvar topCompetencies = progressionModel.HasTopConcept?.length > 0 ? progressionModel.HasTopConcept.map((m) => { return progressionLevels.filter((n) => { return n.CredentialRegistryURL == m })[0] }).filter((m) => { return m }) : progressionLevels;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{progressionModel.Description || \"No description available\"}\r\n\t\t\t\t\t\t{progressionModel.Source && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{progressionModel.Source.map((url) => ())}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{progressionModel.PublicationStatusType && (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{publicationStatusText && {publicationStatusText}}\r\n\t\t\t\t\t\t\t\t{!publicationStatusText &&
    }\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{topCompetencies && topCompetencies.map((progressionLevel) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t].filter(m => m.Content != null)}\r\n\t\t\t\t/>\r\n\r\n\t\t\t\r\n\t\t
    \r\n\t)\r\n}\r\n\r\nexport function convertDataToProgressionModel(resource: any, metadata: any, id: string, setLocalAJAXCache: any): ProgressionModel {\r\n\treturn {\r\n\t\tBroadType: \"ProgressionModel\",\r\n\t\tCTDLType: \"skos:ProgressionModel\",\r\n\t\tCTDLTypeLabel: \"Progression Model\",\r\n\t\tMeta_Id: id,\r\n\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\tMeta_LastUpdated: metadata?.DateModified || \"Unknown\",\r\n\t\tMeta_LastUpdatedHeader: metadata?.DateModified || \"Unknown\",\r\n\t\tMeta_Language: resource[\"ceasn:inLanguage\"]?.[0] || \"en\",\r\n\t\tName: englishOrNull(resource[\"ceasn:name\"]),\r\n\t\tDescription: englishOrNull(resource[\"ceasn:description\"]),\r\n\t\tSource: Array.isArray(resource[\"ceasn:source\"]) ? resource[\"ceasn:source\"] : [resource[\"ceasn:source\"]],\r\n\t\tInLanguage: resource[\"ceasn:inLanguage\"],\r\n\t\tConceptKeyword: englishOrNull(resource[\"ceasn:conceptKeyword\"])?.map((m: string) => { return createKeywordSearchLink(\"conceptscheme\", m) }),\r\n\t\tConceptTerm: resource[\"ceasn:conceptTerm\"]?.map((m: string) => { return createKeywordSearchLink(\"conceptscheme\", englishOrNull(m)) }),\r\n\t\tCreator: resource[\"ceasn:creator\"]?.map((m: string) => { return getOrganizationOutlineByURI(m, \"creator\", setLocalAJAXCache) }),\r\n\t\tDateCreated: resource[\"ceasn:dateCreated\"],\r\n\t\tDateCopyrighted: resource[\"ceasn:dateCopyrighted\"],\r\n\t\tDateModified: resource[\"ceasn:dateModified\"],\r\n\t\tLicense: resource[\"ceasn:license\"],\r\n\t\tPublicationStatusType: resource[\"ceasn:publicationStatusType\"]?.replace(\"http://\", \"https://\")?.replace(\"publicationStatus:\", \"https://credreg.net/ctdlasn/vocabs/publicationStatus/\"),\r\n\t\tPublisher: resource[\"ceasn:publisher\"]?.map((m: string) => { return getOrganizationOutlineByURI(m, \"publisher\", setLocalAJAXCache) }),\r\n\t\tPublisherName: resource[\"ceasn:publisherName\"] && [englishOrNull(resource[\"ceasn:publisherName\"])],\r\n\t\tRights: resource[\"ceasn:rights\"],\r\n\t\tRightsHolder: resource[\"ceasn:rightsHolder\"] && getOrganizationOutlineByURI(resource[\"ceasn:rightsHolder\"], \"rightsholder\", setLocalAJAXCache),\r\n\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\tHasTopConcept: resource[\"skos:hasTopConcept\"],\r\n\t\tRegistryData: { CTID: resource[\"ceterms:ctid\"], Resource: { URL: resource[\"@id\"], Label: \"View Resource\" }, Envelope: { URL: resource[\"@id\"]?.replace(\"/resources/\", \"/envelopes/\"), Label: \"View Envelope\" } },\r\n\t\tMeta_JSON: resource,\r\n\t} as ProgressionModel;\r\n}\r\n\r\n\r\nexport function convertDataToConcept(resource: any): ProgressionLevelType {\r\n\treturn {\r\n\t\tCredentialRegistryURL: resource[\"@id\"],\r\n\t\tCTID: resource[\"ceterms:ctid\"],\r\n\t\tPrefLabel: englishOrNull(resource[\"skos:prefLabel\"]),\r\n\t\tHiddenLabel: englishOrNull(resource[\"skos:hiddenLabel\"]),\r\n\t\tAltLabel: englishOrNull(resource[\"skos:altLabel\"]),\r\n\t\tBroader: resource[\"skos:broader\"],\r\n\t\tBroadMatch: resource[\"skos:broadMatch\"],\r\n\t\tChangeNote: englishOrNull(resource[\"skos:changeNote\"]),\r\n\t\tCloseMatch: resource[\"skos:closeMatch\"],\r\n\t\tExactMatch: resource[\"skos:exactMatch\"],\r\n\t\tInScheme: resource[\"skos:inScheme\"],\r\n\t\tNarrower: resource[\"skos:narrower\"],\r\n\t\tNarrowMatch: resource[\"skos:narrowMatch\"],\r\n\t\tRelated: resource[\"skos:related\"],\r\n\t\tTopConceptOf: resource[\"skos:topConceptOf\"],\r\n\t\tDefinition: englishOrNull(resource[\"skos:definition\"]),\r\n\t\tNotation: resource[\"skos:notation\"],\r\n\t\tNote: englishOrNull(resource[\"skos:note\"]),\r\n\t\tMeta_JSON: resource\r\n\t} as ProgressionLevelType;\r\n}\r\n\r\nfunction getOrganizationOutlineByURI(uri: string, temp: string, setLocalAJAXCache: any): Outline {\r\n\tvar data = getResourceByURI(uri, setLocalAJAXCache).Data;\r\n\treturn {\r\n\t\tLabel: englishOrNull(data?.[\"ceterms:name\"]) || ,\r\n\t\tURL: appURL + \"/organization/\" + uri.split(\"/resources/\")[1],\r\n\t\tImage: data?.[\"ceterms:image\"]\r\n\t} as Outline;\r\n}\r\n\r\n\r\n\r\nfunction AlignmentListHelper() {\r\n\twireupExtras();\r\n\treturn (\r\n\t\t<>\r\n\t\t\t\r\n\t\t\r\n\t)\r\n}\r\nfunction wireupExtras() {\r\n\tsetTimeout(function () {\r\n\t\tvar items = Array.from(document.querySelectorAll(\".conceptExtraListWrapper:not(.setup)\") || []);\r\n\t\titems.forEach(function (item) {\r\n\t\t\titem.classList.add(\"setup\");\r\n\t\t\titem.querySelector(\".conceptExtraListSummaryButton\")?.addEventListener(\"click\", function () {\r\n\t\t\t\titem.classList.contains(\"expanded\") ? item.classList.remove(\"expanded\") : item.classList.add(\"expanded\");\r\n\t\t\t});\r\n\t\t});\r\n\t\tif (items.length > 0) {\r\n\t\t\twireupExtras();\r\n\t\t}\r\n\t}, 100);\r\n}\r\n\r\nexport function ProgressionLevel(props: { progressionLevel: ProgressionLevelType, allConcepts: Array | null }) {\r\n\treturn props.progressionLevel && (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{props.progressionLevel.Notation && {props.progressionLevel.Notation}}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{(props.progressionLevel.PrefLabel || props.progressionLevel.AltLabel || props.progressionLevel.HiddenLabel) && (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{props.progressionLevel.PrefLabel && {props.progressionLevel.PrefLabel}}\r\n\t\t\t\t\t\t\t{props.progressionLevel.AltLabel && {props.progressionLevel.AltLabel}}\r\n\t\t\t\t\t\t\t{props.progressionLevel.HiddenLabel && {props.progressionLevel.HiddenLabel}}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t\t{props.progressionLevel.Definition && {props.progressionLevel.Definition}}\r\n\t\t\t\t\t{props.progressionLevel.Note && {props.progressionLevel.Note}}\r\n\t\t\t\t\t{props.progressionLevel.ChangeNote && {props.progressionLevel.ChangeNote}}\r\n\t\t\t\t\t{props.progressionLevel.CTID && CTID: {props.progressionLevel.CTID}}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t m.Meta_JSON) || []} />\r\n\t\t\t\r\n\t\t\t{(props.allConcepts || []).length > 0 && props.progressionLevel.Narrower?.length > 0 &&\r\n\t\t\t\t\r\n\t\t\t\t\t{props.progressionLevel.Narrower.map((narrowerURI) => (\r\n\t\t\t\t\t\t { return m.CredentialRegistryURL == narrowerURI })[0]} allConcepts={props.allConcepts} key={\"progressionLevel-\" + narrowerURI} />\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\r\n\t) || null;\r\n}\r\n\r\nexport function ConceptAlignmentList(props: { source: ProgressionLevelType, relatedItems: Array }) {\r\n\tvar conceptAlignments = [] as Array;\r\n\tvar alignmentTypes = [\r\n\t\t{ label: \"Broad Match\", property: \"skos:broadMatch\" },\r\n\t\t{ label: \"Close Match\", property: \"skos:closeMatch\" },\r\n\t\t{ label: \"Exact Match\", property: \"skos:exactMatch\" },\r\n\t\t{ label: \"Narrow Match\", property: \"skos:narrowMatch\" },\r\n\t\t{ label: \"Related\", property: \"skos:related\" }\r\n\t];\r\n\r\n\talignmentTypes.forEach(type => {\r\n\t\t(props.source.Meta_JSON[type.property] || []).forEach((alignment: string) => {\r\n\t\t\tvar match = props.relatedItems.filter(item => {\r\n\t\t\t\treturn item[\"@id\"] == alignment\r\n\t\t\t})[0];\r\n\r\n\t\t\tconceptAlignments.push(\r\n\t\t\t\tmatch ?\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\talignmentPrefix: \"\",\r\n\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\talignmentPostfix: \":\",\r\n\t\t\t\t\t\ttargetURL: \"/conceptscheme/ce-\" + match[\"skos:inScheme\"]?.split(\"/ce-\")[1] + \"?conceptCTID=\" + match[\"ceterms:ctid\"],\r\n\t\t\t\t\t\ttargetLabel: englishOrNull(match[\"skos:prefLabel\"])\r\n\t\t\t\t\t}\r\n\t\t\t\t\t:\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\talignmentPrefix: \"External \",\r\n\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\talignmentPostfix: \":\",\r\n\t\t\t\t\t\ttargetURL: alignment,\r\n\t\t\t\t\t\ttargetLabel: alignment\r\n\t\t\t\t\t}\r\n\t\t\t);\r\n\t\t});\r\n\t});\r\n\r\n\talignmentTypes.forEach(type => {\r\n\t\tprops.relatedItems.forEach(relatedItem => {\r\n\t\t\tif (relatedItem[type.property]?.indexOf(props.source.Meta_JSON[\"@id\"]) > -1) {\r\n\t\t\t\tconceptAlignments.push(\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\talignmentPrefix: \"Reverse \",\r\n\t\t\t\t\t\talignmentLabel: type.label,\r\n\t\t\t\t\t\talignmentTerm: type.property,\r\n\t\t\t\t\t\talignmentPostfix: \" reference from:\",\r\n\t\t\t\t\t\ttargetURL: \"/conceptscheme/ce-\" + relatedItem[\"skos:inScheme\"]?.split(\"/ce-\")[1] + \"?conceptCTID=\" + relatedItem[\"ceterms:ctid\"],\r\n\t\t\t\t\t\ttargetLabel: englishOrNull(relatedItem[\"skos:prefLabel\"])\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\treturn conceptAlignments.length > 0 && (\r\n\t\t (\r\n\t\t\t\t\r\n\t\t\t\t\t{m.alignmentPrefix}{m.alignmentLabel}{m.alignmentPostfix} {m.targetLabel}\r\n\t\t\t\t\r\n\t\t\t))}\r\n\t\t/>\r\n\t) || null\r\n}\r\n\r\nexport function ConceptExtraListSimple(props: { values: Array, count: number, label: string }) {\r\n\treturn props.values?.length > 0 && (\r\n\t\t\r\n\t\t\t{props.count > 1 && {props.count} {props.label + \"s\"} }\r\n\t\t\t{props.count == 1 && {props.count} {props.label}}\r\n\t\t\t\r\n\t\t\t\t{props.values}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\n\r\nconst ConceptWrapper = styled.div`\r\n\tpadding: 5px;\r\n\tborder-top: 1px solid #CCC;\r\n`;\r\n\r\nconst ConceptContent = styled.div`\r\n\tdisplay: flex;\r\n\tpadding-left: 10px;\r\n\r\n`;\r\n\r\nconst ConceptPrefix = styled.div`\r\n\r\n`;\r\n\r\nconst ConceptPrefixItem = styled.div`\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tjustify-content: center;\r\n\tfont-size: 12px;\r\n\tmin-width: 50px;\r\n\tmax-width: 150px;\r\n\tword-break: break-word;\r\n\tmargin-right: 5px;\r\n\tbackground-color: #F5F5F5;\r\n\tpadding: 5px;\r\n\ttext-align: center;\r\n`;\r\n\r\nconst ConceptBody = styled.div`\r\n\r\n`;\r\n\r\nconst ChildConcepts = styled.div`\r\n\tpadding-left: 25px;\r\n`;\r\n\r\nconst ConceptName = styled.div`\r\n\tfont-weight: bold;\r\n\r\n\t& span:not(:first-child) {\r\n\t\tborder-left: 1px solid #CCC;\r\n\t\tpadding-left: 10px;\r\n\t\tmargin-left: 10px;\r\n\t}\r\n`;\r\n\r\nconst ConceptDefinition = styled.div`\r\n\t\r\n`;\r\n\r\nconst ConceptNote = styled.div`\r\n\tfont-style: italic;\r\n\tpadding: 0 10px;\r\n\tfont-size: 90%;\r\n`;\r\n\r\nconst ConceptCTID = styled.div`\r\n\tpadding: 5px 10px;\r\n\tfont-size: 12px;\r\n\tfont-style: italic;\r\n`;\r\n\r\nconst ConceptExtras = styled.div`\r\n\tpadding: 5px 0 5px 10px;\r\n`;\r\n\r\nconst ConceptExtraListWrapper = styled.div`\r\n\tdisplay: flex;\r\n\talign-items: flex-start;\r\n\tfont-size: 12px;\r\n\tborder-top: 1px dashed #CCC;\r\n\tpadding: 5px 5px;\r\n\r\n`;\r\n\r\nconst ConceptExtraListSummaryWrapper = styled.div`\r\n\tmin-width: 150px;\r\n\tmargin-right: 10px;\r\n\tpadding: 1px 5px;\r\n`;\r\n\r\nconst ConceptExtraListSummaryButton = styled.button`\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tmin-width: 150px;\r\n\tmargin-right: 10px;\r\n\tborder: none;\r\n\tbackground-color: transparent;\r\n\tfont-size: 12px;\r\n\tpadding: 1px 5px;\r\n\r\n\t& svg {\r\n\t\tmargin-left: auto;\r\n\t}\r\n\r\n\t&:hover, &:focus {\r\n\t\tcursor: pointer;\r\n\t\ttext-decoration: underline;\r\n\t}\r\n`;\r\n\r\nconst ConceptExtraListValues = styled.div`\r\n\twidth: 100%;\r\n`;\r\n\r\n\r\nconst ConceptExtraListItem = styled.div`\r\n\tpadding: 2.5px 0;\r\n\tborder-top: 1px dashed #CCC;\r\n\r\n\t&:first-child {\r\n\t\tborder: none;\r\n\t}\r\n\r\n\t& a {\r\n\t\tword-break: break-word;\r\n\t}\r\n`;\r\n\r\nconst AlignmentWrapper = styled(ConceptExtraListItem)`\r\n\r\n`;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_8-Outcome-Data_Blue-Green_High-Res.png';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject, { PlainTextLink } from '../../components/DetailPage/LinkObject';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n\tDescription,\r\n\tFullWidthWrapper,\r\n\tInline,\r\n\tInlineLabel,\r\n\tInnerWrapper,\r\n\tLabel, \r\n\tWrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, appURL, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport { DataSetProfile, DataSetService, Link, Observation, ProcessProfile,DataSetDistribution, Dimension, DataSetTimeFrame } from '../../types/external';\r\nimport ProcessProfileList from '../../components/DetailPage/ProcessProfile';\r\nimport processIcon from '../../assets/images/icons/icon-process-blue-green-01.svg';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport ConnectionsSection from \"../../components/DetailPage/ConnectionsSection\";\r\nimport { ModalType } from \"../../types/internal\";\r\nimport { TabSetOrSingle } from '../../components/DetailPage/TabSelector';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport { DataSetTimeFrameSingle, DataSetTimeFrameSingleMinimal } from '../../components/DetailPage/DataSetProfile';\r\n\r\n\r\nimport { Box, BoxContent, SectionContent, SectionContentItem } from '../../components/DetailPage/Shared';\r\nimport styled from 'styled-components';\r\nimport { isFilled } from '../../validation';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport PlaceList from '../../components/DetailPage/Place';\r\ninterface Props {\r\n\tid: string;\r\n}\r\n\r\nexport default function DataSetProfilePage(props: RouteComponentProps) {\r\n\tconst id = props.match.params.id;\r\n\tconst [\r\n\t\tpageDataIsLoading,\r\n\t\tpageDataHasError,\r\n\t\tgetPageData,\r\n\t] = useGet();\r\n\tconst [pageModel, setPageData] = useState({} as DataSetProfile);\r\n\tconst isMobile = useMediaQuery({\r\n\t\tquery: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n\t});\r\n\tconst [selectedDimension, setSelectedDimension] = useState({} as Dimension);\r\n\r\n\tuseEffect(() => {\r\n\t\tgetPageData(`${apiUrl}/DataSetProfile/${id}`, (data: DataSetProfile) => {\r\n\t\t\tsetPageData(data);\r\n\t\t});\r\n\t}, [getPageData, id]);\r\n\t//\r\n\tuseEffect(() => {\r\n\t\tif (pageModel?.HasDimension?.length > 0) {\r\n\t\t setSelectedDimension(pageModel.HasDimension[0]);\r\n\t\t}\r\n\t }, [pageModel?.HasDimension]); \r\n\t \r\n\t const handleDimensionChange = (event: any) => {\r\n\t\tconst selectedIndex = Number(event.target.value);\r\n\t\tsetSelectedDimension(pageModel?.HasDimension?.[selectedIndex]);\r\n\t };\r\n\t \r\n\t useEffect(() => {\r\n\t }, [selectedDimension]);\r\n\r\n\tfunction getSubTitleLink() {\r\n\t\tif (pageModel.DataProvider && pageModel.DataProvider.Label) {\r\n\t\t\treturn pageModel.DataProvider.URL ?\r\n\t\t\t\t{pageModel.DataProvider.Label} :\r\n\t\t\t\t<>{pageModel.DataProvider.Label};\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconst [openedModal, setOpenedModal] = useState();\r\n\r\n\tfunction onOpenModalClick(modalType: ModalType) {\r\n\t\treturn () => setOpenedModal(modalType);\r\n\t}\r\n\r\n\tfunction onCloseModalClick() {\r\n\t\tsetOpenedModal(undefined);\r\n\t}\r\n\r\n\tfunction getLegacyLink() {\r\n\t\tif (pageModel.Meta_Id) {\r\n\t\t\tconst url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n\t\t\tconst mystyle = {\r\n\t\t\t\t//color: \"rgba(0,0,0,.01)\",\r\n\t\t\t\tcolor: \"transparent\",\r\n\t\t\t\t//backgroundColor: \"rgba(0,0,0,.01)\",\r\n\t\t\t\tmarginLeft: \"10px\"\r\n\t\t\t};\r\n\t\t\treturn <>\r\n\t\t\t\tLegacy\r\n\t\t\t\r\n\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar typeLabel = widgetGetSingleLabelForText(\"Outcome Data\");\r\n\t\r\n\treturn (\r\n\t\t\r\n\r\n\t\t\tLast updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n\t\t\t\t}\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t{pageModel.Description && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{pageModel.Description}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tpageModel.About?.length > 0 &&\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t{pageModel.Source &&\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t{pageModel.DataSuppressionPolicy && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    {pageModel.DataSuppressionPolicy}
    \t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t{pageModel.SubjectIdentification && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    {pageModel.SubjectIdentification}
    \t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t)}\r\n\r\n\t\t\t\t\t\t\t{pageModel.DistributionFile?.length > 0 &&\r\n\t\t\t\t\t\t\t\tpageModel.DistributionFile.map((url) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t))\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t{pageModel.DataSetSpatialCoverage?.length > 0 &&\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t{pageModel.DataSetTemporalCoverage && \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{pageModel.DataSetTemporalCoverage?.Name &&\r\n\t\t\t\t\t\t\t\t\t<>
    {pageModel.DataSetTemporalCoverage?.Name}
    \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t{pageModel.DataSetTemporalCoverage?.Description &&\r\n\t\t\t\t\t\t\t\t\t<>
    {pageModel.DataSetTemporalCoverage?.Description}
    \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t{pageModel.DataSetTemporalCoverage?.AlternateName &&\r\n\t\t\t\t\t\t\t\t\t<>
    {pageModel.DataSetTemporalCoverage?.AlternateName}
    \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t{isFilled(pageModel.DataSetTemporalCoverage?.DataSourceCoverageType) && (\r\n\t\t\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t{pageModel.DataSetTemporalCoverage?.StartDate &&\r\n\t\t\t\t\t\t\t\t\t<>
    {pageModel.DataSetTemporalCoverage?.StartDate}
    \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t{pageModel.DataSetTemporalCoverage?.EndDate &&\r\n\t\t\t\t\t\t\t\t\t<>
    {pageModel.DataSetTemporalCoverage?.EndDate}
    \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t{pageModel.DataSetTemporalCoverage?.TimeIntervalDisplay &&\r\n\t\t\t\t\t\t\t\t\t<>
    {pageModel.DataSetTemporalCoverage?.TimeIntervalDisplay}
    \r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t 0 &&\r\n\t\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t{pageModel.DataSetTimePeriod?.length === 1 &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{/*Label: \"Coming Soon!\"*/}\r\n\t\t\t\t\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tLabel: dataSetProfile.Name || (\"Data Set \" + (index + 1)),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t)} />\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{pageModel?.HasDimension?.length > 0 ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{pageModel?.HasDimension?.length > 0 ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension.HasPointSummary?.map((point, index) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{pageModel?.HasMetric?.map((metric, rowIndex) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension?.HasPointSummary?.length > 0 ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tselectedDimension.HasPointSummary.map((point) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst observations = pageModel.HasObservation?.filter(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(obs) => obs.IsObservationOf?.Meta_Id === metric.Meta_Id &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tobs.AtPoints?.some((p) => p.RowId === point.RowId)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpageModel?.HasObservation?.map((observation, obsIndex) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (observation.IsObservationOf?.Meta_Id === metric.Meta_Id) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    Dimensions \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{pageModel?.HasDimension?.length>1 && }\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{pageModel?.HasDimension?.length > 1 ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{pageModel.HasDimension.map((dim, idx) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {selectedDimension && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension.Description && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension.Description}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension.DimenstionType && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedDimension.DimenstionType}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    Metrics \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{point.Label && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLabel: \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{point?.ResourceSummary?.Type && point?.ResourceSummary?.Id > 0 ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{point.Label}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpoint.Label\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{point.Type && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tPoint Type: {point.Type}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric?.CTID && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tCTID: {metric?.CTID}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric?.MetricType && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tMetric Type: {metric.MetricType[0]?.Label}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{metric?.Description && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tDescription: {metric?.Description}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{observations?.length > 0 ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tobservations.map((observation, obsIndex) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{renderObservation(observation, point.EntityTypeId, pageModel.DataSetTimePeriod)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{obsIndex < observations.length - 1 && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t))\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tnull\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{renderObservation(observation,0, pageModel.DataSetTimePeriod)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t) || null\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Data Sets\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\tpageModel.DataSetTimePeriodHistoricalData?.length > 0 &&\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{/*Label: \"Coming Soon!\"*/}\r\n\t\t\t\t\t\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tLabel: dataSetProfile.Name || (\"Data Set \" + (index + 1) ),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tContent: \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t) || null\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tLabel: \"Details\",\r\n\t\t\t\t\t\t\tContent: (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t} />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmodalTitle={pageModel.AdministrationProcess?.Label}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titems={pageModel.AdministrationProcess?.Values}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.AdministrationProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmodalTitle={pageModel.DevelopmentProcess?.Label}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titems={pageModel.DevelopmentProcess?.Values}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.DevelopmentProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmodalTitle={pageModel.MaintenanceProcess?.Label}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titems={pageModel.MaintenanceProcess?.Values}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.MaintenanceProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t (} />)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmodalTitle={pageModel.ReviewProcess?.Label}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tresourceTitle={pageModel.Name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titems={pageModel.ReviewProcess?.Values}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toverrideCount={pageModel.ReviewProcess?.Total}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{pageModel.HasDataSetDistribution &&\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t{pageModel.HasDataSetService &&\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t]}\r\n\t\t\t\t/>\r\n\t\t\t
    \r\n\t\t\r\n\t);\r\n}\r\n\r\nexport function DataSetDistributionComponent(props: { items: DataSetDistribution[], Name:string }) {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n const toggleModal = () => setIsOpen(!isOpen);\r\n\r\n return (\r\n
    \r\n {props.items?.length > 0 && (\r\n (\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{props.items.map((item, index) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t{item.DistributionFile && }\r\n\t\t\t\t\t\t\t\t\t{item.License.length > 0 && item.License.map((license: string, licenseIndex: number) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t{item.Source.length > 0 && item.Source.map((source: string, sourceIndex: number) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t)} />\r\n )}\r\n
    \r\n );\r\n}\r\n\r\nexport function DataSetServiceComponent(props: { items: DataSetService[], Name:string }) {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n const toggleModal = () => setIsOpen(!isOpen);\r\n\r\n return (\r\n
    \r\n {props.items?.length > 0 && (\r\n (\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{props.items.map((item, index) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t
    {data}
    } />\r\n\t\t\t\t\t\t\t\t\t{item.SubjectWebpage && }\r\n\t\t\t\t\t\t\t\t\t{item.License.length > 0 && item.License.map((license: string, licenseIndex: number) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t)} />\r\n )}\r\n
    \r\n );\r\n}\r\nfunction LinkItem(props: { label: string, item: any }) {\r\n\tif (!props.item) {\r\n\t\treturn null;\r\n\t}\r\n\r\n\tvar link = typeof (props.item) == \"string\" ? ({ Label: props.item, URL: props.item } as Link) : (props.item as Link);\r\n\treturn (link.URL &&\r\n\t\t\r\n\t\t\t{props.label}\r\n\t\t\t\r\n\t\t\r\n\t) || null\r\n}\r\nconst renderObservation = (obs: Observation, pointType: number, timeframes: DataSetTimeFrame[]) => (\r\n\t<>\r\n\t {obs?.Comment && (\r\n\t\t\r\n\t\t Comment: {obs.Comment}\r\n\t\t\r\n\t )}\r\n\t {obs?.Value && (\r\n\t\t\r\n\t\tValue: \r\n\t\t {obs.Currency \r\n\t\t? `${obs.CurrencySymbol}${Intl.NumberFormat('en-US', { \r\n\t\t\tminimumFractionDigits: 2, \r\n\t\t\tmaximumFractionDigits: 2 \r\n\t\t\t}).format(obs.Value)} ${obs.Currency}`\r\n\t\t: obs.Value\r\n\t\t}\r\n\t\t\r\n\t )}\r\n\t {obs?.Percentage && (\r\n\t\t\r\n\t\t Percentage: {obs.Percentage}%\r\n\t\t\r\n\t )}\r\n\t{obs?.Median && (\r\n\t\r\n\t\tMedian: \r\n\t\t{obs.Currency \r\n\t\t? `${obs.CurrencySymbol}${Intl.NumberFormat('en-US', { \r\n\t\t\tminimumFractionDigits: 2, \r\n\t\t\tmaximumFractionDigits: 2 \r\n\t\t\t}).format(obs.Median)} ${obs.Currency}`\r\n\t\t: obs.Median\r\n\t\t}\r\n\t\r\n\t)}\r\n\t {obs?.DataWithholdingType?.Label && (\r\n\t\t\r\n\t\t Data Withholding Type: {obs.DataWithholdingType.Label}\r\n\t\t\r\n\t )}\r\n\t {obs?.Percentile10 && (\r\n\t\t\r\n\t\t Percentile 10: {obs.Percentile10}\r\n\t\t\r\n\t )}\r\n\t {obs?.Percentile25 && (\r\n\t\t\r\n\t\t Percentile 25: {obs.Percentile25}\r\n\t\t\r\n\t )}\r\n\t {obs?.Percentile75 && (\r\n\t\t\r\n\t\t Percentile 75: {obs.Percentile75}\r\n\t\t\r\n\t )}\r\n\t {obs?.Percentile90 && (\r\n\t\t\r\n\t\t Percentile 90: {obs.Percentile90}\r\n\t\t\r\n\t )}\r\n\t {obs?.SizeOfData && (\r\n\t\t\r\n\t\t Size Of Data: {obs.SizeOfData}\r\n\t\t\r\n\t )}\r\n\t {obs?.SizeOfPopulation && (\r\n\t\t\r\n\t\t Size Of Population: {obs.SizeOfPopulation}\r\n\t\t)}\r\n\t {obs?.AtPoints && obs.AtPoints.length > 0 && (\r\n\t\tobs.AtPoints.map((point, pointIndex) => {\r\n\t\t if (point.EntityTypeId !== pointType) {\r\n\t\t\tconst matchingTimeframe = \r\n\t\t\t timeframes?.length > 0 \r\n\t\t\t\t? timeframes.find((timeframe) => timeframe.Name === point.Name)\r\n\t\t\t\t: null;\r\n\t \r\n\t\t\treturn (\r\n\t\t\t
    \r\n\t\t\t\t{point.Name && (\r\n\t\t\t\t \r\n\t\t\t\t\t{point?.Type}: {point?.Name}\r\n\t\t\t\t\t{matchingTimeframe && (\r\n\t\t\t\t\t <>\r\n\t\t\t\t\t\t{matchingTimeframe.AlternateName && (\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\tAlternate Name: {matchingTimeframe.AlternateName}\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{matchingTimeframe.Description && (\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\tDescription: {matchingTimeframe.Description}\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{matchingTimeframe.StartDate && (\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\tStart Date: {matchingTimeframe.StartDate}\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{matchingTimeframe.EndDate && (\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\tEnd Date: {matchingTimeframe.EndDate}\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t{matchingTimeframe.TimeIntervalDisplay && (\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\tTime Interval: {matchingTimeframe.TimeIntervalDisplay}\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t \r\n\t\t\t\t\t)}\r\n\t\t\t\t \r\n\t\t\t\t)}\r\n\t\t\t
    \r\n\t\t\t);\r\n\t\t }\r\n\t\t return null;\r\n\t\t})\r\n\t )}\r\n\t \r\n\t\r\n );\r\n \r\n \r\nconst TextDisplay = styled.div`\r\npadding: 0 10px;\r\nfont-size: 90%;\r\n`;\r\nconst styles: { [key: string]: React.CSSProperties } = {\r\n\ttableContainer: {\r\n\t\tborderCollapse: 'collapse',\r\n\t},\r\n\theaderCell: {\r\n\t\tborder: '0.5px solid #ddd',\r\n\t\tpadding: '4px',\r\n\t\ttextAlign: 'left',\r\n\t\tverticalAlign: 'top',\r\n\t\tbackgroundColor: '#DCFAF9',\r\n\t\twidth: '550px',\r\n\t\tfontWeight: 'normal',\r\n\r\n\t},\r\n\tdataCell: {\r\n\t\tborder: '1px solid #ddd',\r\n\t\tpadding: '4px',\r\n\t\ttextAlign: 'left',\r\n\t\tverticalAlign: 'top',\r\n\t\twidth: '550px',\r\n\t},\r\n\tcell: {\r\n\t\tborder: '1px solid #ddd', \r\n\t\tpadding: '4px',\r\n\t\tverticalAlign: 'top',\r\n\t\ttextAlign: 'left',\r\n\t},dropdown: {\r\n\t\twidth: '50%',\r\n\t\tborder: '1px solid #ddd',\r\n\t\tpadding: '4px',\r\n\t\ttextAlign: 'left',\r\n\t\tbackgroundColor: 'white',\r\n\t\tfontSize: 'inherit',\r\n\t\tfontWeight: 'normal',\r\n\t\tborderRadius:'8px'\r\n\t }\r\n};\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_22-Metrics_Blue-Green_High-Res.png';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n Label,\r\n Section,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport connectionsIcon from '../../assets/images/icons/icon-connections-green-blue-01.svg';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport {Metric } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\nimport DisplayPills from '../../components/PillDisplay';\r\nimport SearchPills from '../../components/SearchPills';\r\nimport { isFilled } from '../../validation';\r\nimport { ModalButtonAndWindow } from '../../components/Modal';\r\nimport OutlineList from '../../components/DetailPage/Outline';\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function MetricPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as Metric);\r\n\r\n \r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/Metric/${id}`, (data: Metric) => {\r\n debugger;\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\r\n var typeLabel = widgetGetSingleLabelForText(\"Metric\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t {pageModel.EmploymentDefinition && (\r\n \r\n\t\t\t\t\t\t\t\t\t \r\n \r\n {pageModel.EmploymentDefinition}\r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t {pageModel.EarningsThreshold && (\r\n \r\n\t\t\t\t\t\t\t\t\t \r\n \r\n {pageModel.EarningsThreshold}\r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t {pageModel.EarningsDefinition && (\r\n \r\n\t\t\t\t\t\t\t\t\t \r\n \r\n {pageModel.EarningsDefinition}\r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t {pageModel.Adjustment && (\r\n \r\n\t\t\t\t\t\t\t\t\t \r\n \r\n {pageModel.Adjustment}\r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t{pageModel.LifeCycleStatusType && (\r\n \r\n \r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t {isFilled(pageModel.MetricType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n\t\t\t\t\t\t\t {isFilled(pageModel.IncomeDeterminationType) && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n\r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {pageModel.DataSetProfiles?.Values && \r\n \r\n \r\n }\r\n hideCount={true}\r\n />\r\n \r\n \r\n }\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport aboutIcon from '../../assets/images/icons/icon-about-blue-green-01.svg';\r\nimport pageIcon from '../../assets/images/UpdatedIcons/CE-Icon_12-Industries_Blue-Green_High-Res.png';\r\nimport Banner from '../../components/Banner';\r\nimport { WhiteLink } from '../../components/Banner/styles';\r\nimport AdditionalInformationPageSection from '../../components/DetailPage/AdditionalInformationPageSection';\r\nimport LinkObject from '../../components/DetailPage/LinkObject';\r\nimport RelatedOrganizationPageSection from '../../components/DetailPage/RelatedOrganizationPageSection';\r\nimport {\r\n Description,\r\n Wrapper\r\n} from '../../components/DetailPage/styles';\r\nimport HasAnyFilled from '../../components/HasAnyFilled';\r\nimport LoadingOrError from '../../components/LoadingOrError';\r\nimport PageSection from '../../components/PageSection';\r\nimport PageSectionItem from '../../components/PageSectionItem';\r\nimport { VStack } from '../../components/Stack';\r\nimport { useGet, useMediaQuery } from '../../hooks';\r\nimport { apiUrl, legacySourceUrl } from '../../shared/globals';\r\nimport { theme } from '../../shared/theme';\r\nimport {Industry } from '../../types/external';\r\nimport { detailSectionProperties } from '../../utils';\r\nimport { widgetGetPluralLabelForText, widgetGetSingleLabelForText } from \"../../utils/SiteWidgetizer\";\r\n\r\n\r\n\r\ninterface Props {\r\n id: string;\r\n}\r\n\r\nexport default function IndustryPage(props: RouteComponentProps) {\r\n const id = props.match.params.id;\r\n const [\r\n pageDataIsLoading,\r\n pageDataHasError,\r\n getPageData,\r\n ] = useGet();\r\n const [pageModel, setPageData] = useState({} as Industry);\r\n\r\n \r\n const isMobile = useMediaQuery({\r\n query: `(max-width: ${theme.breakpoint.tabletPortrait})`,\r\n });\r\n\r\n useEffect(() => {\r\n getPageData(`${apiUrl}/Industry/${id}`, (data: Industry) => {\r\n debugger;\r\n setPageData(data);\r\n });\r\n }, [getPageData, id]);\r\n //\r\n\r\n function getSubTitleLink() {\r\n if (pageModel.OwnedByLabel && pageModel.OwnedByLabel.Label) {\r\n return pageModel.OwnedByLabel.URL ?\r\n {pageModel.OwnedByLabel.Label} :\r\n <>{pageModel.OwnedByLabel.Label};\r\n }\r\n return null;\r\n }\r\n\r\n function getLegacyLink() {\r\n if (pageModel.Meta_Id) {\r\n const url = legacySourceUrl + \"/\" + pageModel.BroadType + \"/\" + pageModel.Meta_Id;\r\n const mystyle = {\r\n //color: \"rgba(0,0,0,.01)\",\r\n color: \"transparent\",\r\n //backgroundColor: \"rgba(0,0,0,.01)\",\r\n marginLeft: \"10px\"\r\n };\r\n return <>\r\n Legacy\r\n \r\n\r\n }\r\n return null;\r\n }\r\n\r\n var typeLabel = widgetGetSingleLabelForText(\"Industry\");\r\n\r\n return (\r\n \r\n\r\n Last updated: {pageModel.Meta_LastUpdatedHeader} {getLegacyLink()}\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n\r\n {pageModel.Description && (\r\n \r\n \r\n {pageModel.Description}\r\n \r\n \r\n )}\r\n \r\n\r\n {pageModel.SubjectWebpage &&\r\n \r\n \r\n \r\n }\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n//\r\n","import React, { useEffect, useState } from 'react';\r\nimport {\r\n BrowserRouter as Router,\r\n Switch,\r\n Route,\r\n useLocation,\r\n\tRedirect,\r\n\tuseHistory\r\n} from 'react-router-dom';\r\nimport { createBrowserHistory } from 'history';\r\nimport styled, { ThemeProvider } from 'styled-components/macro';\r\nimport { theme } from './shared/theme';\r\nimport GlobalStyle from './components/GlobalStyle';\r\nimport ReactGA from 'react-ga';\r\n\r\nimport TestPage from './pages/TestPage';\r\nimport HomePage from './pages/HomePage';\r\nimport ReportDataPage from './pages/ReportsDataPage';\r\nimport Header from './components/Header';\r\nimport OrganizationPage from './pages/OrganizationPage';\r\nimport Footer from './components/Footer';\r\nimport SearchPage from './pages/SearchPage';\r\nimport ComparePage from './pages/ComparePage';\r\nimport CompetencyPage from './pages/CompetencyPage';\r\n//Help: what is supposed to be in this import? Only compare related classes?\r\nimport { MainItemBroadType } from './types/internal';\r\nimport { MainQueryType, Filter } from './types/external';\r\nimport CompareSelectedListPanel from './components/CompareSelectedListPanel';\r\nimport { BUCKET_STORAGE, initializeFilterSearchApiUrl, googleAnalyticsID, appURL } from './shared/globals';\r\nimport axios from 'axios';\r\n//import { convertFilterItemToIFilterItem } from './types/converters';\r\nimport { defaultQuery } from './shared/data';\r\nimport CredentialPage from './pages/CredentialPage';\r\nimport AssessmentPage from './pages/AssessmentPage';\r\nimport LearningOpportunityPage from './pages/LearningOpportunityPage';\r\nimport CompetencyFrameworkPage from './pages/CompetencyFrameworkPage';\r\nimport CompetencyFrameworkPageV2 from './pages/CompetencyFrameworkPage/indexv2';\r\nimport ConceptSchemePage from './pages/ConceptSchemePage';\r\nimport PathwayPage from './pages/PathwayPage';\r\nimport PathwayPageV2 from './pages/PathwayPage/indexv2';\r\nimport PathwayPageV3 from './pages/PathwayPage/indexv3';\r\nimport PathwaySetPage from './pages/PathwaySetPage';\r\nimport ResourcesPage from './pages/ResourcesPage';\r\nimport JobPage from './pages/JobPage';\r\nimport OccupationPage from './pages/OccupationPage';\r\n\r\nimport WorkRolePage from './pages/WorkRolePage';\r\nimport TaskPage from './pages/TaskPage';\r\nimport RubricPage from './pages/RubricPage';\r\nimport ScheduledOfferingPage from './pages/ScheduledOfferingPage';\r\nimport SupportServicePage from './pages/SupportServicePage';\r\nimport TransferValuePage from './pages/TransferValuePage';\r\nimport TransferIntermediaryPage from './pages/TransferIntermediaryPage';\r\nimport CollectionPage from './pages/CollectionPage';\r\nimport CollectionPageV2 from './pages/CollectionPage/indexv2';\r\nimport PathwayComponentPage from './pages/PathwayComponentPage/index';\r\nimport CredentialingActionPage from './pages/CredentialingActionPage';\r\n\r\nimport BenchmarkReportPage from './pages/BenchmarkReportPage';\r\nimport WidgetPage from './pages/WidgetPage';\r\nimport WidgetConfigurePage from './pages/WidgetConfigurePage';\r\nimport { fab } from '@fortawesome/free-brands-svg-icons';\r\nimport { fas } from '@fortawesome/free-solid-svg-icons';\r\nimport { library } from '@fortawesome/fontawesome-svg-core';\r\nimport WidgetViewPage from './pages/WidgetViewPage';\r\nimport handleSiteWidgetization from './utils/SiteWidgetizer.js';\r\n\r\nimport ProgressionModelPage from './pages/ProgressionModelPage';\r\nimport DataSetProfilePage from './pages/DataSetProfilePage';\r\nimport OutcomeDataPage from './pages/DataSetProfilePage';\r\nimport MetricPage from './pages/MetricPage';\r\nimport IndustryPage from './pages/IndustryPage';\r\n\r\nimport { updateCurrentQuery } from \"./utils/SearchHelper\";\r\nlibrary.add(fab);\r\nlibrary.add(fas);\r\n\r\nhandleSiteWidgetization();\r\n\r\nconst AppWrapper = styled.div`\r\n display: flex;\r\n max-width: ${(props) => props.theme.maxWidth};\r\n margin: auto;\r\n justify-content: center;\r\n`;\r\n\r\nconst MainContent = styled.div<{ inOffset: boolean }>`\r\n max-width: 100%;\r\n @media (max-width: ${(props) => props.theme.breakpoint.tabletPortrait}) {\r\n max-width: 100%;\r\n }\r\n flex: 1;\r\n`;\r\n\r\nexport interface FilterContext {\r\n [key: string]: Filter[];\r\n}\r\n\r\nexport interface QueryContext {\r\n query: MainQueryType;\r\n updateQuery: (query: MainQueryType) => void;\r\n resetQuery: () => void;\r\n}\r\n\r\nconst emptyFilters = {\r\n organization: [],\r\n credential: [],\r\n assessment: [],\r\n\tcompetencyframework: [],\r\n\tcollection: [],\r\n pathway: [],\r\n pathwayset: [],\r\n learningopportunity: [],\r\n //supportservice: [],\r\n //scheduledoffering: {},\r\n transfervalue: [],\r\n transferintermediary: [],\r\n creddentialingaction:[],\r\n};\r\n\r\nexport const FilterContext = React.createContext(emptyFilters);\r\n\r\nexport const QueryContext = React.createContext({\r\n query: defaultQuery,\r\n updateQuery: () => {},\r\n resetQuery: () => {},\r\n});\r\n\r\n\r\nfunction App() {\r\n const [filters, setFilters] = useState(emptyFilters);\r\n const [query, setQuery] = useState(defaultQuery);\r\n const [showComparePanel, setShowComparePanel] = useState(false);\r\n\r\n function updateQuery(newQuery: MainQueryType) {\r\n setQuery(newQuery);\r\n }\r\n\r\n function resetQuery() {\r\n setQuery(defaultQuery);\r\n }\r\n\r\n useEffect(() => {\r\n const cookies = document.cookie;\r\n if (cookies) {\r\n const crendentialfinder = cookies\r\n .split('; ')\r\n .find((row) => row.startsWith('credentialfinder'));\r\n if (!crendentialfinder) {\r\n window.localStorage.removeItem(BUCKET_STORAGE);\r\n }\r\n } else {\r\n window.localStorage.removeItem(BUCKET_STORAGE);\r\n // set cookies\r\n }\r\n document.cookie = 'credentialfinder=true';\r\n\r\n\t\t//get widget ID\r\n\t\tvar widgetParam = \"\";\r\n\t\tnew URLSearchParams(window.location.search).forEach(function (value, key) {\r\n\t\t\tif (key.toLowerCase() == \"widgetid\") {\r\n\t\t\t\twidgetParam = value;\r\n\t\t\t}\r\n\t\t});\r\n\t\tvar widgetID = (window as any).Widget?.ID || widgetParam;\r\n\r\n // get all filters\r\n function getFilterByBroadType(broadType: string) {\r\n return new Promise(async (resolve, reject) => {\r\n const filterURL = `${initializeFilterSearchApiUrl}/${broadType}` + \"?widgetid=\" + widgetID;\r\n try {\r\n const res = await axios.get(filterURL);\r\n const data = res.data;\r\n if (data.Successful) {\r\n resolve(data.Result?.Filters || []);\r\n } else {\r\n throw data;\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n resolve([]);\r\n }\r\n });\r\n }\r\n\r\n const fetchFilters = [\r\n 'organization',\r\n 'credential',\r\n 'assessment',\r\n 'learningopportunity',\r\n\t\t\t'pathway',\r\n\t\t\t'pathwayset',\r\n 'competencyframework',\r\n 'collection',\r\n 'occupation', 'job', 'workrole','task',\r\n 'credentialingaction',\r\n 'supportservice',\r\n 'scheduledoffering',\r\n 'conceptscheme', 'progressionmodel',\r\n 'outcomedata', 'datasetprofile',\r\n 'transfervalue',\r\n 'transferintermediary', 'rubric',\r\n 'metric',\r\n 'industry' \r\n ].map((broadType) => getFilterByBroadType(broadType));\r\n\r\n //NOTE: the order of the following constants must match the related type from \"fetchFilters \"above\r\n\t\tPromise.all(fetchFilters).then((values) => {\r\n const [\r\n organizationFilter,\r\n credentialFilter,\r\n assessmentFilter,\r\n learningOpportunityFilter,\r\n pathwayFilter,\r\n pathwaySetFilter,\r\n competencyFrameworkFilter,\r\n collectionFilter,\r\n occupationFilter, jobFilter, workRoleFilter,taskFilter,\r\n credentialingActionFilter,\r\n supportServiceFilter,\r\n scheduledOfferingFilter,\r\n conceptSchemeFilter,\r\n progressionModelFilter,\r\n outcomeDataFilter,\r\n blankFilter,\r\n transferValueFilter,\r\n transferIntermediaryFilter,rubricFilter,\r\n metricFilter,\r\n industryFilter\r\n ] = values;\r\n\r\n function convertData(filter: Filter) {\r\n const items = filter.Items;\r\n\t\t\t\tif (items) {\r\n\t\t\t\t\t/*\r\n const itemsWithIdentifier = items.map((item) =>\r\n convertFilterItemToIFilterItem(item),\r\n );\r\n\t\t\t\t\treturn { ...filter, Items: itemsWithIdentifier };\r\n\t\t\t\t\t*/\r\n\t\t\t\t\treturn { ...filter, Items: items };\r\n }\r\n return { ...filter, Items: [] };\r\n }\r\n //debugger;\r\n\t\t\tvar convertedFilters = {\r\n\t\t\t\torganization: organizationFilter.map(convertData),\r\n\t\t\t\tcredential: credentialFilter.map(convertData),\r\n\t\t\t\tassessment: assessmentFilter.map(convertData),\r\n\t\t\t\tlearningopportunity: learningOpportunityFilter.map(convertData),\r\n\t\t\t\tpathway: pathwayFilter.map(convertData),\r\n\t\t\t\tpathwayset: pathwaySetFilter.map(convertData),\r\n\t\t\t\tcompetencyframework: competencyFrameworkFilter.map(convertData),\r\n\t\t\t\tcollection: collectionFilter.map(convertData),\r\n\t\t\t\tscheduledoffering: scheduledOfferingFilter.map(convertData),\r\n\t\t\t\tsupportservice: supportServiceFilter.map(convertData),\r\n\t\t\t\tconceptscheme: conceptSchemeFilter.map(convertData),\r\n\t\t\t\tprogressionmodel: progressionModelFilter.map(convertData),\r\n\t\t\t\toutcomedata: outcomeDataFilter.map(convertData),\r\n\t\t\t\toccupation: occupationFilter.map(convertData),\r\n\t\t\t\tjob: jobFilter.map(convertData),\r\n\t\t\t\ttask: taskFilter.map(convertData),\r\n workrole: workRoleFilter.map(convertData),\r\n credentialingaction: credentialingActionFilter.map(convertData),\r\n\t\t\t\t//21-08-23 mp - uncommented this as filters were needed. \r\n\t\t\t\t//22-04-01 mp - got an undefined error on this?\r\n\t\t\t\t//22-12-06 mp - enabled\r\n\t\t\t\ttransfervalue: transferValueFilter.map(convertData),\r\n\t\t\t\t//??\r\n\t\t\t\ttransferintermediary: transferIntermediaryFilter.map(convertData),\r\n rubric:rubricFilter.map(convertData),\r\n metric:metricFilter.map(convertData),\r\n industry: industryFilter.map(convertData),\r\n\t\t\t};\r\n\r\n\t\t\t(window as any).SearchFilters = convertedFilters;\r\n\t\t\tsetFilters(convertedFilters);\r\n updateCurrentQuery();\r\n });\r\n }, []);\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n \r\n {/* Place all global styles for the application here */}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\tsetShowComparePanel(!showComparePanel)\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\tshowCompareButton={\r\n\t\t\t\t\t\t\t\t\t\t\t\t!showComparePanel\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\tcomparePanel={\r\n\t\t\t\t\t\t\t\t\t\t\t\tshowComparePanel ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetShowComparePanel(false)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t: undefined\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \t\r\n \r\n \r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n\r\n//Google analytics\r\nfunction PageViewTracker() {\r\n\tconst [currentTrackedPage, setCurrentTrackedPage] = useState(\"\");\r\n\t//const browserHistory = useHistory(); //Doesn't seem to work?\r\n\tconst location = useLocation();\r\n\tconst locationPathName = location.pathname;\r\n\r\n\tuseEffect(() => {\r\n\t\tif (appURL == \"https://credentialfinder.org\" && currentTrackedPage != locationPathName) {\r\n\t\t\tsetCurrentTrackedPage(locationPathName);\r\n\t\t\tReactGA.initialize(googleAnalyticsID);\r\n\t\t\tReactGA.set({ page: locationPathName });\r\n\t\t\tconsole.log(\"Page View:\", locationPathName);\r\n\t\t\tReactGA.pageview(locationPathName);\r\n\t\t}\r\n\t}, [locationPathName]);\r\n\r\n\treturn (<>);\r\n}\r\n\r\nfunction ScrollToTop(props: any) {\r\n const location = useLocation();\r\n useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, [location.pathname]);\r\n return props.children;\r\n}\r\n\r\nexport default App;\r\n","import { ReportHandler } from 'web-vitals';\r\n\r\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport App from './App';\r\nimport reportWebVitals from './reportWebVitals';\r\n\r\nReactDOM.render(\r\n \r\n \r\n ,\r\n document.getElementById('root'),\r\n);\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n"],"sourceRoot":""}