|
| 1 | +import { SEARCH_QUERY_VALUE_PARAM, SearchSegment } from '@/common/constants/search.constants'; |
| 2 | +import { SearchableIndex, SearchableIndexQuerySelector } from '@/common/constants/searchableIndex.constants'; |
| 3 | + |
| 4 | +export const AUTHORITIES_LOC_CHILDREN_SEARCHABLE_INDICES_MAP: SearchableIndicesMap = { |
| 5 | + [SearchSegment.Search]: { |
| 6 | + [SearchableIndex.Keyword]: { |
| 7 | + [SearchableIndexQuerySelector.Query]: `((keyword=="${SEARCH_QUERY_VALUE_PARAM}" or naturalId="${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 8 | + }, |
| 9 | + [SearchableIndex.Identifier]: { |
| 10 | + [SearchableIndexQuerySelector.Query]: `(((identifiers.value=="${SEARCH_QUERY_VALUE_PARAM}" or naturalId="${SEARCH_QUERY_VALUE_PARAM}") and authRefType=="Authorized") and subjectHeadings=="b")`, |
| 11 | + }, |
| 12 | + [SearchableIndex.LCCN]: { |
| 13 | + [SearchableIndexQuerySelector.Query]: `(lccn=="${SEARCH_QUERY_VALUE_PARAM}" and subjectHeadings=="b")`, |
| 14 | + }, |
| 15 | + [SearchableIndex.PersonalName]: { |
| 16 | + [SearchableIndexQuerySelector.Query]: `((personalName all "${SEARCH_QUERY_VALUE_PARAM}" or sftPersonalName all "${SEARCH_QUERY_VALUE_PARAM}" or saftPersonalName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 17 | + }, |
| 18 | + [SearchableIndex.CorporateConferenceName]: { |
| 19 | + [SearchableIndexQuerySelector.Query]: `((corporateName all "${SEARCH_QUERY_VALUE_PARAM}" or sftCorporateName all "${SEARCH_QUERY_VALUE_PARAM}" or saftCorporateName all "${SEARCH_QUERY_VALUE_PARAM}" or meetingName all "${SEARCH_QUERY_VALUE_PARAM}" or sftMeetingName all "${SEARCH_QUERY_VALUE_PARAM}" or saftMeetingName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 20 | + }, |
| 21 | + [SearchableIndex.GeographicName]: { |
| 22 | + [SearchableIndexQuerySelector.Query]: `((geographicName all "${SEARCH_QUERY_VALUE_PARAM}" or sftGeographicName all "${SEARCH_QUERY_VALUE_PARAM}" or saftGeographicName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 23 | + }, |
| 24 | + [SearchableIndex.NameTitle]: { |
| 25 | + [SearchableIndexQuerySelector.Query]: `((personalNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or sftPersonalNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or saftPersonalNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or corporateNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or sftCorporateNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or saftCorporateNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or meetingNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or sftMeetingNameTitle all "${SEARCH_QUERY_VALUE_PARAM}" or saftMeetingNameTitle all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 26 | + }, |
| 27 | + [SearchableIndex.UniformTitle]: { |
| 28 | + [SearchableIndexQuerySelector.Query]: `((uniformTitle all "${SEARCH_QUERY_VALUE_PARAM}" or sftUniformTitle all "${SEARCH_QUERY_VALUE_PARAM}" or saftUniformTitle all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 29 | + }, |
| 30 | + [SearchableIndex.Subject]: { |
| 31 | + [SearchableIndexQuerySelector.Query]: `((topicalTerm all "${SEARCH_QUERY_VALUE_PARAM}" or sftTopicalTerm all "${SEARCH_QUERY_VALUE_PARAM}" or saftTopicalTerm all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 32 | + }, |
| 33 | + [SearchableIndex.ChildrenSubjectHeading]: { |
| 34 | + [SearchableIndexQuerySelector.Query]: `((keyword all "${SEARCH_QUERY_VALUE_PARAM}" or naturalId="${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 35 | + }, |
| 36 | + [SearchableIndex.Genre]: { |
| 37 | + [SearchableIndexQuerySelector.Query]: `((genreTerm all "${SEARCH_QUERY_VALUE_PARAM}" or sftGenreTerm all "${SEARCH_QUERY_VALUE_PARAM}" or saftGenreTerm all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b"`, |
| 38 | + }, |
| 39 | + // Combined authority page options |
| 40 | + [SearchableIndex.Person]: { |
| 41 | + [SearchableIndexQuerySelector.Query]: `((personalName all "${SEARCH_QUERY_VALUE_PARAM}" or sftPersonalName all "${SEARCH_QUERY_VALUE_PARAM}" or saftPersonalName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 42 | + }, |
| 43 | + [SearchableIndex.Family]: { |
| 44 | + [SearchableIndexQuerySelector.Query]: `((personalName all "${SEARCH_QUERY_VALUE_PARAM}" or sftPersonalName all "${SEARCH_QUERY_VALUE_PARAM}" or saftPersonalName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 45 | + }, |
| 46 | + [SearchableIndex.Organization]: { |
| 47 | + [SearchableIndexQuerySelector.Query]: `((corporateName all "${SEARCH_QUERY_VALUE_PARAM}" or sftCorporateName all "${SEARCH_QUERY_VALUE_PARAM}" or saftCorporateName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 48 | + }, |
| 49 | + [SearchableIndex.Meeting]: { |
| 50 | + [SearchableIndexQuerySelector.Query]: `((meetingName all "${SEARCH_QUERY_VALUE_PARAM}" or sftMeetingName all "${SEARCH_QUERY_VALUE_PARAM}" or saftMeetingName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 51 | + }, |
| 52 | + [SearchableIndex.Place]: { |
| 53 | + [SearchableIndexQuerySelector.Query]: `((geographicName all "${SEARCH_QUERY_VALUE_PARAM}" or sftGeographicName all "${SEARCH_QUERY_VALUE_PARAM}" or saftGeographicName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 54 | + }, |
| 55 | + [SearchableIndex.Form]: { |
| 56 | + [SearchableIndexQuerySelector.Query]: `((genreTerm all "${SEARCH_QUERY_VALUE_PARAM}" or sftGenreTerm all "${SEARCH_QUERY_VALUE_PARAM}" or saftGenreTerm all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 57 | + }, |
| 58 | + [SearchableIndex.ComplexSubject]: { |
| 59 | + [SearchableIndexQuerySelector.Query]: `((complexSubjectTerm all "${SEARCH_QUERY_VALUE_PARAM}" or sftComplexSubjectTerm all "${SEARCH_QUERY_VALUE_PARAM}" or saftComplexSubjectTerm all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 60 | + }, |
| 61 | + [SearchableIndex.Topic]: { |
| 62 | + [SearchableIndexQuerySelector.Query]: `((topicalTerm all "${SEARCH_QUERY_VALUE_PARAM}" or sftTopicalTerm all "${SEARCH_QUERY_VALUE_PARAM}" or saftTopicalTerm all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 63 | + }, |
| 64 | + [SearchableIndex.Temporal]: { |
| 65 | + [SearchableIndexQuerySelector.Query]: `((temporalTerm all "${SEARCH_QUERY_VALUE_PARAM}" or sftTemporalTerm all "${SEARCH_QUERY_VALUE_PARAM}" or saftTemporalTerm all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 66 | + }, |
| 67 | + [SearchableIndex.Jurisdiction]: { |
| 68 | + [SearchableIndexQuerySelector.Query]: `((corporateName all "${SEARCH_QUERY_VALUE_PARAM}" or sftCorporateName all "${SEARCH_QUERY_VALUE_PARAM}" or saftCorporateName all "${SEARCH_QUERY_VALUE_PARAM}") and subjectHeadings=="b")`, |
| 69 | + }, |
| 70 | + }, |
| 71 | + // TODO: change the type to get rid of this old "Search" and "Browse" structure. |
| 72 | + [SearchSegment.Browse]: {}, |
| 73 | +}; |
0 commit comments