@studyportals/fawkes 7.4.2-2 → 8.0.1-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +176 -176
- package/package.json +2 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/organisations-seo/index.d.ts +0 -4
- package/dist/organisations-seo/index.js +0 -2
- package/dist/programmes-seo/index.d.ts +0 -6
- package/dist/programmes-seo/index.js +0 -2
- package/dist/scholarships-seo/index.d.ts +0 -5
- package/dist/scholarships-seo/index.js +0 -3
- package/dist/sitemap-generator-seo/index.d.ts +0 -13
- package/dist/sitemap-generator-seo/index.js +0 -4
- package/dist/src/common/FilterKeyValuesMap.d.ts +0 -2
- package/dist/src/common/FilterKeyValuesMap.js +0 -1
- package/dist/src/common/IDependencies.d.ts +0 -4
- package/dist/src/common/IDependencies.js +0 -1
- package/dist/src/common/IDocumentationManager.d.ts +0 -5
- package/dist/src/common/IDocumentationManager.js +0 -1
- package/dist/src/common/IPresenter.d.ts +0 -6
- package/dist/src/common/IPresenter.js +0 -1
- package/dist/src/common/IRule.d.ts +0 -8
- package/dist/src/common/IRule.js +0 -1
- package/dist/src/common/ISearchApplicationState.d.ts +0 -4
- package/dist/src/common/ISearchApplicationState.js +0 -1
- package/dist/src/common/ISearchDependencies.d.ts +0 -7
- package/dist/src/common/ISearchDependencies.js +0 -1
- package/dist/src/common/ISearchIndexabilityManager.d.ts +0 -4
- package/dist/src/common/ISearchIndexabilityManager.js +0 -1
- package/dist/src/common/ISeoDependencies.d.ts +0 -3
- package/dist/src/common/ISeoDependencies.js +0 -1
- package/dist/src/common/ISeoFilterState.d.ts +0 -5
- package/dist/src/common/ISeoFilterState.js +0 -1
- package/dist/src/common/ISeoIndexabilityPolicy.d.ts +0 -7
- package/dist/src/common/ISeoIndexabilityPolicy.js +0 -1
- package/dist/src/common/ISeoInfoBase.d.ts +0 -8
- package/dist/src/common/ISeoInfoBase.js +0 -1
- package/dist/src/common/ISitemapDependencies.d.ts +0 -5
- package/dist/src/common/ISitemapDependencies.js +0 -1
- package/dist/src/common/ISitemapUrlGenerator.d.ts +0 -7
- package/dist/src/common/ISitemapUrlGenerator.js +0 -1
- package/dist/src/common/index.d.ts +0 -5
- package/dist/src/common/index.js +0 -5
- package/dist/src/common/policies/BaseSeoIndexabilityPolicy.d.ts +0 -26
- package/dist/src/common/policies/BaseSeoIndexabilityPolicy.js +0 -56
- package/dist/src/common/rules/BaseFilterKeyValueRule.d.ts +0 -11
- package/dist/src/common/rules/BaseFilterKeyValueRule.js +0 -28
- package/dist/src/common/rules/IndexablePageNumberRule.d.ts +0 -9
- package/dist/src/common/rules/IndexablePageNumberRule.js +0 -17
- package/dist/src/common/rules/NoFiltersSelectedRule.d.ts +0 -9
- package/dist/src/common/rules/NoFiltersSelectedRule.js +0 -17
- package/dist/src/common/rules/OnlineAttendanceRule.d.ts +0 -6
- package/dist/src/common/rules/OnlineAttendanceRule.js +0 -14
- package/dist/src/common/rules/OnlyFiltersSelectedRule.d.ts +0 -12
- package/dist/src/common/rules/OnlyFiltersSelectedRule.js +0 -30
- package/dist/src/common/rules/SingleValueSelectedForFilterRule.d.ts +0 -12
- package/dist/src/common/rules/SingleValueSelectedForFilterRule.js +0 -24
- package/dist/src/enums/AttendanceFilterOptionValue.d.ts +0 -5
- package/dist/src/enums/AttendanceFilterOptionValue.js +0 -6
- package/dist/src/enums/DegreeTypeFilterOptionValue.d.ts +0 -29
- package/dist/src/enums/DegreeTypeFilterOptionValue.js +0 -30
- package/dist/src/enums/DependencyTypes.d.ts +0 -4
- package/dist/src/enums/DependencyTypes.js +0 -5
- package/dist/src/enums/DurationFilterOptionValue.d.ts +0 -16
- package/dist/src/enums/DurationFilterOptionValue.js +0 -17
- package/dist/src/enums/EducationalFormFilterOptionValue.d.ts +0 -8
- package/dist/src/enums/EducationalFormFilterOptionValue.js +0 -9
- package/dist/src/enums/FilterCombinations.d.ts +0 -52
- package/dist/src/enums/FilterCombinations.js +0 -53
- package/dist/src/enums/FilterKey.d.ts +0 -21
- package/dist/src/enums/FilterKey.js +0 -22
- package/dist/src/enums/FormatFilterOptionValue.d.ts +0 -4
- package/dist/src/enums/FormatFilterOptionValue.js +0 -5
- package/dist/src/enums/SortingOptions.d.ts +0 -4
- package/dist/src/enums/SortingOptions.js +0 -5
- package/dist/src/enums/SpecialProgrammesFilterOptionValue.d.ts +0 -5
- package/dist/src/enums/SpecialProgrammesFilterOptionValue.js +0 -6
- package/dist/src/enums/TuitionFeeFilterOptionValue.d.ts +0 -3
- package/dist/src/enums/TuitionFeeFilterOptionValue.js +0 -4
- package/dist/src/errors/DependencyMissingError.d.ts +0 -3
- package/dist/src/errors/DependencyMissingError.js +0 -5
- package/dist/src/errors/InvalidDependencyTypeError.d.ts +0 -3
- package/dist/src/errors/InvalidDependencyTypeError.js +0 -5
- package/dist/src/errors/InvalidFilterValueError.d.ts +0 -4
- package/dist/src/errors/InvalidFilterValueError.js +0 -5
- package/dist/src/organisations/IOrganisationSearchApplicationState.d.ts +0 -5
- package/dist/src/organisations/IOrganisationSearchApplicationState.js +0 -1
- package/dist/src/organisations/ISeoSortingState.d.ts +0 -4
- package/dist/src/organisations/ISeoSortingState.js +0 -1
- package/dist/src/organisations/SearchIndexabilityManager.d.ts +0 -12
- package/dist/src/organisations/SearchIndexabilityManager.js +0 -42
- package/dist/src/organisations/index.d.ts +0 -4
- package/dist/src/organisations/index.js +0 -4
- package/dist/src/organisations/policies/OrganisationsSeoIndexabilityPolicy.d.ts +0 -17
- package/dist/src/organisations/policies/OrganisationsSeoIndexabilityPolicy.js +0 -33
- package/dist/src/organisations/policies/RankedOrganisationsSeoIndexabilityPolicy.d.ts +0 -9
- package/dist/src/organisations/policies/RankedOrganisationsSeoIndexabilityPolicy.js +0 -22
- package/dist/src/organisations/policies/index.d.ts +0 -18
- package/dist/src/organisations/policies/index.js +0 -18
- package/dist/src/organisations/policies/our-picks/Area.d.ts +0 -13
- package/dist/src/organisations/policies/our-picks/Area.js +0 -35
- package/dist/src/organisations/policies/our-picks/AreaAttendance.d.ts +0 -15
- package/dist/src/organisations/policies/our-picks/AreaAttendance.js +0 -45
- package/dist/src/organisations/policies/our-picks/Attendance.d.ts +0 -14
- package/dist/src/organisations/policies/our-picks/Attendance.js +0 -33
- package/dist/src/organisations/policies/our-picks/Continent.d.ts +0 -13
- package/dist/src/organisations/policies/our-picks/Continent.js +0 -31
- package/dist/src/organisations/policies/our-picks/Country.d.ts +0 -13
- package/dist/src/organisations/policies/our-picks/Country.js +0 -28
- package/dist/src/organisations/policies/our-picks/CountryAttendance.d.ts +0 -15
- package/dist/src/organisations/policies/our-picks/CountryAttendance.js +0 -43
- package/dist/src/organisations/policies/our-picks/Unfiltered.d.ts +0 -12
- package/dist/src/organisations/policies/our-picks/Unfiltered.js +0 -16
- package/dist/src/organisations/policies/ranked/RankedArea.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedArea.js +0 -37
- package/dist/src/organisations/policies/ranked/RankedAreaDiscipline.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedAreaDiscipline.js +0 -45
- package/dist/src/organisations/policies/ranked/RankedAttendance.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedAttendance.js +0 -35
- package/dist/src/organisations/policies/ranked/RankedAttendanceDiscipline.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedAttendanceDiscipline.js +0 -43
- package/dist/src/organisations/policies/ranked/RankedContinent.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedContinent.js +0 -33
- package/dist/src/organisations/policies/ranked/RankedContinentAttendance.d.ts +0 -15
- package/dist/src/organisations/policies/ranked/RankedContinentAttendance.js +0 -45
- package/dist/src/organisations/policies/ranked/RankedCountry.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedCountry.js +0 -30
- package/dist/src/organisations/policies/ranked/RankedCountryAttendance.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedCountryAttendance.js +0 -43
- package/dist/src/organisations/policies/ranked/RankedCountryDiscipline.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedCountryDiscipline.js +0 -41
- package/dist/src/organisations/policies/ranked/RankedDiscipline.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedDiscipline.js +0 -33
- package/dist/src/organisations/policies/ranked/RankedUnfiltered.d.ts +0 -12
- package/dist/src/organisations/policies/ranked/RankedUnfiltered.js +0 -22
- package/dist/src/organisations/rules/AtLeastTwoRankedResultsRule.d.ts +0 -13
- package/dist/src/organisations/rules/AtLeastTwoRankedResultsRule.js +0 -26
- package/dist/src/organisations/rules/BaseSearchVolumeOrganisationsRule.d.ts +0 -14
- package/dist/src/organisations/rules/BaseSearchVolumeOrganisationsRule.js +0 -33
- package/dist/src/organisations/rules/ContinentIsEuropeRule.d.ts +0 -6
- package/dist/src/organisations/rules/ContinentIsEuropeRule.js +0 -15
- package/dist/src/organisations/rules/NoFiltersSelectedRule.d.ts +0 -9
- package/dist/src/organisations/rules/NoFiltersSelectedRule.js +0 -17
- package/dist/src/organisations/rules/SearchVolumeAreasAttendanceRule.d.ts +0 -6
- package/dist/src/organisations/rules/SearchVolumeAreasAttendanceRule.js +0 -17
- package/dist/src/organisations/rules/SearchVolumeAreasDisciplineRule.d.ts +0 -6
- package/dist/src/organisations/rules/SearchVolumeAreasDisciplineRule.js +0 -18
- package/dist/src/organisations/rules/SearchVolumeCountriesAttendanceRule.d.ts +0 -6
- package/dist/src/organisations/rules/SearchVolumeCountriesAttendanceRule.js +0 -17
- package/dist/src/organisations/types/IOrganisationSearchDependencies.d.ts +0 -9
- package/dist/src/organisations/types/IOrganisationSearchDependencies.js +0 -1
- package/dist/src/organisations/types/IOrganisationsSeoDependencies.d.ts +0 -3
- package/dist/src/organisations/types/IOrganisationsSeoDependencies.js +0 -1
- package/dist/src/organisations/types/IOrganisationsSitemapDependencies.d.ts +0 -9
- package/dist/src/organisations/types/IOrganisationsSitemapDependencies.js +0 -1
- package/dist/src/organisations/types.d.ts +0 -6
- package/dist/src/organisations/types.js +0 -6
- package/dist/src/presenters/AreaPresenter.d.ts +0 -12
- package/dist/src/presenters/AreaPresenter.js +0 -35
- package/dist/src/presenters/AttendancePresenter.d.ts +0 -11
- package/dist/src/presenters/AttendancePresenter.js +0 -23
- package/dist/src/presenters/ContinentPresenter.d.ts +0 -12
- package/dist/src/presenters/ContinentPresenter.js +0 -33
- package/dist/src/presenters/CountryPresenter.d.ts +0 -12
- package/dist/src/presenters/CountryPresenter.js +0 -38
- package/dist/src/presenters/DegreePresenter.d.ts +0 -12
- package/dist/src/presenters/DegreePresenter.js +0 -51
- package/dist/src/presenters/DisciplinePresenter.d.ts +0 -12
- package/dist/src/presenters/DisciplinePresenter.js +0 -33
- package/dist/src/presenters/DurationPresenter.d.ts +0 -16
- package/dist/src/presenters/DurationPresenter.js +0 -48
- package/dist/src/presenters/EducationalFormPresenter.d.ts +0 -12
- package/dist/src/presenters/EducationalFormPresenter.js +0 -46
- package/dist/src/presenters/FormatPresenter.d.ts +0 -11
- package/dist/src/presenters/FormatPresenter.js +0 -25
- package/dist/src/presenters/SpecialProgrammesPresenter.d.ts +0 -11
- package/dist/src/presenters/SpecialProgrammesPresenter.js +0 -28
- package/dist/src/presenters/TuitionFeePresenter.d.ts +0 -11
- package/dist/src/presenters/TuitionFeePresenter.js +0 -24
- package/dist/src/presenters/fragments/IAreaFragment.d.ts +0 -4
- package/dist/src/presenters/fragments/IAreaFragment.js +0 -1
- package/dist/src/presenters/fragments/ICountryFragment.d.ts +0 -4
- package/dist/src/presenters/fragments/ICountryFragment.js +0 -1
- package/dist/src/presenters/fragments/IFragment.d.ts +0 -4
- package/dist/src/presenters/fragments/IFragment.js +0 -1
- package/dist/src/programmes/BaseProgrammeFilterKeyValueRule.d.ts +0 -6
- package/dist/src/programmes/BaseProgrammeFilterKeyValueRule.js +0 -6
- package/dist/src/programmes/BaseProgrammeRule.d.ts +0 -10
- package/dist/src/programmes/BaseProgrammeRule.js +0 -5
- package/dist/src/programmes/IProgrammeRule.d.ts +0 -5
- package/dist/src/programmes/IProgrammeRule.js +0 -1
- package/dist/src/programmes/ProgrammesBaseIndexabilityPolicy.d.ts +0 -15
- package/dist/src/programmes/ProgrammesBaseIndexabilityPolicy.js +0 -42
- package/dist/src/programmes/SearchIndexabilityManager.d.ts +0 -12
- package/dist/src/programmes/SearchIndexabilityManager.js +0 -58
- package/dist/src/programmes/policies/Area.d.ts +0 -15
- package/dist/src/programmes/policies/Area.js +0 -40
- package/dist/src/programmes/policies/Attendance.d.ts +0 -16
- package/dist/src/programmes/policies/Attendance.js +0 -38
- package/dist/src/programmes/policies/AttendanceDegree.d.ts +0 -17
- package/dist/src/programmes/policies/AttendanceDegree.js +0 -48
- package/dist/src/programmes/policies/Continent.d.ts +0 -15
- package/dist/src/programmes/policies/Continent.js +0 -36
- package/dist/src/programmes/policies/ContinentTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/ContinentTuitionFee.js +0 -46
- package/dist/src/programmes/policies/Country.d.ts +0 -15
- package/dist/src/programmes/policies/Country.js +0 -33
- package/dist/src/programmes/policies/CountryAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/CountryAttendance.js +0 -46
- package/dist/src/programmes/policies/CountryAttendanceDegree.d.ts +0 -17
- package/dist/src/programmes/policies/CountryAttendanceDegree.js +0 -55
- package/dist/src/programmes/policies/CountryDegree.d.ts +0 -16
- package/dist/src/programmes/policies/CountryDegree.js +0 -46
- package/dist/src/programmes/policies/CountryDuration.d.ts +0 -16
- package/dist/src/programmes/policies/CountryDuration.js +0 -46
- package/dist/src/programmes/policies/CountryDurationDegree.d.ts +0 -17
- package/dist/src/programmes/policies/CountryDurationDegree.js +0 -55
- package/dist/src/programmes/policies/CountryEducationalForm.d.ts +0 -16
- package/dist/src/programmes/policies/CountryEducationalForm.js +0 -47
- package/dist/src/programmes/policies/CountryFormat.d.ts +0 -16
- package/dist/src/programmes/policies/CountryFormat.js +0 -46
- package/dist/src/programmes/policies/CountryTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/CountryTuitionFee.js +0 -46
- package/dist/src/programmes/policies/Degree.d.ts +0 -15
- package/dist/src/programmes/policies/Degree.js +0 -38
- package/dist/src/programmes/policies/DegreeAttendanceDiscipline.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeAttendanceDiscipline.js +0 -63
- package/dist/src/programmes/policies/DegreeCountryAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeCountryAttendance.js +0 -88
- package/dist/src/programmes/policies/DegreeCountryDiscipline.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeCountryDiscipline.js +0 -71
- package/dist/src/programmes/policies/DegreeCountryTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeCountryTuitionFee.js +0 -73
- package/dist/src/programmes/policies/Discipline.d.ts +0 -15
- package/dist/src/programmes/policies/Discipline.js +0 -36
- package/dist/src/programmes/policies/DisciplineArea.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineArea.js +0 -46
- package/dist/src/programmes/policies/DisciplineAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineAttendance.js +0 -46
- package/dist/src/programmes/policies/DisciplineContinent.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineContinent.js +0 -44
- package/dist/src/programmes/policies/DisciplineCountry.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineCountry.js +0 -44
- package/dist/src/programmes/policies/DisciplineCountryEducationalForm.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineCountryEducationalForm.js +0 -53
- package/dist/src/programmes/policies/DisciplineDegree.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineDegree.js +0 -46
- package/dist/src/programmes/policies/DisciplineDuration.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineDuration.js +0 -46
- package/dist/src/programmes/policies/DisciplineEducationalForm.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineEducationalForm.js +0 -47
- package/dist/src/programmes/policies/DisciplineFormat.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineFormat.js +0 -46
- package/dist/src/programmes/policies/DisciplineTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineTuitionFee.js +0 -46
- package/dist/src/programmes/policies/DisciplineTuitionFeeAttendance.d.ts +0 -17
- package/dist/src/programmes/policies/DisciplineTuitionFeeAttendance.js +0 -54
- package/dist/src/programmes/policies/SpecialProgrammes.d.ts +0 -16
- package/dist/src/programmes/policies/SpecialProgrammes.js +0 -38
- package/dist/src/programmes/policies/TuitionFee.d.ts +0 -15
- package/dist/src/programmes/policies/TuitionFee.js +0 -32
- package/dist/src/programmes/policies/Unfiltered.d.ts +0 -13
- package/dist/src/programmes/policies/Unfiltered.js +0 -19
- package/dist/src/programmes/policies/index.d.ts +0 -34
- package/dist/src/programmes/policies/index.js +0 -34
- package/dist/src/programmes/rules/AffordableTuitionFeeRule.d.ts +0 -6
- package/dist/src/programmes/rules/AffordableTuitionFeeRule.js +0 -17
- package/dist/src/programmes/rules/AtLeastSevenResultsRule.d.ts +0 -15
- package/dist/src/programmes/rules/AtLeastSevenResultsRule.js +0 -30
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineRule.js +0 -44
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineSpecificRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineSpecificRule.js +0 -39
- package/dist/src/programmes/rules/DegreeCountryAttendanceSpecificRule.d.ts +0 -14
- package/dist/src/programmes/rules/DegreeCountryAttendanceSpecificRule.js +0 -77
- package/dist/src/programmes/rules/DegreeCountryDisciplineSpecificRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeCountryDisciplineSpecificRule.js +0 -76
- package/dist/src/programmes/rules/DegreeCountryTuitionFeeSpecificRule.d.ts +0 -12
- package/dist/src/programmes/rules/DegreeCountryTuitionFeeSpecificRule.js +0 -62
- package/dist/src/programmes/rules/DegreeDisciplineRule.d.ts +0 -16
- package/dist/src/programmes/rules/DegreeDisciplineRule.js +0 -189
- package/dist/src/programmes/rules/ErasmusOrJointSpecialProgrammesRule.d.ts +0 -9
- package/dist/src/programmes/rules/ErasmusOrJointSpecialProgrammesRule.js +0 -28
- package/dist/src/programmes/rules/IndexableDegreeRule.d.ts +0 -10
- package/dist/src/programmes/rules/IndexableDegreeRule.js +0 -53
- package/dist/src/programmes/rules/IndexableDurationRule.d.ts +0 -12
- package/dist/src/programmes/rules/IndexableDurationRule.js +0 -37
- package/dist/src/programmes/rules/IndexableEducationalFormRule.d.ts +0 -10
- package/dist/src/programmes/rules/IndexableEducationalFormRule.js +0 -34
- package/dist/src/programmes/rules/IndexablePageNumberRule.d.ts +0 -9
- package/dist/src/programmes/rules/IndexablePageNumberRule.js +0 -17
- package/dist/src/programmes/rules/MbaDegreeRule.d.ts +0 -6
- package/dist/src/programmes/rules/MbaDegreeRule.js +0 -15
- package/dist/src/programmes/rules/MbaOrMscDegreeRule.d.ts +0 -9
- package/dist/src/programmes/rules/MbaOrMscDegreeRule.js +0 -26
- package/dist/src/programmes/rules/NotDistanceLearningPortalRule.d.ts +0 -11
- package/dist/src/programmes/rules/NotDistanceLearningPortalRule.js +0 -28
- package/dist/src/programmes/rules/OneYearDurationRule.d.ts +0 -6
- package/dist/src/programmes/rules/OneYearDurationRule.js +0 -15
- package/dist/src/programmes/rules/PartTimeFormatRule.d.ts +0 -6
- package/dist/src/programmes/rules/PartTimeFormatRule.js +0 -15
- package/dist/src/programmes/types/IProgrammeSearchApplicationState.d.ts +0 -4
- package/dist/src/programmes/types/IProgrammeSearchApplicationState.js +0 -1
- package/dist/src/programmes/types/IProgrammeSearchDependencies.d.ts +0 -7
- package/dist/src/programmes/types/IProgrammeSearchDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSearchSitemapDependencies.d.ts +0 -5
- package/dist/src/programmes/types/IProgrammeSearchSitemapDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSeoDependencies.d.ts +0 -3
- package/dist/src/programmes/types/IProgrammeSeoDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSitemapDependencies.d.ts +0 -7
- package/dist/src/programmes/types/IProgrammeSitemapDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSitemapUrlGenerator.d.ts +0 -5
- package/dist/src/programmes/types/IProgrammeSitemapUrlGenerator.js +0 -1
- package/dist/src/scholarships/SearchIndexabilityManager.d.ts +0 -11
- package/dist/src/scholarships/SearchIndexabilityManager.js +0 -33
- package/dist/src/scholarships/index.d.ts +0 -3
- package/dist/src/scholarships/index.js +0 -3
- package/dist/src/scholarships/policies/Area.d.ts +0 -13
- package/dist/src/scholarships/policies/Area.js +0 -37
- package/dist/src/scholarships/policies/Country.d.ts +0 -12
- package/dist/src/scholarships/policies/Country.js +0 -31
- package/dist/src/scholarships/policies/Discipline.d.ts +0 -12
- package/dist/src/scholarships/policies/Discipline.js +0 -31
- package/dist/src/scholarships/policies/DisciplineCountry.d.ts +0 -12
- package/dist/src/scholarships/policies/DisciplineCountry.js +0 -39
- package/dist/src/scholarships/policies/ScholarshipSeoIndexabilityPolicy.d.ts +0 -7
- package/dist/src/scholarships/policies/ScholarshipSeoIndexabilityPolicy.js +0 -7
- package/dist/src/scholarships/policies/Unfiltered.d.ts +0 -10
- package/dist/src/scholarships/policies/Unfiltered.js +0 -16
- package/dist/src/scholarships/policies/UniversityCountry.d.ts +0 -11
- package/dist/src/scholarships/policies/UniversityCountry.js +0 -41
- package/dist/src/scholarships/rules/ExceptAustaliaAreasRule.d.ts +0 -14
- package/dist/src/scholarships/rules/ExceptAustaliaAreasRule.js +0 -42
- package/dist/src/scholarships/rules/SearchVolumeAreasRule.d.ts +0 -12
- package/dist/src/scholarships/rules/SearchVolumeAreasRule.js +0 -32
- package/dist/src/scholarships/rules/SearchVolumeCountriesDisciplinesRule.d.ts +0 -14
- package/dist/src/scholarships/rules/SearchVolumeCountriesDisciplinesRule.js +0 -43
- package/dist/src/scholarships/rules/SearchVolumeCountriesRule.d.ts +0 -12
- package/dist/src/scholarships/rules/SearchVolumeCountriesRule.js +0 -32
- package/dist/src/scholarships/rules/SearchVolumeDisciplinesRule.d.ts +0 -12
- package/dist/src/scholarships/rules/SearchVolumeDisciplinesRule.js +0 -32
- package/dist/src/scholarships/rules/files/search-volume.json +0 -39334
- package/dist/src/scholarships/types/IScholarshipSeoDependencies.d.ts +0 -3
- package/dist/src/scholarships/types/IScholarshipSeoDependencies.js +0 -1
- package/dist/src/scholarships/types/IScholarshipSitemapDependencies.d.ts +0 -5
- package/dist/src/scholarships/types/IScholarshipSitemapDependencies.js +0 -1
- package/dist/src/scholarships/types.d.ts +0 -5
- package/dist/src/scholarships/types.js +0 -5
- package/dist/src/sitemap-generator/BaseSitemapUrlGeneratorManager.d.ts +0 -14
- package/dist/src/sitemap-generator/BaseSitemapUrlGeneratorManager.js +0 -26
- package/dist/src/sitemap-generator/IOrganisation.d.ts +0 -6
- package/dist/src/sitemap-generator/IOrganisation.js +0 -1
- package/dist/src/sitemap-generator/IOrganisationsClient.d.ts +0 -4
- package/dist/src/sitemap-generator/IOrganisationsClient.js +0 -1
- package/dist/src/sitemap-generator/IRankingApiClient.d.ts +0 -4
- package/dist/src/sitemap-generator/IRankingApiClient.js +0 -1
- package/dist/src/sitemap-generator/ISearchApiClient.d.ts +0 -5
- package/dist/src/sitemap-generator/ISearchApiClient.js +0 -1
- package/dist/src/sitemap-generator/ISitemapUrlGeneratorManager.d.ts +0 -9
- package/dist/src/sitemap-generator/ISitemapUrlGeneratorManager.js +0 -1
- package/dist/src/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.d.ts +0 -14
- package/dist/src/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.js +0 -51
- package/dist/src/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.d.ts +0 -12
- package/dist/src/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.js +0 -77
- package/dist/src/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.d.ts +0 -9
- package/dist/src/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.js +0 -28
- package/dist/src/sitemap-generator/index.d.ts +0 -0
- package/dist/src/sitemap-generator/index.js +0 -1
- package/dist/src/structured-data/ProgrammeStructuredDataFactory.d.ts +0 -18
- package/dist/src/structured-data/ProgrammeStructuredDataFactory.js +0 -91
- package/dist/src/structured-data/SearchStructuredDataFactory.d.ts +0 -34
- package/dist/src/structured-data/SearchStructuredDataFactory.js +0 -144
- package/dist/src/structured-data/dto/BreadcrumbDTO.d.ts +0 -5
- package/dist/src/structured-data/dto/BreadcrumbDTO.js +0 -1
- package/dist/src/structured-data/dto/EntityDTO.d.ts +0 -7
- package/dist/src/structured-data/dto/EntityDTO.js +0 -1
- package/dist/src/structured-data/dto/FAQItemDto.d.ts +0 -4
- package/dist/src/structured-data/dto/FAQItemDto.js +0 -1
- package/dist/src/structured-data/dto/OfferDTO.d.ts +0 -5
- package/dist/src/structured-data/dto/OfferDTO.js +0 -1
- package/dist/src/structured-data/dto/ReviewRatingDTO.d.ts +0 -4
- package/dist/src/structured-data/dto/ReviewRatingDTO.js +0 -1
- package/dist/src/structured-data/dto/index.d.ts +0 -5
- package/dist/src/structured-data/dto/index.js +0 -5
- package/dist/src/structured-data/index.d.ts +0 -2
- package/dist/src/structured-data/index.js +0 -2
- package/dist/src/structured-data/interface/StructuredDataCurrencyConversionService.d.ts +0 -3
- package/dist/src/structured-data/interface/StructuredDataCurrencyConversionService.js +0 -1
- package/dist/structured-data-seo/index.d.ts +0 -1
- package/dist/structured-data-seo/index.js +0 -1
|
@@ -1,189 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
3
|
-
import { DegreeTypeFilterOptionValue } from "../../enums/DegreeTypeFilterOptionValue";
|
|
4
|
-
export class DegreeDisciplineRule extends BaseProgrammeRule {
|
|
5
|
-
degreesAcceptingAllDisciplines = [
|
|
6
|
-
DegreeTypeFilterOptionValue.MA,
|
|
7
|
-
DegreeTypeFilterOptionValue.MSC,
|
|
8
|
-
DegreeTypeFilterOptionValue.MBA
|
|
9
|
-
];
|
|
10
|
-
allIndexableDegrees = [
|
|
11
|
-
DegreeTypeFilterOptionValue.MA,
|
|
12
|
-
DegreeTypeFilterOptionValue.MSC,
|
|
13
|
-
DegreeTypeFilterOptionValue.MBA,
|
|
14
|
-
DegreeTypeFilterOptionValue.LLM,
|
|
15
|
-
DegreeTypeFilterOptionValue.MPHIL,
|
|
16
|
-
DegreeTypeFilterOptionValue.MED,
|
|
17
|
-
DegreeTypeFilterOptionValue.MENG,
|
|
18
|
-
DegreeTypeFilterOptionValue.POSTGRADIP
|
|
19
|
-
];
|
|
20
|
-
lawDisciplineIds = [
|
|
21
|
-
'6', // Law (main discipline)
|
|
22
|
-
'219', // Business Law
|
|
23
|
-
'114', // Civil & Private Law
|
|
24
|
-
'341', // Criminal Justice
|
|
25
|
-
'109', // Criminal Law
|
|
26
|
-
'48', // European Law
|
|
27
|
-
'85', // International Law
|
|
28
|
-
'220', // Legal Studies
|
|
29
|
-
'221', // Master of Laws (LLM)
|
|
30
|
-
'49', // Patent & Intellectual Property Law
|
|
31
|
-
'115', // Public Law
|
|
32
|
-
'247',
|
|
33
|
-
'278',
|
|
34
|
-
'87',
|
|
35
|
-
'323',
|
|
36
|
-
'108',
|
|
37
|
-
'362',
|
|
38
|
-
'241',
|
|
39
|
-
'127'
|
|
40
|
-
];
|
|
41
|
-
masterOfPhilosophyDisciplineIds = [
|
|
42
|
-
'118',
|
|
43
|
-
'23',
|
|
44
|
-
'335',
|
|
45
|
-
'71',
|
|
46
|
-
'281',
|
|
47
|
-
'4',
|
|
48
|
-
'8',
|
|
49
|
-
'293',
|
|
50
|
-
'272',
|
|
51
|
-
'330',
|
|
52
|
-
'87',
|
|
53
|
-
'111',
|
|
54
|
-
'6',
|
|
55
|
-
'332',
|
|
56
|
-
'40',
|
|
57
|
-
'308',
|
|
58
|
-
'224',
|
|
59
|
-
'113',
|
|
60
|
-
'84',
|
|
61
|
-
'38',
|
|
62
|
-
'79',
|
|
63
|
-
'278',
|
|
64
|
-
'80'
|
|
65
|
-
];
|
|
66
|
-
educationDisciplineIds = [
|
|
67
|
-
'289', // Education & Training (main discipline)
|
|
68
|
-
'290', // Adult Education
|
|
69
|
-
'360', // Art Education
|
|
70
|
-
'291', // Coaching
|
|
71
|
-
'292', // School Counselling
|
|
72
|
-
'333', // Early Childhood Education
|
|
73
|
-
'8', // Education
|
|
74
|
-
'349', // Educational Leadership
|
|
75
|
-
'293', // Educational Psychology
|
|
76
|
-
'98', // Educational Research
|
|
77
|
-
'371', // Health Education
|
|
78
|
-
'363', // Higher Education
|
|
79
|
-
'355', // Instructional Design
|
|
80
|
-
'370', // Literacy Education
|
|
81
|
-
'348', // Primary Education
|
|
82
|
-
'97', // Special Education
|
|
83
|
-
'359', // Secondary Education
|
|
84
|
-
'345', // STEM Education
|
|
85
|
-
'295', // Teaching
|
|
86
|
-
'358' // Teaching English as a Foreign Language
|
|
87
|
-
];
|
|
88
|
-
engineeringDisciplineIds = [
|
|
89
|
-
'7', // Engineering & Technology (main discipline)
|
|
90
|
-
'24', // Computer Science & IT
|
|
91
|
-
'37', // Aerospace Engineering
|
|
92
|
-
'250', // Automotive Engineering
|
|
93
|
-
'30', // Bio & Biomedical Engineering
|
|
94
|
-
'32', // Chemical Engineering
|
|
95
|
-
'29', // Civil Engineering & Construction
|
|
96
|
-
'340', // Communications Engineering
|
|
97
|
-
'34', // Electrical Engineering
|
|
98
|
-
'83', // Electronics & Embedded Technology
|
|
99
|
-
'94', // Energy Engineering
|
|
100
|
-
'28', // Environmental Engineering
|
|
101
|
-
'251', // General Engineering & Technology
|
|
102
|
-
'26', // Industrial & Systems Engineering
|
|
103
|
-
'252', // Marine Engineering
|
|
104
|
-
'33', // Materials Science
|
|
105
|
-
'39', // Mechanical Engineering
|
|
106
|
-
'253', // Mechatronics
|
|
107
|
-
'254', // Mining, Oil & Gas
|
|
108
|
-
'367', // Nuclear Engineering
|
|
109
|
-
'255', // Robotics
|
|
110
|
-
'350', // Sound Engineering
|
|
111
|
-
'256', // Sustainable Energy
|
|
112
|
-
'257', // Transportation Engineering
|
|
113
|
-
'397', // Production and Manufacturing Engineering
|
|
114
|
-
'399' // Structural Engineering
|
|
115
|
-
];
|
|
116
|
-
postgraduateDiplomaDisciplineIds = [
|
|
117
|
-
'362', '241', '108', '133', '373', '356', '282', '311', '113', '79'
|
|
118
|
-
];
|
|
119
|
-
getName() {
|
|
120
|
-
return 'DegreeDisciplineRule';
|
|
121
|
-
}
|
|
122
|
-
getDescription() {
|
|
123
|
-
return 'Indexes: master-of-arts, master-of-science, master-of-business-administration + all disciplines; master-of-laws + law disciplines only; master-of-philosophy + specific disciplines only; master-of-education + education & training disciplines only; master-of-engineering + engineering & technology disciplines only; postgraduate-diploma + specific disciplines only';
|
|
124
|
-
}
|
|
125
|
-
forSearch(dependencies) {
|
|
126
|
-
const { seoInfoBase, filterState } = dependencies;
|
|
127
|
-
const degreeTypeValue = seoInfoBase.getFilterOptionValueBy(FilterKey.DEGREE_TYPE, filterState);
|
|
128
|
-
const disciplineValue = seoInfoBase.getFilterOptionValueBy(FilterKey.DISCIPLINES, filterState);
|
|
129
|
-
if (!degreeTypeValue || !disciplineValue) {
|
|
130
|
-
return Promise.resolve(false);
|
|
131
|
-
}
|
|
132
|
-
if (!this.allIndexableDegrees.includes(degreeTypeValue)) {
|
|
133
|
-
return Promise.resolve(false);
|
|
134
|
-
}
|
|
135
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.LLM) {
|
|
136
|
-
return Promise.resolve(this.lawDisciplineIds.includes(disciplineValue));
|
|
137
|
-
}
|
|
138
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.MPHIL) {
|
|
139
|
-
return Promise.resolve(this.masterOfPhilosophyDisciplineIds.includes(disciplineValue));
|
|
140
|
-
}
|
|
141
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.MED) {
|
|
142
|
-
return Promise.resolve(this.educationDisciplineIds.includes(disciplineValue));
|
|
143
|
-
}
|
|
144
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.MENG) {
|
|
145
|
-
return Promise.resolve(this.engineeringDisciplineIds.includes(disciplineValue));
|
|
146
|
-
}
|
|
147
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.POSTGRADIP) {
|
|
148
|
-
return Promise.resolve(this.postgraduateDiplomaDisciplineIds.includes(disciplineValue));
|
|
149
|
-
}
|
|
150
|
-
if (this.degreesAcceptingAllDisciplines.includes(degreeTypeValue)) {
|
|
151
|
-
return Promise.resolve(true);
|
|
152
|
-
}
|
|
153
|
-
return Promise.resolve(true);
|
|
154
|
-
}
|
|
155
|
-
forSitemapGenerator(filterKeyValues) {
|
|
156
|
-
const degreeTypeValues = filterKeyValues.get(FilterKey.DEGREE_TYPE);
|
|
157
|
-
const disciplineValues = filterKeyValues.get(FilterKey.DISCIPLINES);
|
|
158
|
-
if (!degreeTypeValues?.length || !disciplineValues?.length) {
|
|
159
|
-
return Promise.resolve(false);
|
|
160
|
-
}
|
|
161
|
-
const degreeTypeValue = degreeTypeValues[0];
|
|
162
|
-
const disciplineValue = disciplineValues[0];
|
|
163
|
-
if (!degreeTypeValue || !disciplineValue) {
|
|
164
|
-
return Promise.resolve(false);
|
|
165
|
-
}
|
|
166
|
-
if (!this.allIndexableDegrees.includes(degreeTypeValue)) {
|
|
167
|
-
return Promise.resolve(false);
|
|
168
|
-
}
|
|
169
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.LLM) {
|
|
170
|
-
return Promise.resolve(this.lawDisciplineIds.includes(disciplineValue));
|
|
171
|
-
}
|
|
172
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.MPHIL) {
|
|
173
|
-
return Promise.resolve(this.masterOfPhilosophyDisciplineIds.includes(disciplineValue));
|
|
174
|
-
}
|
|
175
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.MED) {
|
|
176
|
-
return Promise.resolve(this.educationDisciplineIds.includes(disciplineValue));
|
|
177
|
-
}
|
|
178
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.MENG) {
|
|
179
|
-
return Promise.resolve(this.engineeringDisciplineIds.includes(disciplineValue));
|
|
180
|
-
}
|
|
181
|
-
if (degreeTypeValue === DegreeTypeFilterOptionValue.POSTGRADIP) {
|
|
182
|
-
return Promise.resolve(this.postgraduateDiplomaDisciplineIds.includes(disciplineValue));
|
|
183
|
-
}
|
|
184
|
-
if (this.degreesAcceptingAllDisciplines.includes(degreeTypeValue)) {
|
|
185
|
-
return Promise.resolve(true);
|
|
186
|
-
}
|
|
187
|
-
return Promise.resolve(true);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ISearchDependencies } from '../../common/ISearchDependencies';
|
|
2
|
-
import { FilterKeyValuesMap } from '../../common/FilterKeyValuesMap';
|
|
3
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
4
|
-
export declare class ErasmusOrJointSpecialProgrammesRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies: ISearchDependencies): Promise<boolean>;
|
|
6
|
-
forSitemapGenerator(filterKeyValues: FilterKeyValuesMap): Promise<boolean>;
|
|
7
|
-
getName(): string;
|
|
8
|
-
getDescription(): string;
|
|
9
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
3
|
-
import { SpecialProgrammesFilterOptionValue } from "../../enums/SpecialProgrammesFilterOptionValue";
|
|
4
|
-
export class ErasmusOrJointSpecialProgrammesRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies) {
|
|
6
|
-
const { seoInfoBase, filterState } = dependencies;
|
|
7
|
-
const selectedSpecialProgramme = seoInfoBase.getFilterOptionValueBy(FilterKey.SPECIAL_PROGRAMMES, filterState);
|
|
8
|
-
if (!selectedSpecialProgramme) {
|
|
9
|
-
return Promise.resolve(false);
|
|
10
|
-
}
|
|
11
|
-
return Promise.resolve(selectedSpecialProgramme === SpecialProgrammesFilterOptionValue.ERASMUS_MUNDUS ||
|
|
12
|
-
selectedSpecialProgramme === SpecialProgrammesFilterOptionValue.JOINT_PROGRAMMES);
|
|
13
|
-
}
|
|
14
|
-
forSitemapGenerator(filterKeyValues) {
|
|
15
|
-
const [selectedSpecialProgramme] = filterKeyValues.get(FilterKey.SPECIAL_PROGRAMMES);
|
|
16
|
-
if (!selectedSpecialProgramme) {
|
|
17
|
-
return Promise.resolve(false);
|
|
18
|
-
}
|
|
19
|
-
return Promise.resolve(selectedSpecialProgramme === SpecialProgrammesFilterOptionValue.ERASMUS_MUNDUS ||
|
|
20
|
-
selectedSpecialProgramme === SpecialProgrammesFilterOptionValue.JOINT_PROGRAMMES);
|
|
21
|
-
}
|
|
22
|
-
getName() {
|
|
23
|
-
return 'ErasmusOrJointSpecialProgrammesRule';
|
|
24
|
-
}
|
|
25
|
-
getDescription() {
|
|
26
|
-
return 'Is indexable if the selected special programme is Erasmus Mundus or Joint Programmes.';
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ISearchDependencies } from '../../common/ISearchDependencies';
|
|
2
|
-
import { FilterKeyValuesMap } from '../../common/FilterKeyValuesMap';
|
|
3
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
4
|
-
export declare class IndexableDegreeRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies: ISearchDependencies): Promise<boolean>;
|
|
6
|
-
forSitemapGenerator(filterKeyValues: FilterKeyValuesMap): Promise<boolean>;
|
|
7
|
-
getName(): string;
|
|
8
|
-
getDescription(): string;
|
|
9
|
-
private get indexableDegreeTypes();
|
|
10
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
3
|
-
import { DegreeTypeFilterOptionValue } from "../../enums/DegreeTypeFilterOptionValue";
|
|
4
|
-
export class IndexableDegreeRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies) {
|
|
6
|
-
const { seoInfoBase, filterState } = dependencies;
|
|
7
|
-
const selectedDegree = seoInfoBase.getFilterOptionValueBy(FilterKey.DEGREE_TYPE, filterState);
|
|
8
|
-
if (!selectedDegree) {
|
|
9
|
-
return Promise.resolve(false);
|
|
10
|
-
}
|
|
11
|
-
const isIndexable = this.indexableDegreeTypes.includes(selectedDegree);
|
|
12
|
-
return Promise.resolve(isIndexable);
|
|
13
|
-
}
|
|
14
|
-
forSitemapGenerator(filterKeyValues) {
|
|
15
|
-
const [selectedDegree] = filterKeyValues.get(FilterKey.DEGREE_TYPE);
|
|
16
|
-
if (!selectedDegree) {
|
|
17
|
-
return Promise.resolve(false);
|
|
18
|
-
}
|
|
19
|
-
const isIndexable = this.indexableDegreeTypes.includes(selectedDegree);
|
|
20
|
-
return Promise.resolve(isIndexable);
|
|
21
|
-
}
|
|
22
|
-
getName() {
|
|
23
|
-
return 'IndexableDegreeRule';
|
|
24
|
-
}
|
|
25
|
-
getDescription() {
|
|
26
|
-
return `Indexable if the selected degree type is one of the following: ${this.indexableDegreeTypes.join(', ')}`;
|
|
27
|
-
}
|
|
28
|
-
get indexableDegreeTypes() {
|
|
29
|
-
return [
|
|
30
|
-
DegreeTypeFilterOptionValue.DOCTORATE,
|
|
31
|
-
DegreeTypeFilterOptionValue.DBA,
|
|
32
|
-
DegreeTypeFilterOptionValue.PHD,
|
|
33
|
-
DegreeTypeFilterOptionValue.MSC,
|
|
34
|
-
DegreeTypeFilterOptionValue.MA,
|
|
35
|
-
DegreeTypeFilterOptionValue.MBA,
|
|
36
|
-
DegreeTypeFilterOptionValue.LLM,
|
|
37
|
-
DegreeTypeFilterOptionValue.MPHIL,
|
|
38
|
-
DegreeTypeFilterOptionValue.MED,
|
|
39
|
-
DegreeTypeFilterOptionValue.MENG,
|
|
40
|
-
DegreeTypeFilterOptionValue.POSTGRADIP,
|
|
41
|
-
DegreeTypeFilterOptionValue.POSTGRADCERT,
|
|
42
|
-
DegreeTypeFilterOptionValue.PREMASTER,
|
|
43
|
-
DegreeTypeFilterOptionValue.BSC,
|
|
44
|
-
DegreeTypeFilterOptionValue.BA,
|
|
45
|
-
DegreeTypeFilterOptionValue.BBA,
|
|
46
|
-
DegreeTypeFilterOptionValue.ASSOCIATE_DEGREE,
|
|
47
|
-
DegreeTypeFilterOptionValue.GRADUATE_CERTTIFICATE,
|
|
48
|
-
DegreeTypeFilterOptionValue.GRADUATE_DIPLOMA,
|
|
49
|
-
DegreeTypeFilterOptionValue.PREBACHELOR,
|
|
50
|
-
DegreeTypeFilterOptionValue.CERTIFICATE
|
|
51
|
-
];
|
|
52
|
-
}
|
|
53
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ISearchDependencies } from '../../common/ISearchDependencies';
|
|
2
|
-
import { FilterKeyValuesMap } from '../../common/FilterKeyValuesMap';
|
|
3
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
4
|
-
export declare class IndexableDurationRule extends BaseProgrammeRule {
|
|
5
|
-
private durationPresenter;
|
|
6
|
-
constructor();
|
|
7
|
-
forSearch(dependencies: ISearchDependencies): Promise<boolean>;
|
|
8
|
-
forSitemapGenerator(filterKeyValues: FilterKeyValuesMap): Promise<boolean>;
|
|
9
|
-
getName(): string;
|
|
10
|
-
getDescription(): string;
|
|
11
|
-
private isIndexable;
|
|
12
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
3
|
-
import { DurationPresenter } from '../../presenters/DurationPresenter';
|
|
4
|
-
export class IndexableDurationRule extends BaseProgrammeRule {
|
|
5
|
-
durationPresenter;
|
|
6
|
-
constructor() {
|
|
7
|
-
super();
|
|
8
|
-
this.durationPresenter = DurationPresenter.getInstance();
|
|
9
|
-
}
|
|
10
|
-
forSearch(dependencies) {
|
|
11
|
-
const { seoInfoBase, filterState } = dependencies;
|
|
12
|
-
const selectedDuration = seoInfoBase.getFilterOptionValueBy(FilterKey.DURATION, filterState);
|
|
13
|
-
if (!selectedDuration) {
|
|
14
|
-
return Promise.resolve(false);
|
|
15
|
-
}
|
|
16
|
-
const isIndexable = this.isIndexable(selectedDuration);
|
|
17
|
-
return Promise.resolve(isIndexable);
|
|
18
|
-
}
|
|
19
|
-
forSitemapGenerator(filterKeyValues) {
|
|
20
|
-
const [selectedDuration] = filterKeyValues.get(FilterKey.DURATION);
|
|
21
|
-
if (!selectedDuration) {
|
|
22
|
-
return Promise.resolve(false);
|
|
23
|
-
}
|
|
24
|
-
const isIndexable = this.isIndexable(selectedDuration);
|
|
25
|
-
return Promise.resolve(isIndexable);
|
|
26
|
-
}
|
|
27
|
-
getName() {
|
|
28
|
-
return 'IndexableDurationRule';
|
|
29
|
-
}
|
|
30
|
-
getDescription() {
|
|
31
|
-
return `Indexable if duration is 1 year, 2 years, 3 years, or 4 years.`;
|
|
32
|
-
}
|
|
33
|
-
isIndexable(value) {
|
|
34
|
-
return this.durationPresenter.getFragments()
|
|
35
|
-
.some(fragment => fragment.id === value);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ISearchDependencies } from '../../common/ISearchDependencies';
|
|
2
|
-
import { FilterKeyValuesMap } from '../../common/FilterKeyValuesMap';
|
|
3
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
4
|
-
export declare class IndexableEducationalFormRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies: ISearchDependencies): Promise<boolean>;
|
|
6
|
-
forSitemapGenerator(filterKeyValues: FilterKeyValuesMap): Promise<boolean>;
|
|
7
|
-
getName(): string;
|
|
8
|
-
getDescription(): string;
|
|
9
|
-
private isIndexable;
|
|
10
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
3
|
-
import { EducationalFormFilterOptionValue } from "../../enums/EducationalFormFilterOptionValue";
|
|
4
|
-
export class IndexableEducationalFormRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies) {
|
|
6
|
-
const { seoInfoBase, filterState } = dependencies;
|
|
7
|
-
const selectedEducationalForm = seoInfoBase.getFilterOptionValueBy(FilterKey.EDUCATIONAL_FORM, filterState);
|
|
8
|
-
if (!selectedEducationalForm) {
|
|
9
|
-
return Promise.resolve(false);
|
|
10
|
-
}
|
|
11
|
-
const isIndexable = this.isIndexable(selectedEducationalForm);
|
|
12
|
-
return Promise.resolve(isIndexable);
|
|
13
|
-
}
|
|
14
|
-
forSitemapGenerator(filterKeyValues) {
|
|
15
|
-
const [selectedEducationalForm] = filterKeyValues.get(FilterKey.EDUCATIONAL_FORM);
|
|
16
|
-
if (!selectedEducationalForm) {
|
|
17
|
-
return Promise.resolve(false);
|
|
18
|
-
}
|
|
19
|
-
const isIndexable = this.isIndexable(selectedEducationalForm);
|
|
20
|
-
return Promise.resolve(isIndexable);
|
|
21
|
-
}
|
|
22
|
-
getName() {
|
|
23
|
-
return 'IndexableEducationalFormRule';
|
|
24
|
-
}
|
|
25
|
-
getDescription() {
|
|
26
|
-
return `Indexable if educational form is Academic Course, Summer School, Semester Study Abroad, or Skill Professional Course.`;
|
|
27
|
-
}
|
|
28
|
-
isIndexable(value) {
|
|
29
|
-
return (value === EducationalFormFilterOptionValue.ACADEMIC_COURSE ||
|
|
30
|
-
value === EducationalFormFilterOptionValue.SUMMER_SCHOOL ||
|
|
31
|
-
value === EducationalFormFilterOptionValue.SEMESTER_STUDY_ABROAD ||
|
|
32
|
-
value === EducationalFormFilterOptionValue.SKILL_PROFESSIONAL_COURSE);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { IProgrammeSearchDependencies } from '../types/IProgrammeSearchDependencies';
|
|
2
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
3
|
-
export declare class IndexablePageNumberRule extends BaseProgrammeRule {
|
|
4
|
-
private commonRule;
|
|
5
|
-
forSearch(dependencies: IProgrammeSearchDependencies): Promise<boolean>;
|
|
6
|
-
forSitemapGenerator(): Promise<boolean>;
|
|
7
|
-
getName(): string;
|
|
8
|
-
getDescription(): string;
|
|
9
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
2
|
-
import { IndexablePageNumberRule as CommonIndexablePageNumberRule } from '../../common/rules/IndexablePageNumberRule';
|
|
3
|
-
export class IndexablePageNumberRule extends BaseProgrammeRule {
|
|
4
|
-
commonRule = new CommonIndexablePageNumberRule();
|
|
5
|
-
forSearch(dependencies) {
|
|
6
|
-
return this.commonRule.forSearch(dependencies);
|
|
7
|
-
}
|
|
8
|
-
forSitemapGenerator() {
|
|
9
|
-
return this.commonRule.forSitemapGenerator();
|
|
10
|
-
}
|
|
11
|
-
getName() {
|
|
12
|
-
return this.commonRule.getName();
|
|
13
|
-
}
|
|
14
|
-
getDescription() {
|
|
15
|
-
return this.commonRule.getDescription();
|
|
16
|
-
}
|
|
17
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeFilterKeyValueRule } from '../BaseProgrammeFilterKeyValueRule';
|
|
3
|
-
import { DegreeTypeFilterOptionValue } from "../../enums/DegreeTypeFilterOptionValue";
|
|
4
|
-
export class MbaDegreeRule extends BaseProgrammeFilterKeyValueRule {
|
|
5
|
-
constructor() {
|
|
6
|
-
const filterKeyValues = new Map([[FilterKey.DEGREE_TYPE, [DegreeTypeFilterOptionValue.MBA]]]);
|
|
7
|
-
super(filterKeyValues);
|
|
8
|
-
}
|
|
9
|
-
getName() {
|
|
10
|
-
return 'MbaDegreeRule';
|
|
11
|
-
}
|
|
12
|
-
getDescription() {
|
|
13
|
-
return 'Is indexable if the selected degree type is MBA.';
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ISearchDependencies } from '../../common/ISearchDependencies';
|
|
2
|
-
import { FilterKeyValuesMap } from '../../common/FilterKeyValuesMap';
|
|
3
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
4
|
-
export declare class MbaOrMscDegreeRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies: ISearchDependencies): Promise<boolean>;
|
|
6
|
-
forSitemapGenerator(filterKeyValues: FilterKeyValuesMap): Promise<boolean>;
|
|
7
|
-
getName(): string;
|
|
8
|
-
getDescription(): string;
|
|
9
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
3
|
-
import { DegreeTypeFilterOptionValue } from "../../enums/DegreeTypeFilterOptionValue";
|
|
4
|
-
export class MbaOrMscDegreeRule extends BaseProgrammeRule {
|
|
5
|
-
forSearch(dependencies) {
|
|
6
|
-
const { seoInfoBase, filterState } = dependencies;
|
|
7
|
-
const selectedDegree = seoInfoBase.getFilterOptionValueBy(FilterKey.DEGREE_TYPE, filterState);
|
|
8
|
-
if (!selectedDegree) {
|
|
9
|
-
return Promise.resolve(false);
|
|
10
|
-
}
|
|
11
|
-
return Promise.resolve(selectedDegree === DegreeTypeFilterOptionValue.MSC || selectedDegree === DegreeTypeFilterOptionValue.MBA);
|
|
12
|
-
}
|
|
13
|
-
forSitemapGenerator(filterKeyValues) {
|
|
14
|
-
const [selectedDegree] = filterKeyValues.get(FilterKey.DEGREE_TYPE);
|
|
15
|
-
if (!selectedDegree) {
|
|
16
|
-
return Promise.resolve(false);
|
|
17
|
-
}
|
|
18
|
-
return Promise.resolve(selectedDegree === DegreeTypeFilterOptionValue.MSC || selectedDegree === DegreeTypeFilterOptionValue.MBA);
|
|
19
|
-
}
|
|
20
|
-
getName() {
|
|
21
|
-
return 'MbaOrMscDegreeRule';
|
|
22
|
-
}
|
|
23
|
-
getDescription() {
|
|
24
|
-
return 'Is indexable if the selected degree type is MBA or MSc.';
|
|
25
|
-
}
|
|
26
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IProgrammeSearchDependencies } from '../types/IProgrammeSearchDependencies';
|
|
2
|
-
import { PortalType } from '@studyportals/domain-client';
|
|
3
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
4
|
-
export declare class NotDistanceLearningPortalRule extends BaseProgrammeRule {
|
|
5
|
-
private readonly portalType;
|
|
6
|
-
constructor(portalType?: PortalType);
|
|
7
|
-
forSearch(dependencies: IProgrammeSearchDependencies): Promise<boolean>;
|
|
8
|
-
forSitemapGenerator(): Promise<boolean>;
|
|
9
|
-
getName(): string;
|
|
10
|
-
getDescription(): string;
|
|
11
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { PortalType } from '@studyportals/domain-client';
|
|
2
|
-
import { DependencyMissingError } from '../../errors/DependencyMissingError';
|
|
3
|
-
import { BaseProgrammeRule } from '../BaseProgrammeRule';
|
|
4
|
-
export class NotDistanceLearningPortalRule extends BaseProgrammeRule {
|
|
5
|
-
portalType;
|
|
6
|
-
constructor(portalType) {
|
|
7
|
-
super();
|
|
8
|
-
this.portalType = portalType;
|
|
9
|
-
}
|
|
10
|
-
forSearch(dependencies) {
|
|
11
|
-
const { portalType } = dependencies;
|
|
12
|
-
const isDistanceLearning = portalType === PortalType.DISTANCE_LEARNING;
|
|
13
|
-
return Promise.resolve(!isDistanceLearning);
|
|
14
|
-
}
|
|
15
|
-
forSitemapGenerator() {
|
|
16
|
-
if (!this.portalType) {
|
|
17
|
-
throw new DependencyMissingError('PortalType');
|
|
18
|
-
}
|
|
19
|
-
const isDistanceLearning = this.portalType === PortalType.DISTANCE_LEARNING;
|
|
20
|
-
return Promise.resolve(!isDistanceLearning);
|
|
21
|
-
}
|
|
22
|
-
getName() {
|
|
23
|
-
return 'NotDistanceLearningPortalRule';
|
|
24
|
-
}
|
|
25
|
-
getDescription() {
|
|
26
|
-
return 'Is indexable if the portal type is not distance learning.';
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeFilterKeyValueRule } from '../BaseProgrammeFilterKeyValueRule';
|
|
3
|
-
import { DurationFilterOptionValue } from "../../enums/DurationFilterOptionValue";
|
|
4
|
-
export class OneYearDurationRule extends BaseProgrammeFilterKeyValueRule {
|
|
5
|
-
constructor() {
|
|
6
|
-
const filterKeyValues = new Map([[FilterKey.DURATION, [DurationFilterOptionValue.ONE_YEAR]]]);
|
|
7
|
-
super(filterKeyValues);
|
|
8
|
-
}
|
|
9
|
-
getName() {
|
|
10
|
-
return 'OneYearDurationRule';
|
|
11
|
-
}
|
|
12
|
-
getDescription() {
|
|
13
|
-
return 'Is indexable if the selected duration is 1 year.';
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { BaseProgrammeFilterKeyValueRule } from '../BaseProgrammeFilterKeyValueRule';
|
|
3
|
-
import { FormatFilterOptionValue } from "../../enums/FormatFilterOptionValue";
|
|
4
|
-
export class PartTimeFormatRule extends BaseProgrammeFilterKeyValueRule {
|
|
5
|
-
constructor() {
|
|
6
|
-
const filterKeyValues = new Map([[FilterKey.ATTENDANCE, [FormatFilterOptionValue.PART_TIME]]]);
|
|
7
|
-
super(filterKeyValues);
|
|
8
|
-
}
|
|
9
|
-
getName() {
|
|
10
|
-
return 'PartTimeFormatRule';
|
|
11
|
-
}
|
|
12
|
-
getDescription() {
|
|
13
|
-
return 'Is indexable if the selected format is part-time.';
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ISearchDependencies } from '../../common/ISearchDependencies';
|
|
2
|
-
import { IProgrammeSearchApplicationState } from './IProgrammeSearchApplicationState';
|
|
3
|
-
import { PortalType } from '@studyportals/domain-client';
|
|
4
|
-
export interface IProgrammeSearchDependencies extends ISearchDependencies {
|
|
5
|
-
portalType: PortalType;
|
|
6
|
-
applicationState: IProgrammeSearchApplicationState;
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ISitemapDependencies } from '../../common/ISitemapDependencies';
|
|
2
|
-
import { PortalType } from '@studyportals/domain-client';
|
|
3
|
-
import { ISearchApiClient } from '../../../sitemap-generator-seo';
|
|
4
|
-
export interface IProgrammeSitemapDependencies extends ISitemapDependencies {
|
|
5
|
-
portalType: PortalType;
|
|
6
|
-
searchApiClient: ISearchApiClient;
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|